Computer Science – CACIC 2022: 28th Argentine Congress, CACIC 2022, La Rioja, Argentina, October 3–6, 2022, Revised Selected Papers 3031341465, 9783031341465

This book constitutes the refereed proceedings of the 28th Argentine Congress on Computer Science, CACIC 2022, held in L

317 13 30MB

English Pages 323 [324] Year 2023

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Computer Science – CACIC 2022: 28th Argentine Congress, CACIC 2022, La Rioja, Argentina, October 3–6, 2022, Revised Selected Papers
 3031341465, 9783031341465

Table of contents :
Preface
Organization
Contents
Agents and Systems
VNS Variant Approach Metaheuristics for Parallel Machines Scheduling Problem
1 Introduction
2 Literature Review
3 The Parallel Machines Scheduling Problem
4 VNS S-metaheuristics and Proposed Variants
4.1 Standard VNS Algorithm
4.2 Variant Algorithm VNS+R
4.3 VNS+LHS Variant
4.4 Variant VNS+E
4.5 Variant VNS+ER
5 Design of Experiments
5.1 Instances of the Problem
5.2 Parameter Settings
5.3 Algorithm Performance Evaluation Metrics
6 Analysis of Results
6.1 Statistical Test
7 Conclusions
References
Technology Applied to Education
Augmented Reality to Reinforce Working Memory in Children with ASD. A Case Studies
1 Introduction
2 Material and Methods
2.1 Work Plan
3 Results
4 Discussion
5 Conclusions
References
A Review of Intelligent Tutoring in Secondary Education
1 Introduction
2 Selection of Intelligent Tutoring Systems
3 Analysis of Intelligent Tutoring Systems
4 Introduction of the Selected Intelligent Tutoring Systems
4.1 AI-Tutor: Generating Tailored Remedial Questions
4.2 Aleks (Assessment and Learning in Knowledge Spaces)
4.3 Auto-tutor
4.4 Skope-It
4.5 Lexue 100
4.6 Design Prototype of an Intelligent Math E-Tutoring System for Students with Specific Learning Disabilities
4.7 Simplify ITS
4.8 MathSpring
4.9 Wayang Outpost
4.10 ASSISTments
5 General Characteristics of the Selected Intelligent Tutoring Systems
6 Conclusions and Future Works
References
Analyzing Attendance Indicators in Digital Technologies-Mediated Courses in Tertiary Technician Education
1 Introduction
2 Theoretical Framework
2.1 The Community of Inquiry Model
2.2 The Community of Inquiry Survey
3 Background Analysis
4 Methodological Aspects for the Case Study about Presence Analysis in the Community of Inquiry Model
5 Results Obtained
5.1 Discussion
6 Conclusions and Future Work
References
Graphic Computation, Images and Visualization
COVID-19 Signs Detection in Chest Radiographs Using Convolutional Neural Networks
1 Introduction
2 Proposal
3 Methodology
3.1 Business and Data Understanding
3.2 Data Preparation
3.3 Modeling
3.4 Network Optimization
3.5 Network Training
4 Evaluation
4.1 Network Validation
5 Conclusions
References
A Digital Zen Garden for Mental Health Conditions Treatment
1 Introduction
2 Japanese Zen Garden
3 Augmented Reality Sandbox
3.1 System Description
3.2 Architecture System
4 Experiences and Results
4.1 Physiological Evaluation
4.2 Emotional Evaluation
4.3 Interface Evaluation
5 Discussion and Conclusions
References
Software Engineering
Toward an Execution Trace Standard: An MDE Approach
1 Introduction
2 Background
2.1 Standards for Modernization
2.2 Static and Dynamic Analysis
3 Reverse Engineering into the MDE Framework
4 TRACEM Metamodel
5 Recovering Execution Traces from Code: An Example
5.1 Dynamic Information Impact
5.2 Enhancing Diagrams
6 Related Work
7 Conclusions
References
New Horizons for Metamorphic Relationships in Formal Verification
1 Introduction
1.1 Summary
2 Background
2.1 FVS
2.2 Adaptive Systems
2.3 Temporal Planning
2.4 OBC and Nano Satellites
3 FVS and Metamorphic Relationships(MRs) for UAV's Missions Adaptation
3.1 MRs for UAV's Adaptation to New Plans
4 FVS and Metamorphic Relationships(MRs) for UAV's Temporal Planning
5 FVS and Metamorphic Relationships(MRs) for OBC Operating Systems
6 Discussion
7 Related and Future Work
8 Conclusions
References
Approach to Improving Java Source Code Considering Non-compliance with a Java Style Guide
1 Introduction
2 Non-functional Requirements and Improving Strategy: An Overview
2.1 Summary of Google’s Java Style Guide
2.2 Some Concepts and Relationships for Non-Functional Requirements
2.3 Activities of the Improving Strategy
3 Motivation and Context
4 Application of the Improving Strategy to the Practical Case
5 Related Work
6 Conclusions
References
Quality Management Systems and Blockchain in the 4.0 Era: A Literature Review
1 Introduction
2 Context
2.1 Industry 4.0
2.2 Quality 4.0
2.3 Blockchain
3 Literature Review
3.1 Goals
3.2 Search Criteria
3.3 Scope
3.4 Identified Publications
4 Analysis
4.1 First Search
4.2 Quality Management in Quality 4.0 Context
5 Conclusions
References
Databases and Data Mining
Boosting the Permutation Index for Similarity Searching Using an Eclectic Approach
1 Introduction
2 Related Work
2.1 Pivot-Based Algorithm
2.2 Permutation-Based Algorithm
2.3 Metric Inverted File (MI-File)
3 Our Proposal
3.1 Clipped Permutations
3.2 Including a Single Pivot
3.3 Permutation Similarity Measure
3.4 Solving Similarity Range Queries
4 Experimental Results
4.1 NASA
4.2 Colors
4.3 SIFT
5 Conclusions and Future Work
References
Dynamic Distal Spatial Approximation Trees
1 Introduction
2 Some Notation
3 Distal Spatial Approximation Trees
3.1 Dynamic Distal Spatial Approximation Forest
4 Dynamic Distal Spatial Approximation Tree
5 Experimental Results
5.1 Comparison with Other Representative Indexes
6 Analysis of Tree Partition Density
7 Conclusions
References
Hardware Architectures, Networks, and Operating Systems
Analysis of QoS and QoE Metrics of IPTV Multicast Video Traffic on a LAN TestBed
1 Introduction
2 Protocols and Codecs
2.1 Video Streaming
2.2 IP Multicast
2.3 Video Codec
3 Scenarios and Experimental Resources
3.1 Network Topology
3.2 Video and Video Sniffer
4 Test Results
4.1 QoS Analysis
4.2 QoE Analysis
5 Conclusions
References
Innovation in Software Systems
A Query-By-Example Approach to Compose SPARQL Queries in the GF Framework for Ontology-Based Data Access
1 Introduction
2 Selection Queries in SPARQL
3 A Wizard for Composing SPARQL Selection Queries
4 Extending the Wizard for Building SPARQL Construct Queries
5 Related Work
6 Conclusions and Future Work
References
Systematic Mapping of the Literature on the Conceptual Modeling of Industry 4.0
1 Introduction
2 Planning of the SMS
3 SMS Execution
4 SMS Results
5 Threats to Validity
6 Conclusions
References
SIBDaCAr: A Chronotanatodiagnostic System Prototype for the Republic of Argentina
1 Introduction
2 Chronotanatodiagnosis: An Open Problem
3 Chronotanatodiagnosis: Software and Argentine Reality
4 A Prototype for a Dating System
4.1 Requirements Analysis
4.2 Results Obtained
4.3 Elaboration of Models
4.4 Prototype Implementation
5 Clustering Analysis
6 Conclusions and Future Work
References
Signal Processing and Real-Time Systems
A New Academic RTOS: Xinu Port to the AVR Architecture
1 Introduction
2 Background and Related Work
2.1 Real-Time Embedded Systems and RTOS
2.2 Xinu
2.3 Previous Work
3 Porting Xinu to the AVR Architecture
4 Results
4.1 Black-Box Testing
4.2 Qualitative Evaluation
4.3 Quantitative Evaluation
5 Conclusions and Future Work
References
Innovation in Computer Science Education
SETIC: An Educational Software About the Functioning of Computer Parts
1 Introduction
2 SETIC and Its Application Context
3 MeiSE: Methodology for the Development of Educational Software
4 SETIC Development
4.1 Conceptual Phase
4.2 Analysis and Conceptual Design
4.3 Iteration Plan
4.4 Products Obtained from the First Iterations
4.5 Development Stage
4.6 Deployment Stage
5 Conclusions and Plans for the Future
References
A Turing Machine at Secondary School
1 Introduction
2 Proposed Model
2.1 A Turing Machine at Secondary School
2.2 Mediated Practice: Fieldwork with Secondary School Students
3 Results
4 Conclusions and Future Work
References
Digital Governance and Smart Cities
Application Programming Interface Technology to Optimize the Exchange of Information Between Legal Systems
1 Introduction
2 Research Background
3 About Expert Systems
4 Application Programming Interfaces Considerations
4.1 Why use the REST API?
4.2 About JSON Data Modeling
4.3 Design Pattern REACT
5 Experimental Evaluation
6 Results Obtained
7 Conclusions and Future Work
References
Author Index

Citation preview

Patricia Pesado (Ed.)

Communications in Computer and Information Science

Computer Science – CACIC 2022 28th Argentine Congress, CACIC 2022 La Rioja, Argentina, October 3–6, 2022 Revised Selected Papers

1778

Communications in Computer and Information Science Editorial Board Members Joaquim Filipe , Polytechnic Institute of Setúbal, Setúbal, Portugal Ashish Ghosh , Indian Statistical Institute, Kolkata, India Raquel Oliveira Prates , Federal University of Minas Gerais (UFMG), Belo Horizonte, Brazil Lizhu Zhou, Tsinghua University, Beijing, China

1778

Rationale The CCIS series is devoted to the publication of proceedings of computer science conferences. Its aim is to efficiently disseminate original research results in informatics in printed and electronic form. While the focus is on publication of peer-reviewed full papers presenting mature work, inclusion of reviewed short papers reporting on work in progress is welcome, too. Besides globally relevant meetings with internationally representative program committees guaranteeing a strict peer-reviewing and paper selection process, conferences run by societies or of high regional or national relevance are also considered for publication. Topics The topical scope of CCIS spans the entire spectrum of informatics ranging from foundational topics in the theory of computing to information and communications science and technology and a broad variety of interdisciplinary application fields. Information for Volume Editors and Authors Publication in CCIS is free of charge. No royalties are paid, however, we offer registered conference participants temporary free access to the online version of the conference proceedings on SpringerLink (http://link.springer.com) by means of an http referrer from the conference website and/or a number of complimentary printed copies, as specified in the official acceptance email of the event. CCIS proceedings can be published in time for distribution at conferences or as postproceedings, and delivered in the form of printed books and/or electronically as USBs and/or e-content licenses for accessing proceedings at SpringerLink. Furthermore, CCIS proceedings are included in the CCIS electronic book series hosted in the SpringerLink digital library at http://link.springer.com/bookseries/7899. Conferences publishing in CCIS are allowed to use Online Conference Service (OCS) for managing the whole proceedings lifecycle (from submission and reviewing to preparing for publication) free of charge. Publication process The language of publication is exclusively English. Authors publishing in CCIS have to sign the Springer CCIS copyright transfer form, however, they are free to use their material published in CCIS for substantially changed, more elaborate subsequent publications elsewhere. For the preparation of the camera-ready papers/files, authors have to strictly adhere to the Springer CCIS Authors’ Instructions and are strongly encouraged to use the CCIS LaTeX style files or templates. Abstracting/Indexing CCIS is abstracted/indexed in DBLP, Google Scholar, EI-Compendex, Mathematical Reviews, SCImago, Scopus. CCIS volumes are also submitted for the inclusion in ISI Proceedings. How to start To start the evaluation of your proposal for inclusion in the CCIS series, please send an e-mail to [email protected].

Patricia Pesado Editor

Computer Science – CACIC 2022 28th Argentine Congress, CACIC 2022 La Rioja, Argentina, October 3–6, 2022 Revised Selected Papers

Editor Patricia Pesado Universidad Nacional de La Plata La Plata, Argentina

ISSN 1865-0929 ISSN 1865-0937 (electronic) Communications in Computer and Information Science ISBN 978-3-031-34146-5 ISBN 978-3-031-34147-2 (eBook) https://doi.org/10.1007/978-3-031-34147-2 © The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 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 Switzerland AG The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland

Preface

Welcome to the selected papers of the XXVIII Argentine Congress of Computer Science (CACIC 2022), held in La Rioja, La Rioja, Argentina, during October 3–6, 2022. CACIC 2022 was organized by the National University of La Rioja (La Rioja) on behalf of the Network of National Universities with Computer Science Degrees (RedUNCI). CACIC is an annual congress dedicated to the promotion and advancement of all aspects of computer science. Its aim is to provide a forum within which the development of computer science as an academic discipline with industrial applications is promoted, trying to extend the frontier of both the state of the art and the state of the practice. The main audience for and participants of CACIC are seen as researchers in academic departments, laboratories, and industrial software organizations. CACIC 2022 covered the following topics: intelligent agents and systems; software engineering; hardware architecture; networks and operating systems; graphic computation, visualization, and image processing; computer technology applied to education; databases and data mining; innovation in software systems; innovation in computer science education; signal processing and real-time systems; digital governance and smart cities. This year, the congress received 184 submissions. Each submission was reviewed by at least 3, and on average 3.2 Program Committee members and/or external reviewers, following a single-blind peer-review scheme. A total of 69 full papers, involving 236 different authors from 43 universities, were accepted. According to the recommendations of the reviewers, 20 of them were selected for this book. During CACIC 2022, special activities were also carried out, including one plenary lecture, one discussion panel, a special track on Digital Governance and Smart Cities, and an International School with four courses. Special thanks to the members of the different committees for their support and collaboration. Also, we would like to thank the local Organizing Committee, reviewers, lecturers, speakers, authors, and all conference attendees. Finally, we want to thank Springer for their support of this publication. April 2023

Patricia Pesado

Organization

Editor Patricia Pesado1

National University of La Plata, Argentina

Editorial Assistant Pablo Thomas

National University of La Plata, Argentina

Program Committee Maria Jose Abásolo Claudio Aciti Hugo Alfonso Jorge Ardenghi Marcelo Arroyo Hernan Astudillo Sandra Baldasarri Javier Balladini Luis Soares Barbosa Rodolfo Bertone Oscar Bria Nieves R. Brisaboa Carlos Buckle Alberto Cañas Ana Casali Silvia Castro Alejandra Cechich Edgar Chávez Carlos Coello Coello Uriel Cuckierman Armando E. De Giusti 1 RedUNCI Chair

National University of La Plata, Argentina National University of Central Buenos Aires, Argentina National University of La Pampa, Argentina National University of the South, Argentina National University of Río Cuarto, Argentina Technical University Federico Santa María, Chile University of Zaragoza, Spain National University of Comahue, Argentina University of Minho, Portugal National University of La Plata, Argentina National University of La Plata, Argentina University of La Coruña, Spain National University of Patagonia San Juan Bosco, Argentina University of West Florida, USA National University of Rosario, Argentina National University of the South, Argentina National University of Comahue, Argentina Michoacan University of San Nicolás de Hidalgo, Mexico CINVESTAV, Mexico National Technological University, Argentina National University of La Plata, Argentina

viii

Organization

Laura De Giusti Marcelo De Vincenzi Claudia Deco Beatriz Depetris Javier Díaz Juergen Dix Ramón Doallo Domingo Docampo Jozo Dujmovic Marcelo Estayno Elsa Estevez Jorge Eterovic Marcelo A. Falappa Pablo Rubén Fillotrani Jorge Finocchieto Daniel Fridlender Fernando Emmanuel Frati Carlos Garcia Garino Luis Javier García Villalba Marcela Genero Sergio Alejandro Gómez Eduard Groller Roberto Guerrero Jorge Ierache Tomasz Janowski Horacio Kuna Laura Lanzarini Guillermo Leguizamón Fernando Lopez Gil Ronald Prescott Loui Emilio Luque Fadón Maria Cristina Madoz Maria Alejandra Malberti Cristina Manresa Yee Javier Marco Mauricio Marin Ramon Mas Sanso Orlando Micolini Alicia Mon Regina Motz

National University of La Plata, Argentina Interamerican Open University, Argentina National University of Rosario, Argentina National University of Tierra del Fuego, Argentina National University of La Plata, Argentina TU Clausthal, Germany University of La Coruña, Spain University of Vigo, Spain San Francisco State University, USA National University of Lomas de Zamora, Argentina National University of the South, Argentina National University of La Matanza, Argentina National University of the South, Argentina National University of the South, Argentina CAECE University, Argentina National University of Cordoba, Argentina National University of Chilecito, Argentina National University of Cuyo, Argentina Complutense University of Madrid, Spain University of Castilla-La Mancha, Spain National University of the South, Argentina Vienna University of Technology, Austria National University of San Luis, Argentina National University of Buenos Aires, Argentina Danube University Krems, Austria National University of Misiones, Argentina National University of La Plata, Argentina National University of San Luis, Argentina University of Zaragoza, Spain Washington University, USA Autonomous University of Barcelona, Spain National University of La Plata, Argentina National University of San Juan, Argentina University of the Balearic Islands, Spain University of Zaragoza, Spain National University of Santiago de Chile, Chile University of the Balearic Islands, Spain National University of Cordoba, Argentina ITBA, Argentina University of the Republic, Uruguay

Organization

Marcelo Naiouf Antonio Navarro Martin Jose Angel Olivas Varela Ariel Pasini Alvaro Pardo Patricia Pesado Mario Piattini Velthuis María Fabiana Piccoli Marcela Printista Enrico Puppo Hugo Ramón Dolores Isabel Rexachs del Rosario Nora Reyes Rosabel Roig Vila Gustavo Rossi Paolo Rosso Sonia V. Rueda Claudia Russo Carolina Salto Cecilia Sanz Guillermo Ricardo Simari Osvaldo Spositto Ralf Steinmetz Remo Suppi Liane Tarouco Francisco Tirado Pablo Thomas Luis Velho Eduardo Vendrell Marcelo Vénere Horacio Villagarcía Wanza Dante Zanarini

National University of La Plata, Argentina Complutense University of Madrid, Spain University of Castilla-La Mancha, Spain National University of La Plata, Argentina University of the Republic, Uruguay National University of La Plata, Argentina University of Castilla-La Mancha, Spain National University of San Luis, Argentina National University of San Luis, Argentina University of Genoa, Italy National University of Northwestern Buenos Aires, Argentina Autonomous University of Barcelona, Spain National University of San Luis, Argentina University of Alicante, Spain National University of La Plata, Argentina Technical University of Valencia, Spain National University of the South, Argentina National University of Northwestern Buenos Aires, Argentina National University of La Pampa, Argentina National University of La Plata, Argentina National University of the South, Argentina National University of La Matanza, Argentina TU Darmstadt, Germany Autonomous University of Barcelona, Spain Federal University of Rio Grande do Sul, Brazil Complutense University of Madrid, Spain National University of La Plata, Argentina Federal University of Rio Grande do Sul, Brazil Technical University of Valencia, Spain National University of Central Buenos Aires, Argentina National University of La Plata, Argentina National University of Rosario, Argentina

ix

x

Organization

Sponsors

Network of Universities with Careers in Computer Science (RedUNCI)

National University of Salta

Invap

Sadosky Foundation

Federal Investment Council

Contents

Agents and Systems VNS Variant Approach Metaheuristics for Parallel Machines Scheduling Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Claudia R. Gatica, Silvia M. Molina, and Guillermo Leguizamón

3

Technology Applied to Education Augmented Reality to Reinforce Working Memory in Children with ASD. A Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mónica R. Romero, Ivana Harari, Javier Diaz, Estela M. Macas, and Nancy Armijos A Review of Intelligent Tutoring in Secondary Education . . . . . . . . . . . . . . . . . . . María Cecilia Pezzini and Pablo Thomas Analyzing Attendance Indicators in Digital Technologies-Mediated Courses in Tertiary Technician Education . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Omar Spandre, Paula Dieser, and Cecilia Sanz

21

33

47

Graphic Computation, Images and Visualization COVID-19 Signs Detection in Chest Radiographs Using Convolutional Neural Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Guido Sebastián Armoa, Nuria Isabel Vega Lencina, and Karina Beatriz Eckert A Digital Zen Garden for Mental Health Conditions Treatment . . . . . . . . . . . . . . . Nicolás Jofré, Graciela Rodríguez, Yoselie Alvarado, Jacqueline Fernandez, and Roberto Guerrero

61

76

Software Engineering Toward an Execution Trace Standard: An MDE Approach . . . . . . . . . . . . . . . . . . . Claudia Pereira, Liliana Martinez, and Liliana Favre

91

New Horizons for Metamorphic Relationships in Formal Verification . . . . . . . . . 107 Fernando Asteasuain

xii

Contents

Approach to Improving Java Source Code Considering Non-compliance with a Java Style Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Pablo Becker, Luis Olsina, and María Fernanda Papa Quality Management Systems and Blockchain in the 4.0 Era: A Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Kristian Petkoff Bankoff, Rocío Muñoz, Ariel Pasini, and Patricia Pesado Databases and Data Mining Boosting the Permutation Index for Similarity Searching Using an Eclectic Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Karina Figueroa, Antonio Camarena-Ibarrola, Rodrigo Paredes, Nora Reyes, and Braulio Ramses Hernández Martínez Dynamic Distal Spatial Approximation Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Edgar Chávez, María E. Di Genaro, and Nora Reyes Hardware Architectures, Networks, and Operating Systems Analysis of QoS and QoE Metrics of IPTV Multicast Video Traffic on a LAN TestBed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Santiago Pérez, Higinio Facchini, Alejandro Dantiacq, Pablo Varela, Fabián Hidalgo, Bruno Roberti, María Stefanoni, and Matilde Césari Innovation in Software Systems A Query-By-Example Approach to Compose SPARQL Queries in the GF Framework for Ontology-Based Data Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Sergio Alejandro Gómez and Pablo Rubén Fillottrani Systematic Mapping of the Literature on the Conceptual Modeling of Industry 4.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Ayelén Zapata, Marcelo Fransoy, Salvador Soto, Martín Di Felice, and Marisa Panizzi SIBDaCAr: A Chronotanatodiagnostic System Prototype for the Republic of Argentina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Paola Azar, Darío Ruano, Andrea Maldonado, Norma Herrera, Daniel A. Jaume, and Marcelo Martínez

Contents

xiii

Signal Processing and Real-Time Systems A New Academic RTOS: Xinu Port to the AVR Architecture . . . . . . . . . . . . . . . . 259 Rafael Ignacio Zurita, Candelaria Alvarez, Miriam Lechner, Alejandro Mora, and Mariana Zárate Innovation in Computer Science Education SETIC: An Educational Software About the Functioning of Computer Parts . . . 275 Maximiliano Gauthier and Paola D. Budán A Turing Machine at Secondary School . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 Jorge Rodríguez, Gerardo Parra, Gabriela Gili, Susana Parra, Daniel Dolz, and Hernán Roumec Digital Governance and Smart Cities Application Programming Interface Technology to Optimize the Exchange of Information Between Legal Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Osvaldo Mario Spositto, Julio César Bossero, Viviana Alejandra Ledesma, Lorena Romina Matteo, and Sebastian Quevedo Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

Agents and Systems

VNS Variant Approach Metaheuristics for Parallel Machines Scheduling Problem Claudia R. Gatica(B) , Silvia M. Molina , and Guillermo Leguizam´ on Lab. de Investigaci´ on y Desarrollo en Inteligencia Computacional (LIDIC), University National of San Luis (UNSL), Argentine, Ej´ercito de los Andes 950, (5700) San Luis, Argentina {crgatica,smolina,legui}@unsl.edu.ar

Abstract. VNS (Variable Neighborhood Search) is a trajectory metaheuristic that uses different neighborhood structures following some preestablished criteria to perform the search. In this work, variants of the standard VNS (or simply VNS) are proposed to improve its performance by introducing changes in the order of their application, neighborhood sequences used, and/or exploration mechanisms considering the Parallel Machines Scheduling Problem to minimize the Maximum Tardiness. The proposed variants are VNS+R (VNS Random) with random neighborhood selection; VNS+LHS (VNS Latin Hypercube Sample) with pre-selection of neighborhoods through Latin Squares; VNS+E (VNS Exploratory) which intensifies the exploration of the search space and finally, VNS+ER (VNS Exploratory&Random) which combines functional aspects of both VNS+R and VNS+E. The results show that the variants that intensify the exploration in the search space, and the variant with the scheme of Latin squares, improve the performance of VNS. Keywords: Parallel Machine Scheduling · Maximum Tardiness Metaheuristics · Variable Neighborhood Search

1

·

Introduction

Trajectory metaheuristics (S-metaheuristics, hereafter) are search algorithms used to solve NP-hard problems such are scheduling problems. In particular, VNS (Mladenovi´c and Hansen [9]) perform a systematic search through neighborhood structures, where the exploration sequence and size of each neighborhood are crucial in the design of the algorithm [20]. Activity scheduling is a decision-making process that plays an important role in production and multiprocessor systems, in manufacturing and information distribution, and transportation environments. The parallel machine environment has been studied for several years due to its importance both academically and industrially. This article considers the identical parallel machines scheduling problem without restrictions in order to minimize the maximum tardiness, and besides it c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 3–18, 2023. https://doi.org/10.1007/978-3-031-34147-2_1

4

C. R. Gatica et al.

is an extension of the work presented in CACIC [8] regarding the bibliographical review in Sect. 2, and the experiments in Sect. 5. As regards the bibliographical review, we search the recently published articles emphasizing the observation of characteristics such as schemes or strategies in the search of the VNS algorithms applied to scheduling problems, neighborhood structures, and instance size problems. Regarding the extended experiments, three aspects are taken into account based on the latest obtained results, and the revised publications: a) the size of the instances; b) the number of neighbors in the local search; and c) the number of neighborhood structures. The organization of this work is as follows. Section 2 details a review of the recent literature related to our topic of study. Section 3 presents and formulates the parallel machine scheduling problem. Section 4 describes the proposed variants of VNS. Section 5 details the design of the experiments. Section 6 shows and analyzes the results obtained. Finally, in Sect. 7 the conclusions are given.

2

Literature Review

The bibliographical review presents in this article takes into account publications already included in CACIC [8] between 2012-2019, adding the ones between 2021-2023. Table 1 shows a brief of the found characteristics according to the year published. The presented review is mainly based on three aspects: neighborhood search scheme [20], characteristics of the neighborhood structures, and the size of the instances of the problem. We observe that the VNS metaheuristic has been applied to various academic and real-world problems, applied alone or in a hybrid way in combination with other metaheuristics. Regarding the characteristics of the neighborhood search scheme, we quote two recent examples: collaborative, presented in [2], in which the neighborhood search is made through a combined process between two VNS, and global VNS. Another example is found in [14] where the authors compare two variants V N S 0 and V N S N L ; in each variant, it is used the same neighborhood structures and, in their experiments, they compare two structural properties for the local search that lead to the two proposed variants. Regarding the characteristics of the operators of the neighborhood structures and of the local search, we see in various works such as [2,12,18], and [22] that are implemented on a specific representation of the solution of scheduling problem. Besides we have seen that they are implemented from 1, 2, 3, 4, 5, 6, 7, 8, and 9 as numbers of VNS neighborhood structures, and the involved local search operators can be the same or different, in which case such could be 1 or 2 different ones. As regards the size of the instances, different complexity instances are taken into account, thus differentiating them into three categories which can be classified in the following manner: Small to the ones that use between 2 and 5 machines, and from 2-100 jobs, Medium; the ones that work with 5-10 machines and more than 100 jobs, and lastly the Large that use 10, 20, or more machines,

VNS Variant Approach Metaheuristics

5

and a number higher or equal to 500 jobs. The classification is based on the number of jobs. Table 1. Recent research in the relevant field. Publication

Neighborhood search Structure features scheme

Problem instance sizes

Maecker et al. (2023) [14]

VNS algorithm where two scheme variants are compared

small: 20,40,80 jobs and medium: 160,320 jobs

Six neighborhood structures and two structural properties

Shaojun Lu et al. (2022) A variable neighborhood Three structures for the [13] search (VNS) algorithm investigated problem

small: 30,40,100 jobs and medium: 200 jobs

Deming Lei et al. (2022) Reduced variable [12] neighborhood search (RVNS)

Five neighborhood structures specific operators

small: 20,25,50 jobs and medium: 150, 250 jobs

Cai et al. (2022) [2]

A collaborative variable neighborhood search (CVNS)

Eight neighborhood structures and two global search operators

small: 30,40,50,60,70,80, 90,100 jobs and medium: 120,150

Zhang et al. (2022) [22]

A general variable neighborhood search (GVNS)

Two intra-machine and inter-machine moves by four neighborhoods

small: 40,50,70,80, 100 jobs and medium: 120 jobs

Rudek et al. (2021) [18]

Fast search scheme in a neighborhood

Only structure used as an operator

small: 100 jobs and medium: 200, 400 and large: 800

Garc´ıa-Guar´ın et al. (2019) [7]

VNS that allow a continuous representation

Implement algebraic equations and differential equations

competition instance problems

Erden et al. (2019) [4]

VNS is used for initial solution construction

The neighborhood structures are based in dispatching rules

small: 25, 50, 75, 100 medium: 125, 150, 175, and 200 jobs

Jun Pei et al. (2019) [16]

Hybrid VNS-GSA VNS Use GSA as local search small: 60,70,80,90, 100, and Gravitational search operator and n-swap as medium: 200,300, 400, algorithm (GSA) neighborhood structure large: 500,600 jobs

Vargas Fortes et al. (2018) [21]

The VNS algorithm where the neighborhoods are defined on continuous space as a distance function

The local search step of the VNS apply the cyclic coordinate method

Senne et al. (2013) [19]

VNS heuristic with representation based on solution

Considers three machine small: 5 to 100 jobs and movements and nine medium: 120, 150,170 neighborhoods and 200 jobs

Cheng et al. (2012) [3]

VNS algorithm use representation based on solution

Use five search structures based on insertion, swap, and inversion

tested on three simulation systems of the real world

small: 20, 40, 60, 80, 100 jobs

In other research studies, we found that in [4] a VNS is presented to provide initial solutions to other metaheuristics implemented to solve the dynamic process scheduling and due date assignment (DIPPSDDA) problem, where the objective function was to minimize punctuality and tardiness (E/T). In [19] it is applied to the problem of scheduling a set of independent jobs, with

6

C. R. Gatica et al.

sequence-dependent setup times and task compatibility constraints, on a set of parallel machines, with the aim of minimizing the maximum completion time (makespan). In [16] a hybrid VNS-GSA algorithm (VNS and the Gravity Search Algorithm) is applied for a single machine and parallel machine scheduling, the objectives of minimizing maximum earliness and the number of late jobs with effect position-based learning (where the actual processing time of the job is a function of its position) and configuration-dependent processing times. In [3] a VNS is presented for the scheduling problem of identical parallel machines, with the objective of minimizing the total completion time. For the configuration of parameters, in [21] a VNS is presented for the design of the parameters of the damping controllers in multi-machine power systems: such as power system stabilizers (PSS) and the power flux controller. interline-power swing damping (IPFC-POD). For the real-world problem called energy dispatch in smart distributed grids, the hybrid algorithm VNS-DEEPSO (Differential Evolutionary Particle Swarm) is proposed in [7], to obtain solutions to minimize operational costs and maximize smart grid revenues. This algorithm was designed with some improvements that allow the evaluation of equations formed from nonlinear algebraic equations and differential equations in which it is impossible to obtain their derivative with an exact mathematical model [21]. In the present work, different variants of the VNS algorithm are presented and analyzed. These variants (VNS+R, VNS+LHS, VNS+E, and VNS+ER) arise from changes in the basic neighborhood search and selection scheme, in order to improve their performance on the minimization problem of the maximum tardiness.

3

The Parallel Machines Scheduling Problem

The unrestricted parallel machine scheduling problem is a common problem in real manufacturing and production systems, and it is also a problem of interest from theoretical and practical points of view. In the literature, the problem studied is denoted as Pm ||Tmax . The first field describes the environment of the Pm machines, and the second contains the constraints, here it can be noted that the problem has no constraints, therefore the field is empty, and the third provides the objective function to be minimized Tmax [15,17]. This scheduling problem can be expressed as follows: there are n tasks to be processed without interruption on some of the m identical machines belonging to the system Pm ; each machine cannot process more than one task at a time. The task tj , (j = 1, 2, 3, ..., n) is available at time zero. It requires a positive and uninterrupted processing time pj on a machine and also has a due date dj by which its processing should be finished. For a given task processing order (schedule), the earliest completion time Cj and the maximum tardiness time Tj = {Cj − dj , 0}, are easily calculated. The problem is to find an optimal order (schedule) that minimizes the value of the objective function: MaximumTardiness : Tmax = max(Tj )

(1)

VNS Variant Approach Metaheuristics

7

This problem is considered NP-hard when 2 ≤ m ≤ n [15,17]. An instance of the problem with n = 5 tasks and m = 2 machines is shown in Example 1.

Fig. 1. Instance with n = 5 tasks tj , m = 2, with processing times pj and due dates dj ; for j = 1, ..., 5.

Example 1: Instance with n = 5 tasks tj , m = 2, with processing times pj and due dates dj ; for j = 1, ..., 5 (see Fig. 1).

Fig. 2. Gantt chart of a possible solution for Example 1.

The Gantt chart in Fig. 2 describes a possible solution or schedule S (by schedule) of tasks on two machines m1 and m2 , where S = [{m1 , (t1 , p1 , d1 ), (t3 , p3 , d3 )}, {m2 , (t2 , p2 , d2 ), (t4 , p4 , d4 ), (t5 , p5 , d5 )}] and the distribution of tasks = t1 , t2 , t3 , t4 , t5 is: t1 and t3 runs on m1 and t2 , t4 and t5 run on m2 . Therefore, the respective completion times are Cj = ((t1 , 4), (t2 , 7), (t3 , 12), (t4 , 9), (t5 , 12)) and the tardiness times computed in each task Tj = (0, 0, 0, 3, 4), where the maximum tardiness is Tmax = 4.

4

VNS S-metaheuristics and Proposed Variants

The S-metaheuristics have shown their effectiveness in addressing several problems of optimization in different domains [4,7,16,19], among others. They make an exploration through neighborhood structures [20] using a procedure iterative starting from an initial solution, generally random, and applying operators that define the search trajectory. VNS sequentially considers a set of different neighborhood structures Ni where i = 1, 2, 3, ..., kmax , are defined in the solution space of the issue. The previous sequence is carried out systematically or randomly in order to obtain

8

C. R. Gatica et al.

high-quality solutions for the purpose of escaping from local optima. A neighborhood structure N in the space of solutions X of a given solution x is denoted as N (x) ⊂ X, where N : X → P (X), being P (X) is the power set x [10]. In our work, the sequence of neighborhood structures is understood as the inspection order of each of the Ni neighborhood structures defined as the input of the VNS algorithm. An interesting aspect of VNS is that it presents a basic scheme that serves as a flexible framework for implementing heuristic variants [10] and they also demonstrate good performance in solving complex problems. 4.1

Standard VNS Algorithm

VNS (Algorithm 1) receives as input a set of neighborhood structures defined in advance Ni , i = 1, ..., kmax . Each iteration of the algorithm is composed of three steps: (1) shaking, (2) local search, and (3) move. The initial solution S0 is shaken in the current neighborhood Nk , a local search (Algorithm 2) is applied to the solution S1 (S1 is obtained by means of the operator of disturbance Nk ) to obtain a candidate solution S2 . Algorithm 1 VNS 1: Input: a set of neighborhood structures Ni for i=1,...,kmax 2: S=S0 {Generate the initial solution} 3: repeat 4: k=1 5: while k ≤ kmax do 6: S1 =Nk (S) {Shaking: take a random solution S1 from 7: S2 =LS(S1 ) {LS: Local Search on Nk } 8: if f (S2 ) ≤ f (S) then 9: S = S2 10: k =1 11: else 12: k = k + 1 {Move to next neighborhood} 13: end if 14: end while 15: until Stopping criteria 16: Output: Best solution S

kth neighborhood Nk }

The current solution S is replaced by the new local optimum S2 , if and only if S2 is better than S and the same procedure is restarted in N1 , if S2 is not better, the search is moved to the next neighborhood Nk+1 , and a new solution is generated in Nk+1 and that VNS tries to improve until exhausting the available neighborhood structures. The study of the variants of the VNS algorithm was based on the hypothesis that a change in the choice of the sequence of neighborhoods could help escape efficiently from local minima and thus improve its performance. In the following subsections describe the variants implemented and studied in the present work.

VNS Variant Approach Metaheuristics

9

Algorithm 2 LS 1: Input: s=s0 2: i = 0 3: repeat 4: s1 = N (s) {Generate a candidate neighbor from s} 5: if f (s1 ) ≤ f (s) then 6: s=s1 7: else 8: Stop 9: end if 10: until Stopping 11: Output: Final solution found s (local optima)

4.2

Variant Algorithm VNS+R

The VNS+R algorithm (Algorithm 3) uses a sequence of structures random input neighborhoods, the selection of the next neighborhood structure Ni is obtained from some of the Nr (Algorithm 3, lines 12-13). Algorithm 3 VNS+R 1: Input: a set of neighborhood structures Ni for i=1,...,kmax 2: S=S0 {Generate the initial solution} 3: repeat 4: k=1 5: while k ≤ kmax do 6: S1 =Nk (S) {Shaking: take a random solution S1 from 7: S2 =LS(S1 ) {LS: Local Search on Nk } 8: if f (S2 ) ≤ f (S) then 9: S = S2 10: k =1 11: else 12: r = random(0, kmax -1) 13: k = r {Move to another neighborhood r! = k} 14: end if 15: end while 16: until Stopping criteria 17: Output: Best solution S

4.3

kth neighborhood Nk }

VNS+LHS Variant

VNS+LHS has a previous stage where a set of data structures of neighborhoods {N1 , ..., Nkmax } is processed to generate the sequence to apply during the search. This is selected from a set of possible sequences of structure structures and neighborhoods built with Latin squares. Therefore, in order to build such set of possible sequences of neighborhood structures and then choose the most expediently, it was proposed: 1) generate a combination of uniform sequences in a design space with the Latin squares approach, 2) evaluate the sequences with the objective function of the problem on a bounded set of instances and applying appropriate statistical tests, and finally 3) choose the one that has been the most convenient. From there, VNS+LHS behaves like VNS.

10

4.4

C. R. Gatica et al.

Variant VNS+E

The VNS+E variant (Algorithm 4) was implemented by extending the local search (Algorithm 4, line 7) to a number greater than 1, with respect to possible immediate neighbors of the current solution. A ranking is then performed by evaluating the function objective and the best quality solution is selected as the best solution with respect to the current solution (LSE, Algorithm 5).

Algorithm 4 VNS+E 1: Input: a set of neighborhood structures Ni for i=1,...,kmax 2: S=S0 {Generate the initial solution} 3: repeat 4: k=1 5: while k ≤ kmax do 6: S1 =Nk (S) {Shaking: take a random solution S1 from 7: S2 =LSE(S1 ) {LS: Local Search exploratory on Nk } 8: if f (S2 ) ≤ f (S) then 9: S = S2 10: k =1 11: else 12: k = k + 1 {Move to next neighborhood} 13: end if 14: end while 15: until Stopping criteria 16: Output: Best solution S

4.5

kth neighborhood Nk }

Variant VNS+ER

The VNS+ER algorithm is the last variant that is proposed, which is obtained through the combination of VNS+E and VNS+R. It also uses the LSE search (Algorithm 5). To perform the move, use the strategy of the algorithm (Algorithm 3) in lines 12 and 13.

Algorithm 5 LSE 1: Input: s=s0 2: i = 0 3: repeat 4: Generate(s) {Generate n candidate neighbors from s applying Nk } 5: s1 = rank-best-neighbor() {Order and select the best neighbor of s} 6: if f (s1 ) ≤ f (s) then 7: s=s1 8: else 9: Stopping 10: end if 11: until Stopping 12: Output: Final solution found s (local optima)

VNS Variant Approach Metaheuristics

5

11

Design of Experiments

All the algorithms were implemented in C++ language, in the MALLBA library [1]. 90 instances of the problem are established, for each of these instances the algorithms are executed 30 times and the maximum number of evaluations is set to 360, 000 as stopping criteria. The experiments were executed in a sub-cluster formed by eleven nodes whose characteristics are the following: 64-bit CPUs each with Intel Q9550 Quad Core 2.83 GHz, 4 GB DDR3 1333 Mz memory, 160 Gb SATA hard drive and Asus P5Q3 motherboard. 5.1

Instances of the Problem

In order to find test instances of the problem, a review of the literature where the parallel machine scheduling problem is addressed [3,16,19] among others. While it was noted that there are instances of the problem of scheduling of parallel machines, the same ones, in general, involve more information depending on the objective function studied and the restrictions of the problem such as setup times, or release times to the system, times of deterioration of tasks (or jobs). However, for our unrestricted problem (on assignments) we do not none were found, for this reason, the set of instances was built from data obtained by random generator for parallel scheduling problem. These data consisted of pairs (pj , dj ), where pj is the time of processing and dj is the due date of the task tj for different sizes of problem instances. For the experiments, 90 instances were generated using a random generator by different problem sizes which were: Small of 100 tasks with 2 and 5 machines; Medium of 120, 150, 200 tasks and 5, 10, and 20 machines; Large of 500 tasks and 10 number of machines. Such are available upon request (email: [email protected]). The solution evaluation function takes an instance as input and calculates the value of maximum tardiness according to Eq. (1) in Sect. 3. 5.2

Parameter Settings

One of the advantages of the VNS algorithms consists of a scarce number of parameters to set up, regardless of the establishing the stop criteria, and define the set of neighborhood structures of entry which are: the number of structures of neighborhood kmax = 6 (for the instances of 500 tasks is kmax = 8), the maximum number of iterations in the local search is 1,000, number of additional neighbors in the local exploration search is 10. Whereas, for the 500 tasks is 50. The maximum number of evaluations of the objective function is 360,000, which is defined as the stopping criterion. The neighborhood structures Nk are given by the disturbing operators N-swap (N1 ), 2-opt (N2 ), 3-opt (N3 ), 4-opt (N4 ), Shift (N5 ), Scramble (N6 ), Insertion (N7 ) and Inversion (N8 ). A description of such operators is found in [20]. The representation of the solution used in algorithms is an integer permutation.

12

5.3

C. R. Gatica et al.

Algorithm Performance Evaluation Metrics

The metrics defined for the experimental study were: Bench, which is the reference value, or, so far, reference value, or optimum known for now, which is obtained by applying the heuristics and dispatch rules [15]; Best, the best value of the objective found function. Ebest =

Best − Bench ∗ 100 Bench

(2)

This is the percentage error. Mbest, the mid value of Best; Mebest, the mid value of Ebest; Median, is the central value of the set of Best values sorted from smallest to largest; Mevals, the mid value of objective function evaluations where Best value was found; M. Times Runs, the average execution time in nanoseconds.

6

Analysis of Results

In this section is presented an analysis of the results of the computational results considering the 90 instances, ten units of each of the following sizes: (a) n = 100 and m = 5; (b) n = 100 and m = 10; (c) n = 120 and m = 5; (d) n = 120 and m = 10; (e) n = 150 and m = 5; (f) n = 150 and m = 10; (g) n = 200 and m = 10; (h) n = 200 and m = 20 and (i) n = 500 and m = 10. Table 2 synthesizes the obtained results obtained by VNS and the variants VNS+R, VNS+LHS, VNS+E and VNS+ER. The average values of M best, Best are shown, and the percentage error value Ebest, are separated into groups according to the size of the instances of the problem Small, Medium and Large. The table entries for the metrics Mbest and Best correspond to the average values found by the algorithm VNS and its variants. The minimum values are seen in bold font. Regarding the metric Ebest are the values of the percentage error obtained by the Eq. (2) of the Sect. 5.3, and correspond to average, same, or minor values of Best regarding the reference values Bench. Said values of Ebest can be zero or negative, and are also marked in bold font. We have included the results obtained in our previous CACIC work [8] that correspond to the group of size small size: n = 100 and m = 5. For the rest of the group, starting from small: n = 100 and m = 10 new results are reported. If we see the results previously mentioned of instances Small n = 100 and m = 5, the best average values correspond to the VNS+ER variant related to Best and Ebest, and to the variant VNS+LHS related to Mbest. Then, continuing with the size group of small instances: n = 100 but with m = 10 machines, which are new results, we see in the column corresponding to VNS+E, the values Mbest, Best and Ebest are minimum in the three metrics with respect to the rest of the algorithms. For the group of instances Medium: n = 120, n = 150 and n = 200 some minimum values of the metric Mbest relate to VNS+LHS, and others to the variant VNS+E. The minimum values of the metric Best and Ebest are found in the column of the variant VNS+E.

VNS Variant Approach Metaheuristics

13

For the group of instances Large: n = 500 tasks, the variant VNS+LHS obtains the minimum values of the three evaluation metrics Mbest, Best and Ebest regarding the rest of the algorithms. Briefly, for the different sizes of the problem Small, Medium, and Large we can see that the variants VNS+ER, VNS+E and VNS+LHS find minimum values in the Mbest, Best and Ebest metrics. Therefore, the suggested hypothesis in this study establishes that some of the variants better the performance of VNS. Table 2. Comparison of VNS methaheuristic variants with respect to Mbest, Best and Ebest. Size

n

Small

100

m 5

10

Medium

120

5

10

150

5

10

200

10

20

Large

500

10

Avg. values VNS

VNS+R

VNS+LHS VNS+E

VNS+ER

Mbest Best Ebest Mbest Best Ebest

2,469.05 2,376.95 3.94 9,317.35 9,279.60 -0.47

2,570.58 2,415.15 6.83 9,319.21 9,265.50 -0.62

2,402.37 2,341.35 1.69 9,318.57 9,275.20 -0.51

2,459.41 2,342.45 0.95 9,299.55 9,221.30 -1.09

2,466.10 2,329.15 -0.26 9,307.00 9,232.10 -0.97

Mbest Best Ebest Mbest Best Ebest Mbest Best Ebest Mbest Best Ebest Mbest Best Ebest Mbest Best Ebest

10,036.35 9823.8 1.03 11,316.00 11,093.20 -0.42 17,028.92 16,693.80 2.27 13,965.51 13,819.90 -0.17 18,631.72 18,440.50 0.76 19,739.73 19,598.50 -0.05

10,025.59 9,798.70 0.77 11,203.31 11,123.20 -0.17 17,025.83 16,655.70 2.06 13,957.42 13,829.90 -0.09 18,630.30 18,414.30 0.61 19,728.15 19,598.80 -0.05

9,764.68 9,710.40 -0.14 11,128.80 11,081.50 -0.40 16,414.83 16,312.40 -0.03 13,842.22 13,790.90 -0.38 18,354.99 18,285.30 -0.09 19,609.03 19,578.40 -0.16

9,780.10 9,704.00 -0.20 11,111.76 11,030.60 -0.84 16,436.83 16,302.60 -0.07 13,839.43 13,782.70 -0.44 18,367.97 18,266.00 -0.20 19,604.22 19,538.90 -0.36

9,828.20 9,706.70 -0.17 11,127.93 11,053.10 -0.67 16,584.56 16,371.20 0.34 13,853.77 13,787.90 -0.40 18,439.44 18,284.90 -0.09 19,622.15 19,539.60 -0.35

Mbest Best Ebest

46,323.71 46,299.29 45,948.44 46,023.70 45,835.10 45,731.20 45,480.90 45,551.60 1.12 0.89 0.34 0.49

46,018.91 45,552.60 0.50

Figure 3 illustrates the box diagrams according to the evaluation metric Ebest of the algorithm VNS, and the variants VNS+R, VNS+LHS, VNS+E and VNS+ER, separated in groups of different instance sizes of the problem.

14

C. R. Gatica et al.

In the box diagrams, we can see the metric of evaluation Median represented by a horizontal line in bold. If such lines are centered in zero, it means that the obtained values Best are close to the Bench, that is, to the optimum known. Besides, if the graphic of the box diagrams are below zero it means that the values Best are better than the values Bench, meaning that there were found new optimums or better reference values close to the optimums. For the group of instances Small (a) and (b), all the algorithms reach the optimum known value. It can observed that the mid of the Ebest below zero, even reaching negative values, which indicate that the algorithms get up to better values than the known optimum. For the group of instances Medium, for the instances (c), (d), and (e) it can be seen that the difference in the performance of the algorithms, the standard VNS, and the VNS+R do not reach the optimum value; Its values of Ebest are always higher or even zero. In the best-case scenario, algorithms VNS+E and VNS+LHS stand out. In (e), an increase of the Ebest is noticeable for the algorithm VNS+ER. For all the instances you can see that the algorithm VNS+E and the VNS+LHS have a tendency to find closer and better values to the Ebest. For the group of instances Large no algorithm with the chosen parametric configurations reaches the optimum value, being algorithm VNS+LHS the one that stands out. It is worth mentioning that studies were undertaken with different numbers of neighborhoods, augmenting said number kmax from 6 to 8 as the entrance. It was also augmented the exploratory potential of the variants VNS+E and VNS+ER sets the number of neighbors from 10 to 50 in the local search. Figure 4 shows a convergence graph of the computational effort of the algorithms according to the evaluation metric Mevals separated by the groups of the different sizes of the instances from (a) to (i). Here, the number of evaluations that the algorithms need in the search process to find the optimum until reaching the stop criteria, which was set at 360, 000. In summary, the exploratory variants (VNS+E and VNS+ER) need a higher number of evaluations in the search processing. This, at the same time, needs longer execution times of the algorithms according to the measuring variable in nanoseconds M. Time Runs managing to avoid a premature convergence. This happens when there is a stagnation toward optimum locals to explore in more promising space search areas. 6.1

Statistical Test

We use the non-parametric statistic test (Friedman Ranking) [6], and [5] to make a comparison of the experimental media, obtained by taking as an evaluation metric, the average value of the Media (M best). Thus, we obtained a ranking of the algorithms, which represents the algorithm with the best performance in each group, separated by the size of the instances. To compare each algorithm with each other, and verify if there are any differences between them, we use a process post-hoc, that as the same test aforementioned, this one is also provided for by the tool Controlltest, [11].

VNS Variant Approach Metaheuristics

15

In applying the procedure Controlltest, [11] of comparisons in pairs between the control algorithm, the algorithm with best performance, in comparison with the others, comparing in pairs, if the Holm adjusted values p-values are inferior than 0.05, the pears are significantly different. On the other hand, if the p-values is more than, or equal to 0.05, it implies that such algorithms in the pair, are not statistically different with respect to the control algorithm. For the group of instances Small, in groups (a) and (b) it was found that the VNS+ER and VNS+E variants were the best and there were no significant differences between the two, but with the rest of the algorithms.

Fig. 3. Boxplots of problem instances comparing VNS variants about Ebest

16

C. R. Gatica et al.

Fig. 4. (a) Instances with n = 100 tasks and m = 5, (b) with n = 100 and m = 10; (c) with n = 120 and m = 5; (d) with n = 120 and m = 10; (e) with n = 150 and m = 5; (f) with n = 150 and m = 10; (g) with n = 200 and m = 10; (h) with n = 200 and m = 20; (i) with n = 500 and m = 10.

For the group of instances Medium, in (c), (g), and (f) it was observed that the VNS+LHS variant was the one that stood out in the group, with the VNS+E variant being the pair that did not differ significantly; in vice versa, it occurs in (e) and (h) the VNS+E variant stood out, being its partner VNS+LHS not significantly different. However, the results were statistically different from the rest of the algorithms. Except in (d) VNS+E and VNS+ER are not significantly different. For the set of instances Large in (i) the VNS+LHS variant obtained first place followed by the VNS+E variant, with a significant difference from the rest of the algorithms.

7

Conclusions

In this work we present the S-metaheuristic VNS for the scheduling problem of unrestricted parallel identical machines that minimizes the objective function of Maximum Tardiness (Tmax ). The objective of the study consisted of propose heuristic variants of the standard VNS version that improve performance of the same. The experimental results obtained show that the exploratory variants VNS+E and VNS+ER, and the variant of Latin squares VNS+LHS were the ones that obtained the best results, in different sets of problem instance sizes, showing statistically significant differences with VNS. Despite the good results obtained, it was observed that for instances of greater complexity, it was necessary to increase the exploratory potential of VNS+E and VNS+ER, so it was increased the number of neighbors of the current solution in the exploratory local

VNS Variant Approach Metaheuristics

17

search, and it was also required to increase the number of neighborhood structures available to explore. This implied an increase in the execution time of such variants, but less convergence toward local optima is achieved. The VNS+LHS variant obtains a good performance in each set of problem sizes, is expensive in its execution times, and requires extra time for the construction of the possible sequences of neighborhood structures using a Latin square. This allows us to conclude that in future work it will be necessary to carry out experiments to implement new strategies and search operators, especially to solve a set of instances of the problem of large size, as well as an analysis of the behavior of the algorithms and strategies that are proposed. Acknowledgments. The authors are grateful for the continuous support of the Universidad Nacional de San Luis (UNSL) through the Research Project PROICO 03-1018 and the Departamento de Inform´ atica in the Facultad de Ciencias F´ısico Matem´ aticas y Naturales in the UNSL.

References 1. Alba, et al.: MALLBA: a library of skeletons for combinatorial optimisation. In: Monien, B., Feldmann, R. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 927–932. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45706-2 132 2. Cai, J., Lu, S., Cheng, J., Wang, L., Gao, Y., Tan, T.: Collaborative variable neighborhood search for multi-objective distributed scheduling in two-stage hybrid flow shop with sequence-dependent setup times. Sci. Rep. 12(1), 1–19 (2022) 3. Cheng, W., Guo, P., Zhang, Z., Zeng, M., Liang, J.: Variable neighborhood search for parallel machines scheduling problem with step deteriorating jobs. Math. Prob. Eng. 2012, 928312 (2012) 4. Erden, C., Demir, H.I., K¨ ok¸cam, A.H.: Solving integrated process planning, dynamic scheduling, and due date assignment using metaheuristic algorithms. Math. Prob. Eng. 2019, 1572614 (2019) 5. Friedman, M.: A comparison of alternative test of significance for the problem of the m rankings. Ann. Math. Stat. 11, 86–92 (1940) 6. Friedman, M.: The use of ranks to avoid the assumption of normality implicit in the analysis of variance. J. Am. Stat. Assoc. 3, 674–701 (1937) 7. Garc´ıa-Guar´ın, P.J., Cantor, J., Cort´es-Guerrero, C., Guzm´ an Pardo, M.A., Rivera Rasc´ on, S.A.: Implementaci´ on del algoritmo vns-deepso para el despacho de energ´ıa en redes distribuidas inteligentes. Inge Cuc (2019) 8. Gatica, C., Molina, S., Leguizam´ on, G.: Evaluation of variants of the VNS metaheuristics for the parallel machines scheduling problem. XXVIII Congreso Argentino de Ciencias de la Computaci´ on, La Rioja Argentina (2022) 9. Hansen, P., Mladenovi´c, N.: Variable neighborhood search: principles and applications. Eur. J. Oper. Res. 130(3), 449–467 (2001) 10. Hansen, P., Mladenovi´c, N., Todosijevi´c, R., Hanafi, S.: Variable neighborhood search: basics and variants. EURO J. Comput. Optimiz. 5(3), 423–454 (2017) 11. J. Derrac, S. Garc´ıa, D.M., Herrera, F.: A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms. Swarm Evolut. Comput. 1, 3–18 (2011)

18

C. R. Gatica et al.

12. Lei, Deming y He, S.: An adaptive artificial bee colony for unrelated parallel machine scheduling with additional resource and maintenance. Exp. Syst. Appl. 205, 117577 (2022) 13. Lu, S., Ma, C., Kong, M., Zhou, Z., Liu, X.: Solving a stochastic hierarchical scheduling problem by VNS-based metaheuristic with locally assisted algorithms. Appl. Soft Comput. 130, 109719 (2022) 14. Maecker, S., Shen, L., M¨ onch, L.: Unrelated parallel machine scheduling with eligibility constraints and delivery times to minimize total weighted tardiness. Comput. Oper. Res. 149, 105999 (2023) 15. Morton, T.E., Pentico, D.W.: Heuristic scheduling systems. John Wiley and Sons, Inc, With Applications to Production Systems and Project Management (1993) 16. Pei, J., Cheng, B., Liu, X., Pardalos, P.M., Kong, M.: Single-machine and parallelmachine serial-batching scheduling problems with position-based learning effect and linear setup time. Ann. Oper. Res. 272(1), 217–241 (2019) 17. Pinedo, M.: Scheduling Theory, Algorithms, and Systems. PRENTICE HALL (1995) 18. Rudek, R.: A fast neighborhood search scheme for identical parallel machine scheduling problems under general learning curves. Inform´ atica blanda aplicada, 113, 108023 (2021) 19. Senne, E.L.F., Chaves, A.A.: A VNS heuristic for an industrial parallel machine scheduling problem. ICIEOM CIO Valladolid (Spain, 2013) 20. Talbi, E.G.: Metaheuristics from design to implementation. John Wiley & Sons (Canada, 2009) 21. de Vargas Fortes, E., Macedo, L.H., de Araujo, P.B., Romero, R.: A VNS algorithm for the design of supplementary damping controllers for small-signal stability analysis. Int. J. Electr. Power Energy Syst. 94, 41–56 (2018) 22. Zhang, Xiangyi y Chen, L.: A general variable neighborhood search algorithm for a parallel-machine scheduling problem considering machine health conditions and preventive maintenance. Inform´ atica & Investigaci´ on de operaciones 143, 105738 (2022)

Technology Applied to Education

Augmented Reality to Reinforce Working Memory in Children with ASD. A Case Studies Mónica R. Romero1(B)

, Ivana Harari1 , Javier Diaz1 and Nancy Armijos3

, Estela M. Macas2

,

1 Faculty of Computer Science, National University of La Plata, LINTI, Calle 50 y 120, Buenos

Aires La Plata, Argentina [email protected] 2 International Ibero-American University, UNINI MX, Calle 15 y 36, Campeche, México 3 International University of Ecuador UIDE, Loja, Ecuador

Abstract. Are interventions conducted using augmented reality beneficial for the working memory of children with autism spectrum disorder? This article describes a case study, which reviewed working memory in children who used Hope Software, the objective of the study was to assess whether children can remember after one year of the intervention the processes of imitation, perception, visual coordination, motor skills from sequences of auditory, visual stimuli, in direct, reverse and increasing order. The research was worked under the mixed approach, the type of research was experimental, descriptive and purposeful, it had the participation and guidance of a multidisciplinary team, it was carried out at the Ludic Place Therapeutic Center in Quito Ecuador, during the period from June to December 2022, A proposal was built that allows obtaining metrics through an assessment carried out through participatory design methods. The results obtained indicate that after one year of the intervention the participants remembered the processes, they even repeated some sequences, so we conclude that the use of augmented reality can favors working memory in children with autism. Keywords: Augmented Reality (AR) · Autism Spectrum Disorder ASD · New information and communication technologies (NTIC) · Teaching learning · Software Hope · Working memory

1 Introduction Memory is a complex cognitive system that is not understood as “a single entity, it consists of a series of different systems that have in common the capacity to store information” [1], as well as to retrieve it. Said information is obtained through the senses, memory being in a way a record of perceptions [2–5]. Regarding the population with Autism Spectrum Disorder (ASD), working memory problems could arise due to the type of information that must be remembered[6] and the demands of the tasks or the environment, also due to difficulties in the storage and simultaneous processing of information[7, 8]. © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 21–32, 2023. https://doi.org/10.1007/978-3-031-34147-2_2

22

Mónica. R. Romero et al.

Previously, an Educational Treatment of Children with ASD mediated through augmented reality (AR) called TEARA was determined, which can be defined as a disruptive method that complements the new information and communication technologies (NTIC) designed to improve the quality of life of children with autism, a training system called Hope is defined, which reinforces and promotes teaching learning processes such as imitation, motor skills and perception[9]. On the other hand, through the work: “Hope Project: Development of mobile applications with augmented reality to teach dance to children with ASD” [10] we executed an intervention plan to improve certain skills in children with autism and we have determined that AR allows improve skills and teaching-learning processes [11–17]. While it is true that there has been much experimentation with the use of Information and Communication Technologies in the treatment, reinforcement, education, routines of children with ASD [18], it is also true; that the biggest problem resides in the fact that the studies carried out are of a brief and specific nature where AR is used in a few sessions and a result is obtained, there is little literature where researchers have focused their attention on verifying what happens with the research participants experimental after the interventions. The idea is to know if indeed the skills that improved with the use of AR have been stored in the working memory, if the children remember what they learned [19–26]. The previous studies served as the basis for the development of the present investigation where new aspects have extended and explored, such as the working memory of ASD children after a year of intervention using TEARA, the perspective of information processing through several experiments that served to evaluate working memory. In this investigation, the investigative background is described, the methodology and work plan to be used, the characteristics and procedure for the selection of the sample and the evaluation instruments are exposed in Sect. 2, the discussion session shows the processing of the data obtained and finally the conclusions, limitations and future work based on the results obtained are detailed.

2 Material and Methods The study is of a descriptive type and design, of a selective non-probabilistic crosssectional type. Sampling is non-probabilistic, purposeful, intentional with inclusion and exclusion criteria; since premeditated intentions are being used to choose a group that is typical of the sample. The participants were 05 children with ASD from the Ludic Place Center, between 5 and 8 years old, people who met the inclusion criteria. The instruments used were the tests, corresponding to PMPA (free recall, cued recall, and recognition) and MSCA (visual item recall and prose recall). The information was processed with the IBM SPSS Statistics and Microsoft Excel programs Characteristic of the sample (Inclusion criteria): Neurodevelopmental diagnosis: Autism spectrum disorder, Severity level: 1, Age: between 05 years, 02 months, and 08 years. 04 months, Schooling. From 2 to 4 grades, during the year 2022, Educational situation: included in regular basic education institutions. Gender: Male and educative: female: Spanish. Before the beginning of the sessions, the parents gave their informed consent for the children to participate in the experiment.

Augmented Reality to Reinforce Working Memory

23

Conditions for the administration of the tests to the study sample. The evaluations were carried out individually at the Ludic Place Therapeutic Center in the City of Quito, Ecuador. The evaluation environments were found to be sufficiently illuminated and free of noise. The duration of each evaluation session fluctuated between 25–35 min. The reagents administered strictly following the instructions published in the respective manuals. The characteristics of the participants in the case study shown below in Table 1. Table 1. Descriptive sheet of participant characteristics. Participant

Age

IC

Severed ASD

Reciprocal ty social emotion

Communication No-Verbal

Inflexibly to change

Stereotypies and reactivity and sensory

I1

5

Half

Half

Half

Half

Half

Half

I2

6

Half

Half

Half

Half

Half

Half

I3

4

Half

Half

Half

Half

Half

Half

I4

5

Half

Half

Half

Half

Half

Half

I5

7

Low

Low

Low

Low

Low

Low

2.1 Work Plan ASD are interventions mediated through AR, for this purpose we carry out a work plan where different phase are evidenced. Phase I: Selection of memory tests. We then examined recall in a variety of situations: individual difference tests, standard laboratory tests (controlled situations), and recall of an event (natural situation). Phase II: Testing. In phase 2 the memory tasks defined. The memory tasks to be used in the experiments were the following: • Natural Situation: Recall of the introductory event (recall of the event and recall of details) • Controlled Situations – PMPA (free recall, cued recall, and recognition) – MSCA (visual item recall and prose recall)

24

Mónica. R. Romero et al.

Phase III: Evaluation of results. We will therefore have three levels of evaluation, referring to: Natural situation. (Memory and recognition), Controlled Situations (PMPA), (MSCA) Experiments proposed to measure Working Memory in ASD children. To conduct the task, posters associated with Software Hope were used, starting by teaching each of the alternatives shown by the software managed by the therapist, introducing the child and interacting with him. Experiment 1: Recall of the Introductory Event. Hope Software avatar images. Hence, the therapist asks about the image: “Do you? remember what this image is about” (identity) and after looking at the menu card that. segregated into 5 options, “Do any of these options bring back any memories?” (action). Additionally, the children were asked if they could identify knowledge, namely: “Do you know how to dance?” (Sensory detail) and “Where did you dance?” (Contextual detail) the order of the questions was established following the logical sequence of the situation. First: the dance memory (Software Hope); then: the context indistinctly (options, music, place); and, finally, the action associated with dancing. The questions about this episode were developed considering the characteristics of a natural situation. Therefore, it was avoided to pose the task as a succession of questions and answers in the manner of an interrogation or an exam. We have considered that this modality was suitable for a familiar memory format for the child, of a colloquial type, which was also useful when calibrating the type of memory. The score in this test is 1 point for each correct answer in the 2 questions about memory of the event (identity memory and character action) on the one hand, and 1 point for each correct answer in the 2 questions about memory of details on the other hand. (Sensory detail and software contextual detail). Next, Table 2 shows the resources (image, audio, video) used for the experiment. Experiment 2: Controlled situations PMPA (Memory Test). This test made up of pictorial material corresponding to 4 categories (child uses hands, child uses feet, child makes a pose, child makes a line). 16 cards are used (4 per category). The 16 images are presented one by one in random order. The therapist asks the child to name each image once seen. Once the drawing is named, she removes the letter. After presenting the 16 cards in random order, free recall, cued recall, and recognition are requested in that order. Free Recollection After 30 min, the child is asked to name all the pictures that she remembers, in the order she wants. Only hits considered. I remember with clues. The therapist tells the child: “Very good, now we are going to do it in another way”. She is given the name of each category as a clue (e.g., “There were hands”) and is asked to name all the pictures on the list that she can remember that correspond to that category. Hits and intrusions, if any, are considered. Recognition: The child with eight pictures for this recognition task. Each sheet presents four illustrations: one of them corresponds to one of the images seen previously and the other three images are distractors from the same conceptual category. The eight plates are presented successively, one by one. In total, eight drawings. The therapist asks the child to point out

Augmented Reality to Reinforce Working Memory

25

Table 2. Recourses utilizes experiment. Software Hope Image

Instrument Avatar

Menu

Scenarios

Action to perform Show Hope Software avatar of the

Figure

Show each of the menu. options

Show scenarios various

game

the

Audio

songs

play songs that the game has.

Video

Video de sessions

of Show child fragments of his stake

which of the images she has seen before. Hits, false alarms and omissions, if any, are taken into account. Memory tests of the Mc Carthy Scales of Aptitudes and Psychomotor Skills for Children (MSCA). These are two tests belonging to the MSCA (general intelligence test for children between 2 1/2 years and 8 1/2 years). The tasks are: free recall of visual items (pictorial) memory) and free recall of prose (verbal memory) [3]. Visual Item Recall

26

Mónica. R. Romero et al.

It is an immediate free recall task of images. It is a sheet with illustrations of five dance movements that visually promoting double coding: visual and oral verbal. The therapist names aloud while pointing to them and the child repeats. The sheet is exposed for 10 s, so the children have all 5 objects present during that time. The therapist then puts the slide away and immediately asks the child to remember what she has shown him, in the order she wants. Next, Table 3 shows the visual items used for experiment 2. Table 3. MSCA memory tests. Item visuals experiment 2.

It is a simple story created in relation to the Software Hope that the therapist reads to the child the story has few words no more than 100. Then she asks him to tell it to her. For the score, the story has divided into 6 elements that contemplate the essential points of the story: 2 characters (teacher and child) and 4 actions (hands, feet, trace a route, pose). Table 4 below shows the items of the prose recall test. Table 4. Story belonging to the MSCA prose memory test.

One day, a child, attended Ludic Place, when his teacher arrived, she was waiting for him and indicated a new game called Hope, the idea was to follow the avatar(robot)displayed on the screen, and perform. certain actions. this game allowed the child to have fun in addition to moving and dancing. The boy could choose the music and the scenery and some options through the game menu. The boy learned to move his hands, then his feet, he also made some strokes with his hands, and he was able to perform. some poses After a while the boy was dancing in the classroom.

3 Results The evaluation of the working memory in ASD children after the use of the Hope software, was carried out after 1 semester of intervention and sought to measure the working memory for the effect, 10 sessions were carried out. Of which 05 were predestined to the evaluation of the tests planned in experiment 1 where some natural situations were evaluated, through introductory events about Software Hope and the remaining 5 to the evaluation of experiment 2, which used controlled situations regarding dance, dance, movements. In each of them different activities were proposed including different techniques and materials. Table 5 below shows the summary of the results obtained.

Augmented Reality to Reinforce Working Memory

27

Table 5. Results of Assessment of Working Memory in ASD Children. Actions experiment 1

Actions experiment 1

Actions experiment 1

Event introductory

Hope Software

PMPA

Child with ASD

Memory of event

Memory of details

Test memory free memory

Remember or with indications

Scale ofPunctuation

Score of (0–4) Score of (0–2)

Score of (0–8)

Score of (0–16) Score of (0–5)

Score of (0–5)

I1

4

2

7

6

5

3

I2

4

2

8

5

4

4

I3

3

2

7

7

5

3

I4

4

2

6

4

4

4

I5

4

1

4

6

5

2

MSCA Re-sane of Items visuals

Re-sane of prose

Adaptation to experience. The participants in the intervention showed their acceptance and comfort. Diverse types of data collected during the intervention. On the one hand, those corresponding to experiment 1 and experiment 2, and on the other, those related to the performance of the participants during the sessions. Two categorical data sets were obtained, which were used to assess participants’ progress in working memory. As shown in Fig. 1, a positive evolution is obtained in all the items for all the participants. The best values are obtained in terms of Experiment 1, especially for recall of details and event memory; however, the result of Experiment 2 in the PMDA test, especially in memories with clues, was not satisfactory and all participants reached scores of below average. All the participants in the intervention presented significant improvements in working memory. From an estimated range of [80%-100%] correct working memory children without ASD, the participants in this case study presented a range estimated [70%-55%] participant I1 had 28 correct answers out of 40 possible with 70%, followed by participant I3 with 67.5%, participant I4 with 62.5% except for I5 who shows a slight decrease with 55%. Prior to the evaluation, the results of the measurement of working memory for the 2019–2020 period of the members of the case study were available, where natural situations and controlled situations were reviewed, they used PMPA, MSCA scales, we contrasted the results of the evaluation obtained in 2022 making significant progress. We now analyze the progress of the study group using the probabilistic approach. We compared the distributions of responses before and after the intervention, measuring the distances to the mean (normalized to 1) of the evaluations of both distributions. There is progress if the assessment after the intervention is higher than the average, and progress is significant if the distance between both values exceeds 5%. The following results are shown below in Fig. 2:

28

Mónica. R. Romero et al.

EXPERIMENTS Hope Soware

PMPA

PMPA

MSCA

MSCA

6 5 4

4

4

1

2

2

3

3 2

2

2

4 4 4

5

4 4

5

3

4

4

5

6

6

7

7 7

8

Event

I1

I2

I3

I4

I5

Fig. 1. Individual progress of the participants in terms of working memory before the use of AR and after the use of Software Hope.

Memory work 40 20 0 I1

I2

I3

Memory tests aer RA Memory tests without RA

I4

I5

Memory tests without RA

I1 17

I2 12

I3 15

I4 11

I5 9

Memory tests aer RA

28

25

27

24

22

Fig. 2. Individual progress of the participants in terms of working memory before the use of AR and after the use of the Hope Software.

4 Discussion We have presented an intervention based on two experiments that allowed us to measure the working memory of children with ASD using an experimental design, the results of the intervention allow us to answer our research question positively. Indeed, the intervention carried out has been shown to be effective when it comes to improving working memory, associated with cognitive abilities, it is important to highlight that the abilities have changed significantly in the period considered.

Augmented Reality to Reinforce Working Memory

29

The results confirm that the use of RA as a means of working memory reinforcement helps children with ASD to reinforce cognitive aspects regarding the storage of memories in working memory, which includes the short and long term, additionally contrasting the results. of the participants prior to the RA intervention, it can be indicated that the success of the stimulation through the senses will largely depend on the teaching-learning strategies used [27–30]. The results showed a higher performance in the tests where an evolutionary pattern was determined, especially in experiment 1, whose strategy was to verify aspects generally related to Software Hope, through memory of the event and recall of details. The evaluation of working memory was used, from sequences of stimuli of different order: auditory, in direct, reverse and increasing order. Regarding the nonverbal communication of the participants through the memory of visual items, there is the greatest progress than those associated with the memory of prose [31, 32]. In this study, there was a planning of experiments with concrete material and following a methodology, where the children interacted with their therapist using various resources to carry out the different proposed activities, which provided knowledge mechanisms to the children in a systemic way, generating environments conducive to fostering interest in remembering.

5 Conclusions Regarding the theoretical justification, the present study will allow us to understand, in greater detail, the working memory in a group of students with regular basic ASD, which will initially provide significant and updated information in the area; therefore, it will become a relevant source of knowledge given the scarce bibliography on the subject, allowing other professionals to carry out studies and expand the content on the subject of the effectiveness of AR in the working memory of ASD children, regarding the As a practical aspect, the execution of this study will initially enable psychologists, teachers and professionals related to the area to develop new evaluation and treatment resources aimed at improving the working memory of children with ASD. In the same way, incipiently it will facilitate the elaboration. of new projects and stimulation programs on working memory in children with ASD mediated through NTIC. On the other hand, it will make it possible as an initial study, that the different institutions that provide care and education to children with ASD will additionally serve to train teachers, based on the implementation of resources and scientifically proven information for the stimulation using RA of the memory of work of children with ASD. Finally, regarding the methodological importance, this study will disseminate data that contribute to the validity and reliability of the instrument used for this group of children. There are, of course, various limitations in the study conducted that indicate that the results must be viewed with caution, the duration of the intervention, and the heterogeneity of the participants prevent generalization of the results. This study is a particular example of the use of AR as an educational tool that can be an instrument with great potential to reinforce working memory in children with ASD. The analysis of works focused on attention, memory in ASD reflects opposite results, even in works in which the same evaluation tests used, however, there were no works that

30

Mónica. R. Romero et al.

allow us to compare results after RA interventions. Having controlled for the variables cognitive level and level of language development in all the studies analyzed. As future work, correlations of working memory and source memory can be made in children with ASD who participated in training using AR. Future studies should include larger groups, a greater number of sessions with alternative creative dynamics in a longer period of intervention, promoting cooperation between researchers and institutions to unify criteria, lengthen interventions, and design follow-up periods, all of which is crucial to improve the reliability of the results. It is expected to expand this study and conduct new research related to the need for greater knowledge about the functioning of working memory and its link with interventions related to the use of NICT in children with autism. Acknowledgment. We are grateful to the LINTI New Computer Technologies Research Laboratory of the National University of La Plata -Argentina, the National Secretary of Higher Education, Science and Technology SENESCYT- Ecuador, as well as the Ludic Place therapeutic Centre where this project conducted.

References 1. Han, Y.M.Y., Chan, M.C., Chan, M.M.Y., Yeung, M.K., Chan, A.S.: Effects of working memory load on frontal connectivity in children with autism spectrum disorder: a fNIRS study. Sci. Rep. 12(1), 1–14 (2022). https://doi.org/10.1038/s41598-022-05432-3 2. Acosta, M.T.: Sleep, memory and learning. Medicina (B. Aires), vol. 79, pp. 29–32 (2019) 3. Agudelo Gómez, L., Pulgarín Posada, L.A., Tabares Gil, C.: La estimulación sensorial en el desarrollo cognitivo de la primera infancia. Cypriot J. Educ. Sci. 20(2), 37–50 (2018) 4. Seijas Gómez, R.: Atención, memoria y funciones ejecutivas en los trastornos del espectro autista: ¿cuánto hemos avanzado desde Leo Kanner? Rev. la Asoc. Española Neuropsiquiatría, 35(127), 573–586 (2015). https://doi.org/10.4321/s0211-57352015000300009 5. Solcoff, K.: El origen de la Memoria Episódica y de Control de Fuente: Su relación con las capacidades de Teoría de la Mente (2011) 6. Nekar, D.M., et al.: Effects of augmented reality game-based cognitive–motor training on restricted and repetitive behaviors and executive function in patients with autism spectrum disorder. Healthc. 10(10), 1981 (2022). https://doi.org/10.3390/healthcare10101981 7. Aguiar-Aguiar, G., Mainegra-Fernández, D., García-Reyes, O.: Teaching reading comprehension to school children with autism spectrum disorders: secrets from experience. Rev. Electron. Educ. 24(2), 1–16 (2020). https://doi.org/10.15359/ree.24-2.22 8. Roma, M.C.: La construcción de la memoria autobiográfica en niños con TEA mediada por los Sistemas Alternativos y Aumentativos de Comunicación: una revisión sistemática. Perspect. Metod. 20(99), 1–28 (2020). https://doi.org/10.18294/pm.2020.3166 9. Romero, M.R., Harari, I., Diaz, J., Macas, E.: Hope Project : development of mobile applications with augmented reality to teach dance to children with ASD. In: Libro de actas - XXVIII Congreso Argentino de Ciencias de la Computación - CACIC, pp. 734–745 (2022) 10. Romero, M.R., Harari, I., Diaz, J., Macas, E.: TEARA : Educational treatment of children with ASD , mediated through augmented reality. In: Libro de actas - XXVIII Congreso Argentino de Ciencias de la Computación - CACIC, pp. 118–130 (2022) 11. Romero, M.R., Harari, I., Diaz, J., Macas, E.: Hope project : development of mobile applications with augmented reality to teach dance to children with ASD. In: Libro de actas - XXVIII Congreso Argentino de Ciencias de la Computación - CACIC, pp. 734–745 (2022)

Augmented Reality to Reinforce Working Memory

31

12. Romero, M., Harari, I., Diaz, J., Macas, E.: Proyecto esperanza: desarrollo de software con realidad aumentada para enseñanza danza a niños con transtorno del espectro autista. Rev. Investig. Talent. 9(1), 99–115 (2022) 13. Romero, M.R., Macas, E., Harari, I., Diaz, J.: Is it possible to improve the learning of children with ASD through augmented reality mobile applications? In: Botto-Tobar, M., Zambrano Vizuete, M., Torres-Carrión, P., Montes León, S., Pizarro Vásquez, G., Durakovic, B. (eds.) ICAT 2019. CCIS, vol. 1194, pp. 560–571. Springer, Cham (2020). https://doi.org/10.1007/ 978-3-030-42520-3_44 14. Romero, M., Harari, I., Diaz, J., Ramon, J.: Augmented reality for children with autism spectrum disorder. A systematic review. Int. Conf. Intell. Syst. Comput. Vision, ISCV 2020 5, 9204125 (2020). https://doi.org/10.1109/ISCV49265.2020.9204125 15. Romero, M., Macas, E., Harari, I., Díaz, J.: Eje integrador educativo de las TICS: caso de EstudioNiños con trastorno del espectro autista. SAEI - Simp. Argentino Educ. en Informática, pp. 171–188 (2019) 16. Romero, M., Díaz, J., Harari, I.: Impact of information and communication technologies on teaching-learning processes in children with special needs autism spectrum disorder. XXIII Congr. Argentino Ciencias la Comput, pp. 342–353 (2017). https://www.researchgate.net/ publication/341282542 17. Romero, M., Harari, I.: Uso de nuevas tecnologías TICS -realidad aumentada para tratamiento de niños TEA un diagnóstico inicial. CienciAmérica Rev. Divulg. científica la Univ. Tecnológica Indoamérica 6(1), 131–137 (2017). https://dialnet.unirioja.es/descarga/articulo/6163694. pdf 18. Láinez, B., Chocarro de Luis, E., Héctor Busto Sancirián, J., López Benito, J.R.: Aportaciones de la Realidad Aumentada en la inclusión en el aula de estudiantes con Trastorno del Espectro Autista Contributions of Augmented Reality in inclusive education with students with autism spectrum disorders. Rev. Educ. Mediática y TIC 7(2), 120–134 (2018). https://doi.org/10. 21071/edmetic.v7i2.10134 19. Krause, M., Neto, M.A.C.: Systematic mapping of the literature on mobile apps for people with Autistic Spectrum Disorder. ACM Int. Conf. Proceeding Ser. 5, 45–52 (2021). https:// doi.org/10.1145/3470482.3479616 20. Gali-Perez, O., Sayis, B., Pares, N.: Effectiveness of a mixed reality system in terms of social interaction behaviors in children with and without Autism Spectrum Condition. ACM International Conference Proceedings Series (2021). https://doi.org/10.1145/3471391.347 1419 21. Thevin, D.I.L., Rodier, N., Oriola, B., Hachet, M., Jouffrais, C., Brock, A.M.: Inclusive adaptation of existing board games for gamers with and without visual impairments using a spatial augmented reality framework for touch detection and audio feedback. Proc. ACM Human-Computer Interact. 5(ISS), 3488550 (2021). https://doi.org/10.1145/3488550 22. Zheng, Z.K., Sarkar, N., Swanson, A., Weitlauf, A., Warren, Z., Sarkar, N.: CheerBrush: a novel interactive augmented reality coaching system for toothbrushing skills in children with autism spectrum disorder. ACM Trans. Access. Comput. 14(4), 1–20 (2021). https://doi.org/ 10.1145/3481642 23. Putnam, C., Mobasher, B.: Children with autism and technology use: a case study of the diary method. Conference on Human Factors in Computing Systems - Proceedings, pp. 1–8 (2020). https://doi.org/10.1145/3334480.3375218 24. Koumpouros, Y., Toulias, T.: User centered design and assessment of a wearable application for children with autistic spectrum disorder supporting daily activities. ACM International Conference Proceeding Series, pp. 505–513 (2020). https://doi.org/10.1145/3389189. 3398002

32

Mónica. R. Romero et al.

25. Pamparˇau, C., Vatavu, R.D.: A research agenda Is needed for designing for the user experience of augmented and mixed reality: a position paper. ACM International Conference Proceeding Series, pp. 323–325 (2020). https://doi.org/10.1145/3428361.3432088 26. Li, J., et al.: Non-participatory user-centered design of accessible teacher-teleoperated robot and tablets for minimally verbal autistic children. ACM International Conference Proceeding Series, pp. 51–59 (2020). https://doi.org/10.1145/3389189.3393738 27. Barquero, D.D.: El Trastorno del Espectro Autista (TEA) y el uso de las Tecnologías de la información y comunicación (TIC). Int. J. New Educ. 4, 7447 (2019). https://doi.org/10. 24310/ijne2.2.2019.7447 28. Singh, K., Srivastava, A., Achary, K., Dey, A., Sharma, O.: Augmented reality-based procedural task training application for less privileged children and autistic individuals. In: Proceedings - VRCAI 2019 17th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and its Applications in Industry (2019) https://doi.org/10.1145/3359997.3365703 29. Rouhi, A., Spitale, M., Catania, F., Cosentino, G., Gelsomini, M., Garzotto, F.: Emotify: emotional game for children with autism spectrum disorder based-on machine learning. International Conference on Intelligent User Interfaces, Proceedings IUI, pp. 31–32 (2019). https:// doi.org/10.1145/3308557.3308688 30. Jamiat, N., Othman, N.F.N.: Effects of augmented reality mobile apps on early childhood education students’ achievement. ACM International Conference Proceedings Series, pp. 30– 33 (2019). https://doi.org/10.1145/3369199.3369203 31. Te Tsai, W., Chen, C.H.: The use of augmented reality to represent gamification theory in user story training. ACM International Conference Proceedings Series, pp. 265–268 (2019). https://doi.org/10.1145/3345120.3345131 32. Tarantino, L., De Gasperis, G., Di Mascio, T., Pino, M.C.: Immersive applications: what if users are in the autism spectrum? An experience of headsets engagement evaluation with ASD users. Proceedings - VRCAI 2019 17th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and its Applications in Industry (2019) https://doi.org/10.1145/ 3359997.3365696

A Review of Intelligent Tutoring in Secondary Education María Cecilia Pezzini1(B)

and Pablo Thomas2

1 School of Computer Science, National University of La Plata, La Plata, Argentina

[email protected]

2 School of Computer Science, Council of Scientific Research Associate Center of the Province

of Buenos Aires (CIC), Computer - Science Research Institute LIDI (III-LIDI, National Universityof La Plata, La Plata, Argentina [email protected]

Abstract. The use of intelligent tutoring systems may be useful to support the teaching and learning process, especially in the area of Math, in order to contribute to improve the students’ academic level. The selection strategies and evaluation criteria were defined in a previous work about Intelligent Tutoring in Teaching [11]. The present paper delves into the analysis of the selected intelligent tutoring systems taking their functional characteristics into consideration. Keywords: Intelligent tutoring systems · Secondary education · Math teaching

1 Introduction In 2018, Argentina participated in PISA (Programme for International Student Assessment). This is a triennial series of tests intended for students aged 15 years who are enrolled in 7th grade or more. The details from this testing survey show that a great proportion of students could not satisfactorily solve problems requiring routine procedures, following simple instructions with information available. [28]. In the testing called ‘Aprender 2019’ conducted by the National Ministry of Education through the Secretary of Educational Information and Evaluation (SEIE), Mathematics is the subject in which students show the greatest number of difficulties and in which only a 29% showed a satisfactory or advanced performance (the two upper categories of the four used to classify students according to their performance in the test) and a 43% of students performed below the basic level [28]. The evolution of technology has led to develop software systems using artificial intelligence techniques with the aim of supporting customized education by serving as a personal tutor for each student, with the capacity of discerning his/her needs and the meta-cognitive processes required in learning. The selection strategies and evaluation criteria were defined in a previous work about Intelligent Tutoring in Teaching [11]. © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 33–46, 2023. https://doi.org/10.1007/978-3-031-34147-2_3

34

M. C. Pezzini and P. Thomas

The present paper delves into the analysis of the selected intelligent tutoring systems taking their functional characteristics into consideration. Special emphasis shall be put on Intelligent Tutoring Systems (hereinafter, ITS) in relation to the teaching of Math. The preference in the selection is based on the fact that the mathematical thinking is that which presents the greatest difficulty for students, and improving it will provide certain tools to develop analytical thinking and help learn content from other disciplines, enabling its consideration as a game-changing learning tool. In addition, it promotes an advancement in reasoning and abstraction skills, contributing to the analysis of strategies both in relation to problem-solving and dealing with specific situations. Section 2 describes the selection of intelligent tutoring systems. Section 3 shows the analysis of intelligent tutoring systems. Section 4 details the selected intelligent tutoring systems. Section 5 describes the functional characteristics of the selected intelligent tutoring systems, and Sect. 6 presents conclusions and future works.

2 Selection of Intelligent Tutoring Systems Intelligent tutoring systems make up three basic areas: educational research by means of tools which enable a customized teaching process ensuring the student’s learning success; artificial intelligence by applying user modeling techniques, representation of knowledge and reasoning, and cognitive or educational psychology, upon the application of the cognitive simulation of the behavior of a tutor: reasoning, learning, and knowledge. Intelligent tutoring systems enable the emulation of a human tutor in the sense of knowing what to teach, how to teach and who to teach. On the other hand, tutors may also be implemented to help gradually solve misconceptions, contributing to a conceptual change [34] [35] in the way of constructing knowledge in a meaningful way. The bibliographic search was conducted in academic research databases, based on specific strings, as shown in Table 1. A total of 183 papers were found that address the subject of interest, from which 10 intelligent tutoring systems were selected, in relation to the subject of ITS in secondary education, preferably in the area of Mathematics, which may in some cases model affectivity; their publication dates correspond to the last five years. The following items were taken into account as selection strategies: – The title of the publication; publications whose title is not related to the object of the work were not considered. – Exclusion based on the abstract: publications were excluded if the abstract or keywords were not related to the focus of the review. – Exclusion based on a quick review: a quick reading of sections and subsections, figures, tables and references was performed to exclude publications that were not related to the aim of the review.

A Review of Intelligent Tutoring in Secondary Education

35

– Exclusion based on the complete article: the complete reading of the publication was carried out and those that did not match the inclusion and exclusion criteria were left out of consideration. Table 2 shows the selected intelligent tutoring systems and the reference source. Table 1. Search engines and search string Digital Library

Search filters

ACM Digital Library [14] SEDICI [9] IEEE Xplore [7] Springer [5]

Intelligent tutoring systems; year range; mathematics o stem; affective intelligent tutoring systems

Table 2. Selected intelligent tutoring systems Name of ITS

Description

Source

Al-Tutor

Generating Tailored Remedial Questions and Answers Based on Cognitive Diagnostic Assessment

[19]

Aleks

Assessment and Learning in Knowledge Spaces [30, 1]

Auto-Tutor

SKOPE-IT (Shareable Knowledge Objects as Portable Intelligent Tutors): overlaying natural language tutoring on an adaptive learning system for mathematics (2018)

[22, 31]

SKOPE IT

SKOPE-IT (Shareable Knowledge Objects as Portable Intelligent Tutors): overlaying natural language tutoring on an adaptive learning system for mathematics (2018)

[32]

Lexue 100

Evaluating an Intelligent Tutoring System for Personalized Math Teaching

[36]

An Intelligent Math Electronic Tutoring System for Students with Specific Learning Disabilities (SLDs)

An Intelligent Math Electronic Tutoring System [20] for Students with Specific Learning Disabilities (SLDs)

SIMPLIFY ITS

An intelligent tutoring system based on cognitive diagnosis models and spaced learning

[42]

MathSpring

Advances from the Office of Naval Research STEM Grand Challenge: expanding the boundaries of intelligent tutoring systems

[16]

ASSISTments

Advances from the Office of Naval Research STEM Grand Challenge: expanding the boundaries of intelligent tutoring systems

[25]

WAYANG OUTPOST

Advances from the Office of Naval Research STEM Grand Challenge: expanding the boundaries of intelligent tutoring systems

[4]

36

M. C. Pezzini and P. Thomas

3 Analysis of Intelligent Tutoring Systems According to the advancements observed in intelligent tutoring systems [10] in recent years, this work proposes a new study approach based on the evaluation of four aspects: general aspects, aspects related to ITS feedback, methodological-educational aspects, and intelligent tutoring system evaluation items. Each of the proposed criteria is described below. • General aspects: The criteria included in this category are associated with the contextualization of intelligent tutoring systems and a general characterization of said systems. Based on these indicators, the type of article, the source country and university and the target educational level can be determined. – Type of article: This criterion aims to determine the reference format in which it was published. This may be in a conference, in a journal, in a workshop or if it is a chapter in a book, as applicable. – Research country: This criterion aims to investigate in which countries experiences are carried out with the selected ITS. This may then allow for a summary of countries showing the highest concentration of research projects focused on the development of intelligent tutoring systems. The potential values for this criterion are country names. – Research University: This criterion aims to investigate the universities in which the experiences with the selected ITSs are explored, tested and/or developed. This may then allow for a summary of universities showing the highest concentration of research projects focused on the development of ITSs. The potential values for this criterion are university names. – Educational level, the potential values are: • Special Education. It identifies the experiences carried out with people in special education. It details, if applicable, the particular characteristics of the target population. • Pre-school. This label determines whether ITSs are applicable to recipients between the ages of 3 and up to 5 or 6 years. • Primary. This label determines whether ITSs are applicable to recipients between the ages of 6 and up to 12 or 13 years. • Secondary. This label identifies ITSs in which recipients are teenagers and young people with an average age between 13 and 18 years. • Tertiary/University. It identifies ITSs in which recipients are studying at university or at a tertiary/higher education institution, or are researchers for an educational institution. – Domain: This criterion indicates the domain of application of the intelligent tutoring system (Mathematics, Language, etc.). • Aspects related to ITS feedback. The criteria included in this category seek to show the strategies and techniques with which the ITS is planned to be developed, its possible association with other ITS and its feedback with the student.

A Review of Intelligent Tutoring in Secondary Education

37

• Methodological-educational aspects. Since these ITS are oriented towards the teaching and learning process, we seek to know the type of educational process that is being carried out and the goals that are proposed to be achieved with their use. They can be grouped into intelligent tutoring system functions and tools. – ITS functions. • To determine the student’s level of initial diagnosis. The method used to determine the initial diagnosis shall be indicated. • To establish a customized learning path. The methodology implemented to guide the student’s learning process in the ITS shall be indicated. • To integrate a natural language teaching agent to the ITS. It shall indicate whether the ITS has a natural language teaching agent interacting with the student or not. In other words, whether there is a natural language user interface. • To model the students’ behavior to determine their emotional state. – ITS tools: An intelligent tutoring system should be adapted to the student’s needs and preferences in order to achieve better results. It is necessary to have computational models that diagnose student performance and provide the ITS with predictive data in order to change the teaching strategy when necessary, or simply to recommend new exercises and problems. These computational models can be: neural networks, genetic algorithms, theory of knowledge spaces, among others. • Evaluation of intelligent tutoring systems: It allows to determine if the selected intelligent tutoring systems were subjected to an evaluation process. This may consist of tests in laboratories, verification in controlled environments, and/or demonstration in real scenarios; with the possibility of determining the main techniques used and the results achieved. The potential values are: qualitative, quantitative, quasi-experimental.

4 Introduction of the Selected Intelligent Tutoring Systems 4.1 AI-Tutor: Generating Tailored Remedial Questions AI-Tutor [19] is an intelligent tutoring system jointly developed by the National Institute of Computer Science, Sokendai, Tokyo, Japan and the Chinese Academy of Sciences University, Beijing, which not only incorporates the basic functions of general tutoring systems, but also adds three functions to it: cognitive diagnostic assessment, generation of customized corrective questions and automatic problem solving. Cognitive diagnostic assessment acts as an effective way to assess students in a detailed manner. To refine the student’s level of knowledge, Al Tutor proposes a cognitive diagnosis based on the model of Chen [12], who proposed a personalized e-learning system based on Item Response Theory to provide individual learning paths for students. Wongwatkit [8] conducted experiments and showed that those students who used the diagnostic assessment system had significantly better learning achievements than

38

M. C. Pezzini and P. Thomas

those who learned with the conventional system. These results show the advantage of the cognitive diagnostic assessment as an effective way to help students discover their failings and provide active learning. Al-Tutor automatically generates quality corrective questions to cover the students’ knowledge weaknesses, rather than selecting learning materials from a bank of items, which makes it more efficient to learn the knowledge domain in a short time. 4.2 Aleks (Assessment and Learning in Knowledge Spaces) The ITS consists of a Placement Test (PT) and five preparation modules (PM), aligned with the Mathematics contents of secondary school between 7th and 11th grade, as shown in Table 3. The PT probes the student’s previous knowledge of Mathematics and identifies the topics he/she has mastered and those he/she needs to learn. Based on the results of this diagnostic PT, the ITS generates a learning path according to the needs of each student within the PM. The platform automatically records the data of the student-ITS interaction. The reports it generates contain the following information: date, duration, result of each PT (on a scale of 0 - 100 points); percentage of PM topics initially mastered by the student (prorated directly from the result of the initial PT) and percentage of topics mastered at the time of requesting the report (determined from the last PT completed); total study time in the PM. Table 3. Placement levels and recommended ranges [30] PT result

Placement level

Coding level

< 10

Pre-Algebra (7th grade)

1

10–24

Basic Algebra (8th grade)

2

25–39

Intermediate Algebra (9th grade)

3

40–54

Advanced Algebra (10th grade)

4

> 55

Pre-Calculation (11th grade)

5

4.3 Auto-tutor AutoTutor is a teaching agent that has a natural language conversation with students, and simulates the dialogues of human tutors, as well as their teaching strategies [23, 24, 31]. An affection-sensitive AutoTutor was also developed, which responds intelligently to student’s emotions such as confusion, frustration, and boredom [17]. Experiments have been conducted through comparisons with trained human tutors, and the use of AutoTutor and other ITSs using the conversational technique, and no major differences have been found [33,38, 41].

A Review of Intelligent Tutoring in Secondary Education

39

The characteristics of AutoTutor that explain the improvements in learning [21, 26, 40] are: the content of what the agent says and the robustness of the conversational mechanisms. One conversational mechanism used in both AutoTutor and human tutoring is the so-called expectation & misconception-tailored dialogue (EMT dialogue). As students give their responses distributed over multiple conversational turns, their contributions are compared to expectations and misconceptions by matching semantic patterns. 4.4 Skope-It SKOPE-IT (Shareable Knowledge Objects as Portable Intelligent Tutors): overlay of natural language tutoring on an adaptive learning system for Mathematics [32], it stores and delivers web-based services. It is designed to integrate multiple applications, using semantic messaging. SKOPE-IT was used to integrate AutoTutor [32] and ALEKS (Assessment and Learning in Knowledge Spaces), a commercial Mathematics learning system [18]. When building SKOPE-IT the goal is to combine: solved examples, self-explanation [2] and dead-end driven learning [39]. SKOPE-IT integrates dialogues using HTML and coordinates real-time communication between a variety of web services [31]. In SKOPE-IT, each service communicates with another service using semantic messages, which pass through link nodes (e.g., a request using text). The link nodes determine the structure of the network, communicating with each other through standardized protocols (HTML5 postMessage). 4.5 Lexue 100 Lexue is defined as an intelligent system for teaching and learning Mathematics. Lexue 100 consists of a teaching method based on 3I, Individualized Adaptation, Incremental Mastery, and Interactive discovery. It employs Big Data techniques to guide students through customized pathways, it adapts lessons to the students’ knowledge, and it identifies their learning needs. 4.6 Design Prototype of an Intelligent Math E-Tutoring System for Students with Specific Learning Disabilities Students with specific learning disabilities (SLDs) often experience negative emotions when solving Math problems, and have difficulty in managing them. This is one of the reasons why Mathematics e-learning tools are not effective (e.g., Khan Academy (2019), STMath (2019) [20]. The e-tutoring prototype for students with specific learning disabilities combines eye-tracking data, touchscreen inputs, and response time to model student behavior. Many students with SLDs exhibit specific negative emotional behaviors. The system detects three types of negative emotional behaviors: – Distraction: if the eyes do not look at the screen for more than 1 min.

40

M. C. Pezzini and P. Thomas

– Situation of tension, confusion or irritability, if the screen is pressed more than three times in 1 s. – Hesitation, if the screen has not been touched for more than 2 min and more than 70% of the time has been spent looking at user interface buttons. After detecting that the student is exhibiting one of the three behaviors mentioned above, it rectifies it through dialogue. Following the guidelines for tutoring students with SLDs [37], two methods were added to the design to help maintain or restore good emotion: praising correct problemsolving behavior or providing brain breaks. Besides, in order to collaborate with those students who do not know how to solve the problem, two methods are presented: giving hints or switching to a simpler problem. 4.7 Simplify ITS Simplify ITS [42] is part of a larger system called SIMPLIFY (Smart Tutor System based on Cognitive Diagnostic and Spatial Learning Models), which consists of several modules where the most important ones are student tracking, student reports and activity recommendations. Simplify ITS is the module based on activity recommendations, which helps teachers to select the most appropriate activity for each student based on the his/her previous interactions with the learning platform. The student’s skill profile is determined automatically by using Cognitive Diagnosis Models (CDMs). If there is no information about the student in the system, the system will offer activities randomly, until a minimum sample size is achieved. Once there is enough data about the student’s learning experience in the course, the system recommends activities if the student does not yet have all the skills in the domain. If it has been a long time since the student has mastered an activity, the system sends reinforcement activities about already-learned concepts, thus avoiding the loss of mastered skills. Simplify ITS prioritizes reinforcement over learning new skills. One of the objectives of Simplify ITS is to support teachers by providing information that helps them adapt the learning experience to their students. It is the teacher who accepts or rejects the activity suggested by the ITS for a particular student. 4.8 MathSpring MathSpring is a Math practice environment within an adaptive tutor, which provides math instruction, and merges hints, help, and links to external educational videos. MathSpring integrates Wayang Outpost and ASSISTments. 4.9 Wayang Outpost It is an instructional system, which contains the empirical model of the student, his/her behaviors and interventions; it focuses on the affective, cognitive and meta-cognitive

A Review of Intelligent Tutoring in Secondary Education

41

nature of the student. That is to say, it works on three areas: cognition, engagement and affection [4]. The tutor supports strategic and problem-solving skills based on the cognitive learning theory [13], this occurring when the teacher teaches skills to a learner. The expert is Wayang Outpost, which collaborates with the student in solving mathematical problems. Hints are an important component of the tutor, to help students learn strategies for approaching mathematical problems; using the learning theory proposed by Mayer [27]. An important element of cognitive learning is to challenge students by providing them with problems that are slightly more difficult than those they could solve on their own. Vygotsky [43] referred to this as the zone of proximal development, and suggested that encouraging development within this zone leads to faster learning [29]. The software provides an adaptive selection of problems with greater or lesser difficulty depending on the student’s recent success and effort [3,15]. Students go through three cyclical phases: anticipation, performance, and selfreflection. The anticipation phase refers to the motivational/affective processes that precede efforts to learn, and that influence the students’ predisposition to initiate or continue the learning process. Performance involves processes that occur during study and/or problem solving, and that impact concentration and outcomes (including monitoring during the execution of problem solving). The self-reflection phase involves processes that follow problem solving or study efforts, with a focus on the student’s reactions to the experience (including selfassessment and self-judgment). These self-reflections, in turn, influence the anticipation with respect to subsequent learning efforts, completing the self-regulation cycle. The system also incorporates the use of Math Facts Retrieval (MFR) training software. Returning to already-mastered topics is an efficient strategy that facilitates learning mastery. 4.10 ASSISTments ASSISTments is a formative assessment system rather than a means to assess students. ASSISTment consists of a main question (also known as the original question) and a tutoring session to accomplish the desired learning. It can be included in the category of cognitive tutors; it does not monitor student learning; it monitors student progress in problem-solving.

5 General Characteristics of the Selected Intelligent Tutoring Systems Table 4 shows a summary of the general characteristics of the intelligent tutoring systems under study.

42

M. C. Pezzini and P. Thomas Table 4. General characteristics of ITS.

A Review of Intelligent Tutoring in Secondary Education

43

6 Conclusions and Future Works The analysis of the selected works reveals the trends towards which ITS developments are moving forward. These trends involve: • Incorporation of conversational computer agents, aiding electronic tutoring, through dialogue. • Cognitive diagnostics to determine the student’s level in the subject under study, generating a customized learning path according to the student’s needs. • Integration of intelligent tutoring systems with complementary strengths to enhance learning and enable the complementarity of learning resources. This is the case of SKOPE-IT and MathSpring. SKOPE-IT integrated AutoTutor and ALEKS. In terms of Bloom’s taxonomy, ALEKS (outer loop) focuses primarily on applying Math skills, while AutoTutor (inner loop) questions help students understand, analyze, and evaluate mathematical concepts. Solved examples, self-explanation and dead-end driven learning were combined when building SKOPE-IT. MathSpring integrates Wayang Outpost and ASSISTments. Wayang Outpost [6] is an online tutoring system that focuses on Math skills for secondary school students, and ASSISTments is a platform used by teachers to assign digital homework and classroom activities [26]. That is to say, Wayang Outpost is located in the outer loop, selecting appropriate problems to be solved by a student; while ASSISTments founds itself in the inner loop; the tutor provides support to the student when solving a problem, including step-by-step guidance, reflection and solution review at the end. The use of hybrid systems reduces the effort in ITS development. From the research conducted, it is clear that ITSs place the student at the core of the educational process by allowing him/her to regulate his/her own learning. Self-regulated study habits are then transformed into a determining factor for a successful educational process. It has also been observed that the use of an ITS as a complementary tool reduces the differences among students from the same Math course and enlightens teachers about the degree of learning of every student, making it possible to keep track of the difficulties and knowledge attained by each student. The evaluation of intelligent tutoring systems shows that tutoring systems outperform non-expert tutors and may even match up to human expert tutors in some topics. The results of this work serve as a starting point to continue with the challenge of improving students’ learning in the area of Mathematics, in which deficiencies have been further aggravated as a result of the COVID-19 pandemic. As part of our future work, the aim is to implement the use of at least one of the ITSs under study in students enrolled in 1st grade of secondary education and analyze its impact on learning.

44

M. C. Pezzini and P. Thomas

References 1. Aleks.https://www.aleks.com/. Último acceso: 5/02/2023 2. Aleven, V., McLaren, B., Roll, I., Koedinger, K.: Toward Tutoring Help Seeking. In: Lester, J.C., Vicari, R.M., Paraguaçu, F. (eds.) ITS 2004. LNCS, vol. 3220, pp. 227–239. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30139-4_22 3. Arroyo, I., Cooper, D., Burleson, W., Woolf, B.P.: Bayesian networks and linear regression models of students’ goals, moods, and emotions. In: Romero, C., Ventura, S., Pechenizkiy, M., Baker, R. (eds.) Handbook of Educational Data Mining, pp. 323–338. CRC Press, Boca Raton (2010) 4. Arroyo, I., Woolf, B.P., Burelson, W., et al.: A multimedia adaptive tutoring system for mathematics that addresses cognition, metacognition and affect. Int. J. Artif. Intell. Educ. 24(387–426) (2014). https://doi.org/10.1007/s40593-014-0023-y. Últimoacceso 7 Feb 2023 5. Springer link. https://link.springer.com/.Último acceso: febrero 2023 6. Beal, C.R., Walles, R., Arroyo, I., Woolf, B.P.: On-line tutoring for math achievement testing: a controlled evaluation. J. Interact. Online Learn. 6(1), 43–55 (2007) 7. IEEE Xplore. https://www.ieee.org/.Último acceso: febrero 2023 8. Wongwatkit, C., Srisawasdi, N., Hwang, G.-J., Panjaburee, P.: Influence of an integrated learning diagnosis and formative assessment-based personalized web learning approach on students learning performances and perceptions. Interact. Learn. Environ. 25(7), 889–903 (2017) 9. PREBI - SEDICI (UNLP).http://sedici.unlp.edu.ar/.Último aceso: febrero 2023 10. Casanovas, I.: La didáctica en el diseño de simuladores digitales para la formación universitaria en la toma de decisiones. Tesis de Magíster en Docencia Universitaria, UTN-FRBA (2005) 11. Pezzini C, Thomas P, Tutores inteligentes en la enseñanza: Una revision y análisis en la educación secundaria. XXVIII Congreso Argentino de Ciencias de la Computación - CACIC 2022. Editorial de la Universidad Nacional de La Rioja (EUDELAR). ISBN: 978–987–1364– 31–2 12. Chen, C.-M., Lee, H.-M., Chen, Y.-H.: Personalized e-learning system using item response theory. Comput. Educ. 44(3), 237–255 (2005) 13. Collins, A., Brown, J.S., Newman, S.E.: Cognitive apprenticeship: Teaching the crafts of reading, writing, and mathematics. In: Resnick, L.B. (ed.) Knowing, Learning, and Instruction: essays in honor of robert glaser, pp. 453–494. Lawrence Erlbaum Associates, Hillsdale (1989) 14. ACM, Association for computing Machinery. https://www.acm.org/. Último acceso: febrero 2023 15. Corbett, A.T., Anderson, J.R.: Knowledge tracing: Modeling the acquisition of procedural knowledge. User Model. User Adapted Interact. 4, 253–278 (1995) 16. Craig, S.D., Graesser, A.C., Perez, R.S.: Advances from the Office of Naval Research STEM Grand Challenge: expanding the boundaries of intelligent tutoring systems. IJ STEM Ed 5, 11 (2018). https://doi.org/10.1186/s40594-018-0111-x. Últimoacceso 5 Feb 2023 17. D’Mello, S.K., Graesser, A.C.: AutoTutor and affective AutoTutor: learning by talking with cognitively and emotionally intelligent computers that talk back. ACM Trans. Interact. Intel. Syst. 2, 1–39 (2012) 18. Falmagne, J. C., Albert, D., Doble, C., Eppstein, D., & Hu, X. (Eds.). (2013). Knowledge spaces: Applications in education. Springer Science & Business Media 19. Gan, W., Sun, Y., Ye, S., Fan, Y., Sun, Y.: AI-Tutor: Generating Tailored Remedial Questions and Answers Based on Cognitive Diagnostic Assessment. In: 2019 6th International Conference on Behavioral, Economic and Socio-Cultural Computing (BESC), Beijing, China, 2019, pp. 1–6 https://doi.org/10.1109/BESC48373.2019.8963236. Último Acceso: 5/02/2023

A Review of Intelligent Tutoring in Secondary Education

45

20. Wen, Z.A., Silverstein, E., Zhao, Y., Amog, A.L., Garnett, K., Azenkot, S.: Teacher Views of Math E-learning Tools for Students with Specific Learning Disabilities. In The 22nd International ACM SIGACCESS Conference on Computers and Accessibility, Association for computing Machinery (ACM), New York, NY, USA, 1–13 (2020) 21. Graesser, A.C., Wiemer-Hastings, K., Wiemer-Hastings, P., Kreuz, R.: TRG AutoTutor: a simulation of a human tutor.J. Cognit. Syst. Res. 1, 35–51 (1999) 22. Graesser, A.C., Chipman, P., Haynes, B.C., Olney, A.: AutoTutor: an intelligent tutoring system with mixed-initiative dialogue. IEEE Trans. Educ. 48(4), 612–618 (2005) 23. Graesser, A.C., Lu, S., Jackson, G.T., Mitchell, H., Ventura, M., Olney, A., et al.: AutoTutor: a tutor with dialogue in natural language. Behav. Res. Meth. Instruments Comput. 36, 180–193 (2004) 24. Graesser, A.C., Jeon, M., Dufty, D.: Agent technologies designed to facilitate interactive knowledge construction. Discourse Process. 45, 298–322 (2008) 25. Heffernan, N.T., Heffernan, C.L.: The ASSISTments ecosystem: building a platform that brings scientists and teachers together for minimally invasive research on human learning and teaching. Int. J. Artif. Intell. Educ. 24(4), 470–497 (2014). https://doi.org/10.1007/s40 593-014-0024-x 26. Samantha, J., Reyes, J.-R., Víctor, C., Alan, R.N.: An affective learning ontology for educational systems (2016) 27. Mayer, R.E.: Multimedia Learning. Cambridge University Press, New York (2001) 28. Ministerio de Educación de la República Argentina. https://www.argentina.gob.ar/educacion/ evaluacion-e-informacion-educativa. Último acceso: 8/02/2023 29. Murray, T., Arroyo, I.: Towards measuring and maintaining the zone of proximal development in adaptive instructional systems. In: Proceedings of the 6th International Conference on Intelligent Tutoring Systems. 749–758 (2002) 30. N. L. Miller, J. E. Sanchez-Galan and B. E. FernándezUse of an Intelligent Tutoring System for Mathematics by Students Who Aspire to Enter the Technological University of Panama. In: 7th International Engineering. Sciences and Technology Conference (IESTEC) 2019, 255–260 (2019). https://doi.org/10.1109/IESTEC46403.2019.00-66 31. Nye, B.D., Graesser, A.C., Hu, X.: AutoTutor and family: a review of 17 years of science and math tutoring. Int. J. Artif. Intell. Educ. 24(4), 427–469 (2014) 32. Nye, B., Pavlik, P., Windsor, A., et al.: SKOPE-IT (Shareable Knowledge Objects as Portable Intelligent Tutors): overlaying natural language tutoring on an adaptive learning system for mathematics. IJ STEM Ed 5, 12 (2018). https://doi.org/10.1186/s40594-018-0109-4. Últimoacceso 07 Feb 2023 33. Olney, A.M., et al.: Guru: A Computer Tutor That Models Expert Human Tutors. In: Cerri, S.A., Clancey, W.J., Papadourakis, G., Panourgia, K. (eds.) ITS 2012. LNCS, vol. 7315, pp. 256–261. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30950-2_32 34. Perkins, D. (1995) La escuela inteligente. Gedisa 35. Pozo, J. I. (1998). Aprendices y maestros. Alianza 36. Zhang, B., Jia, J.: Evaluating an intelligent tutoring system for personalized math teaching. Int. Symp. Edu. Technol. (ISET) 2017, 126–130 (2017) 37. Rosen. P.: Tutoring Kids With Dyscalculia | Tutors for Math Issues. https://www.unders tood.org/en/articles/tutoring-kids-with-dyscalculia-what-you-need-to-know. Último Acceso: 8/02/2023 38. Understood -For learning and thinking differences. Brain Breaks for Kids 39. VanLehn, K., Siler, S., Murray, C., Yamauchi, T., Baggett, W.B.: Why do only some events cause learning during human tutoring? Cogn. Instr. 21(3), 209–249 (2003) 40. VanLehn, K., Graesser, A.C., Jackson, G.T., Jordan, P., Olney, A., Rose, C.P.: When are tutorial dialogues more effective than reading? Cogn. Sci. 31, 3–62 (2007)

46

M. C. Pezzini and P. Thomas

41. VanLehn, K.: The relative effectiveness of human tutoring, intelligent tutoring systems and other tutoring systems. Educ. Psychol. 46, 197–221 (2011) 42. Villanueva, N.M., Costas, A.E., Hermida, D.F., Rodríguez, A.C.: SIMPLIFY ITS: An intelligent tutoring system based on cognitive diagnosis models and spaced learning. IEEE Global Eng. Educ. Conf. (EDUCON) 2018, 1703–1712 (2018). https://doi.org/10.1109/EDUCON. 2018.8363440 43. Vygotsky, L.: Mind in society: The development of higher psychological processes: Harvard University Press (1978)

Analyzing Attendance Indicators in Digital Technologies-Mediated Courses in Tertiary Technician Education Omar Spandre1(B) , Paula Dieser1 , and Cecilia Sanz2,3 1 Master´S Degree in Application of Computer Technology in Education.

School of Computer Sciences, Argentine UNLP, Buenos Aires, Argentina [email protected] 2 Institute of Research in Computer Sciences LIDI – CIC. School of Computer Sciences, Argentine UNLP, Buenos Aires, Argentina [email protected] 3 Scientific Research Commission From the Province of Buenos Aires, Buenos Aires, Argentina

Summary. The Community of Inquiry (CoI) model has been used as a theoretical framework to analyze online learning, recognizing the importance of having three types of presence: Cognitive, Teaching and Social. In particular, this model gained visibility after the interruption of face-to-face classes due to the COVID-19 pandemic. In this context, higher education institutions adapted their courses to a virtual format to serve students during this period of time. This work addresses a case study in which indicators of the three presences in tertiary technician education courses are analyzed during the years 2020 and 2021 at the Higher Institute of Teacher and Technical Training No. 93 (ISFDyT 93) of the city of San Vicente. To this end, a survey was implemented, which was answered by 119 students. The results obtain indicate that both the Educational and Cognitive presences are highly valued, the Social presence a bit less, as well as the indicators that refer to the dialog between the students. Keywords: Community of Inquiry · higher education · education mediated by digital technology · emergency remote education · types of presences

1 Introduction In this article, the interactions between the members of an educational community are analyzed. It focuses on a population of tertiary-level students that carried out their pedagogical activities between 2020 and 2021, during the period locally referred to as ASPO (preventive and mandatory social isolation). Additionally, it is an extended article, with an in-depth presentation of the results and with an enriched discussion of the previous article published by the authors at the CACIC 2022 congress held in the city of La Rioja in October of that year. The work focuses on analyzing dialog components, mediated by virtual teaching and learning environments. In a period of compulsory online education due to the pandemic, these components, and their relationships, are affected by the use © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 47–58, 2023. https://doi.org/10.1007/978-3-031-34147-2_4

48

O. Spandre et al.

of current digital technologies, and, therefore, by the gap between those who have the resources to access them and those who have had to learn how to use them quickly and in an improvised manner. Due to the ASPO, a large number of teachers and students carried out their activities in virtual classrooms, interacting with each other in different environments, producing knowledge through various teaching strategies, and adapting their plans to the new context. At the same time, synchronous and asynchronous dialog alternatives have been developed, which can be studied from various dimensions. According to [1], these dimensions or presences and the interrelation between them are necessary for online learning. This article analyzes the relationships between the presences and how students perceive them, based on the dimensions and indicators of the CoI Model [1]. It should be noted that, regardless of the pandemic, this is a relevant and current topic, since it relates to educational processes mediated by digital technologies. Thus, the results found here will be a contribution to the design of future courses with hybrid modalities. From now on, this article is organized as follows: Sect. 2 includes the theoretical framework and the survey following the CoI Model. Section 3 summarizes some background information, Sect. 4 details the methodological aspects used to review the different types of presences under the CoI Model that are applied to the case study addressed here, and Sect. 5 presents an analysis and discussion of the results obtained. Finally, in Sect. 6, conclusions and future works are presented.

2 Theoretical Framework 2.1 The Community of Inquiry Model The CoI (Community of Inquiry) model is a theoretical framework developed by Garrison and Anderson [1]. According to this model, for online learning to be possible, the interrelation of three dimensions or presences is necessary: Social Presence, Cognitive Presence and Teaching Presence [2]. These three types of presences are described in greater detail below: Cognitive Presence. It indicates to what extent students are able to construct meaning through continuous reflection in a community of critical investigation/inquiry [1, 3], through sustained communication [4]. The proposed model identifies four non-sequential phases in Cognitive Presence: activation, exploration, integration and resolution [1, 3]. Social Presence. It is the capacity of participants to project themselves socially and emotionally as individuals, to promote direct communication between individuals, and to make explicit personal representation. Social Presence marks a qualitative difference between a collaborative research/action community and the process of merely downloading information [3]. Teaching Presence. It is defined in the CoI model as the act of designing, facilitating and guiding the teaching and learning processes to obtain the expected results according to students needs and abilities [5].

Analyzing Attendance Indicators in Digital Technologies

49

2.2 The Community of Inquiry Survey The CoI framework has been adopted as a guide for research and practice in online learning. However, in 2006, two issues were challenging CoI research in particular. The first was the lack of common measures in studies about individual presences, which made making generalizations difficult. The second issue was that few studies before that date explored all three presences and, more importantly, the interactions between them, and these are fundamental to the model itself [6]. In 2006, several leading researchers in relation to the CoI Model began working on the creation of a survey instrument to measure the three presences and agreed that a self-report survey would be appropriate to measure presences, since they are based on student perceptions, using a 5-point Likert scale (1: strongly disagree; 5: strongly agree). The points in common between the existing elements were reconciled to capture each one of the presences [6] and the result was a 34-item instrument [7], which is presented here later through a link, since this is the survey that was used for the case study in this paper. Items 1–13 refer to the Teaching Presence, items 14–22 correspond to the Social Presence, and items 23–34 are related to the Cognitive Presence. In order to process the results, a scale is used in this work to assess each answer, where 1 = Strongly disagree; 2 = Disagree; 3 = Neutral; 4 = Agree; 5 = Strongly agree; then the average is calculated for each of the statements.

3 Background Analysis In a previous work carried out by the authors [8], the strategies used during the lockdown period in several countries of the region are analyzed in light of the theoretical framework of the CoI Model, to which end a systematic review of 24 published articles between 2020 and 2021 was carried out. These works address the problem in Higher Education, in communities that sorted to virtual education during that period due to the suspension of face-to-face activities. In the preceding article, the implications of reorganizing the teaching and learning processes are analyzed; the results show that a high percentage of research focuses on the teaching Presence, particularly for the educational and organizational design, with much less emphasis on the Cognitive Presence. Additionally, there is little production on the Social Presence dimension and the analysis of indicators that reinforce learning [8]. The results reveal a scarce production on the Social Presence dimension, as well as on the analysis that focuses on affection, group cohesion and open communication, which are indicators that reinforce learning and maintain a positive social relationship dynamic. This aspect is only dealt with in some articles from the perspective of cohesion among students, in particular in one work it is addressed with first-year students in Higher Education institutions, and as a dropout variable, taking into account the high alphabetization level of students who have completed the secondary level [8]. The aforementioned aspects motivated this new work, in which a survey is carried out based on the proposal of the CoI model. The survey is applied to a case study with students from a Higher Education educational community who took only online courses in 2020 and 2021. Thus, the objective of this work is to analyze the relationships between

50

O. Spandre et al.

the presences of the CoI model, using the survey instrument indicated in Subsect. 2.2, in light of this theoretical framework. In this sense, for this background analysis, the research articles selected are those whose titles indicate the specific study of Social Presence within the framework of the Community of Inquiry model. As a first observation, it can be said that most of the referenced authors agree in defining the close relationship that exists between Social Presence, Cognitive Presence and Teaching Presence in the Community of Inquiry model [9–13]. In this regard, the authors in [10] postulate a series of statements that are worth highlighting: the articulation between the three presences is evidenced in the mediating role that the Social Presence acquires in relation to the other two presences, since the Social Presence is a condition to achieve critical thinking (Cognitive Presence) and it is, in turn, the responsibility of the teacher based on the activities proposed and carried out. In the online educational practice, the Social Presence is revealed through the interaction and collaboration that are originates, developed and boosted by the affective communication, open communication and cohesion of the members that make up the community [9]. The findings of some of these studies [11, 12] seem to indicate that Social Presence is relevant as a predictor of successful learning processes, given its close relationship with the Cognitive Presence in certain practices in virtual environments, such as forums, where friendly and relaxed environments that contribute to group cohesion and collaborative work are more easily formed [9].

4 Methodological Aspects for the Case Study about Presence Analysis in the Community of Inquiry Model The results of the previous article [8] and the aforementioned background motivated this work and the need to delve into the case study presented here – the assessment of students in relation to the presence of the CoI Model in educational processes in which they have participated and that were mediated by digital technologies. In particular, new research questions are raised: Q1. What are the perceptions of the students participating in the survey in relation to the CoI model presences? Q2. Are there any differences between the presences based on these perceptions? Q3. Are there any differences in these presences based on major and student age range? To find answers to these research questions, the aforementioned CoI model survey is used, which is presented in the following link: https://drive.google.com/file/d/1MZlcT BJpEnVEOUEail6gBYSbKtDSFxEB/view.

Analyzing Attendance Indicators in Digital Technologies

51

In this case study, the community is made up of 1st, 2nd and 3rd year students of the Instituto Superior de Formación Técnica No. 93 (ISFT 93) of the city of San Vicente who took higher technical courses during the years 2020 and 2021, while the ASPO mandate required all education activities to be carried out virtually. The higher technical courses involved are: Accounting Administration; Accounting Administration with a focus on Marketing; Public Administration; Application Analysis, Development and Programming; Nursing; and Tour Guide. The survey presented in Subsect. 2.2 on the aforementioned group was distributed. In addition, variables were included for further analysis, such as participant gender and age. To fill out the survey, a Google form was used, which was initially sent to key students and professors in each course who, in turn, distributed the forms through their corresponding relevant WhatsApp groups. As a result of this process, 50 responses were received. Then, additional dissemination was achieved through an institutional email to all the students of the mentioned courses, and 70 more responses were received. A filter was applied to remove duplicates, leaving a total of 119 unique responses, which are analyzed in this paper. Analyzing the sample (see Fig. 1), the responses received were distributed as follows: 5 students from Accounting Administration, 11 from Accounting Administration with a focus on Marketing, 7 from Public Administration, 26 from Application Analysis, Development and Programming, 60 from Nursing, and 10 from Tour Guide.

Fig. 1. Number of students by major; sample total = 119 surveys

In relation to the profile of the students who answered the survey, the majority were female between 26–41 years old (see Fig. 2).

52

O. Spandre et al.

Fig. 2. Upper: Number of students by age range; Bottom: Participating students by gender.

As regards teacher-student communications, students had several options available, and mostly chose the institution’s Virtual Teaching and Learning Environment (VTLE), WhatsApp, and Google Meet (see Fig. 3).

Fig. 3. Digital tools used for communication according to participant survey responses

5 Results Obtained In this section, the results obtained in relation to each research question are presented. As regards research question Q1, What are the perceptions of the students participating in the survey in relation to the CoI model presences?, the Teaching Presence (items 1–13) is the one with the highest level of satisfaction, since its mean assessment is 4.10.

Analyzing Attendance Indicators in Digital Technologies

53

There are responses that confirm a disagreement in relation to the statements that refer to Social Presence (items 14–22), since the mean assessment is 3.70, where items 16, 17 and 18 are below that value. Student perception in the case survey items involving the Cognitive Presence (23–34), shows a higher level of agreement, since the mean assessment is 4 (Agree). Mean student assessments for each of the 34 survey items are presented in Fig. 4.

Valoración de cada item en la encuesta de CoI 5.00 4.00 3.00 2.00 1.00 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Fig. 4. Mean assessments for each of the items based on the answers given by participants through the CoI survey.

As regards question Q2, Are there any differences between the presences based on these perceptions?, it can be seen that the highest assessment corresponds to the Teaching Presence, and mainly to those items that focus on course design and organization (items 1–4); the mean in this case is 4.24. Items 16–18, pertaining to Social Presence, are the least valued, with a mean of 3.55. These include the following statements: “Web-based or online communication is an excellent medium for social interaction.”, “I felt comfortable chatting online,” and “I felt comfortable participating in course discussions.” Finally, item 23 of Cognitive Presence (“The issues discussed increased my interest in course topics.”) is the least valued within this presence, with a mean of 3.82. To address question Q3, Are there any differences in these presences based on major and student age range?, a filter was applied to separate Nursing students, since they made up 50% of the sample being analyzed. Within this major, there is a higher level of agreement regarding all three presences, and these students recorded the highest mean values in all survey item, as shown in Fig. 5.

54

O. Spandre et al.

5

Valoración media de cada ítem para la carrera de Enfermería (60 estudiantes)

4 3 2 1 0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Fig. 5. Mean assessments for each of the items based on the answers given by participants through the CoI survey (Nursing students).

As regards the other majors, it can be seen that students from Administration-related courses are the ones with the lowest evaluation, as shown in Fig. 6.

Valoraciones medias para cada Tecnicatura 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0

Fig. 6. Mean assessments for each of the items based on the answers given by participants through the CoI survey for each of the technical majors.

As regards student ages, they were split into two groups: 18–33 and +33 years old. The results show a lower average evaluation for the three presences in the youngest group compared to the rest of the sample. The values that reflect disagreement among the younger population, which intensify in Social Presence and items 16–18, refer directly to web-mediated communication and to the participation of students in group conversations, as shown in Fig. 7.

Analyzing Attendance Indicators in Digital Technologies

55

5.00 4.00 3.00 2.00 1.00 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Fig. 7. Mean assessments for each of the items based on the answers given by participants through the CoI survey; 18–33 years old.

In summary, as shown in Fig. 8, the mean assessment among Nursing students is higher for all three presences, compared to the mean assessment of the entire group. Another aspect to highlight is that the mean assessment of the 18–33 year-olds is lower for all three presences compared to the entire group. The mean assessment for Social Presence is lower in all cases, compared to the other two presences.

Teaching Presence

Social Presence

Cognitive Presence

Total

Mean assessment for the entire sample (119)

Mean assessment 4.10

Mean assessment 3.70

Mean assessment 3.98

Mean assessment 3.95

Mean assessment, Nursing major (60)

Mean assessment 4.30

Mean assessment 3.71

Mean assessment 4.17

Mean assessment 4.10

Mean assessment, 18-33 years old (56)

Mean assessment 4.09

Mean assessment 3.55

Mean assessment 3.90

Mean assessment 3.88

Fig. 8. Mean assessments for each presence considering the entire group, only Nursing students, and only students within the 18–33 year-old range.

56

O. Spandre et al.

5.1 Discussion In line with the works cited throughout this article, the three presences of the CoI model are closely related to each other [2, 6, 8–13]. As found in this work, the tools and teaching strategies implemented by teachers during the pandemic have been mostly well received. Additionally, as evidenced by the results of this work, students tend to agree with the decisions made by their teachers regarding course organization, management and direct instruction. All of these aspects show a concern to solve the problem of virtuality in a context of a sanitary emergency, and the implementation of new synchronous and asynchronous communication channels for online proposals. However, it can be observed that students perceive difficulties in participating in discussions, in interacting with their classmates, and in the use of digital or web-based tools. This is in agreement with the results obtained in a previous work [8], in which the scarce production on the Social Presence dimension is identified, especially with focus on affection, group cohesion and open communication [8]. Then, the Social Presence was found to be the least valued of the presences by the students in their perception of the experiences lived during the ASPO period. As a consequence, it could be thought that students have not been able to have a fully positive interaction with their peers and teachers, or that this has been not enough, with insufficient opportunities for dialog. As a hypothesis, it is possible that teachers have used face-to-face class formats in virtual reality, with greater emphasis on study materials and having tools, but perhaps less attention on promoting interaction. The lack of connectivity, the time allocated to virtual classes, and insufficient preparation in the management of digital tools may be the variables that affected the teaching and learning processes so that the dimension of Social Presence is less valued in the survey used in this work. For this reason, the need to implement strategies that strengthen the indicators that maintain a dynamic of positive social relations is reinforced, as stated in the previously mentioned works [11, 12]. The average assessment of the indicators that refer to the Teaching Presence accounts for the work that was carried out in the first months of the pandemic, and relates to the appropriation of communication tools and the organization of the courses, but, even so, students have not been able to actively participate in classes. The youngest students, according to their survey assessments, are the most dissatisfied with respect to the items that refer directly to web-mediated communication and the participation of students in group conversations. Even though it could be thought that this age group (18–33 years old) is the one with the best technological mastery, perhaps they have not been able to communicate correctly among peers or with their teacher. One hypothesis could be linked to the use of other types of communication tools in their daily lives within this age group, tools that have not been part of the ecosystem proposed by teachers and the institution. This could also be due to the lack of teacher training in the proposal of more activities related to promoting dialog among peers and with teachers. In a post-pandemic world, it forces us to rethink the strategies used in courses mediated by technology, and to look for those that focus on components where students can interact with each other, based on the least valued items from the entire sample: 16-Webbased or online communication is an excellent medium for social interaction; 17-I felt

Analyzing Attendance Indicators in Digital Technologies

57

comfortable chatting online; 18-I felt comfortable participating in course discussions; 19-I felt comfortable interacting with other course participants.

6 Conclusions and Future Work In this paper, a case study was presented in which the three types of presences are analyzed: Social, Cognitive and Teaching, which are proposed as part of the Community of Inquiry model. These presences are considered essential for the development of effective educational proposals mediated by digital technologies. Based on the results obtained, it can be observed that the dialog component linked to the Social Presence should be strengthened when designing the courses. At the same time, there is a positive perception about teacher efforts to design and address educational proposals during the ASPO period. Some results will also shed light on the work in some of the courses of studies included in the sample, since some differences have been found in this sense, as well as in relation to age, which opens the door to drill deeper into these variables. The conclusions of this article will be considered in the process of advancing a thesis developed within the framework of the Master in Information Technologies Applied to Education: of the School of Computer Science of the UNLP. Additionally, progress will be made in the design of educational proposals that take into account the three dimensions, given the incidence that these have on the educational process. This work is an extended version of the article presented at CACIC 2022 [14], with an improvement and greater level of detail of the results obtained, in addition to a richer discussion in relation to future work.

References 1. Garrison, D.R., Anderson, T.: E–Learning in the 21st Century: A Framework for Research and Practice. Routledge Falmer, London (2003) 2. Garrison, R., Cleveland-Innes, M., Fung, T.S.: Exploring causal relationships among teaching, cognitive and social presence: student perceptions of the community of inquiry framework. Internet High. Educ. 13(1–2), 31–36 (2010). https://doi.org/10.1016/j.iheduc.2009.10.002 3. Garrison, R., Anderson, T., Archer, W.: Critical inquiry in a text based environment: computer conferencing in higher education. Internet High. Educ. 11(2), 1–14 (2000). https://doi.org/ 10.1016/S1096-7516(00)00016-6 4. Gunawardena, C.N., Lowe, C.E., Anderson, T.: Analysis of a global online debate and the development of an interaction analysis model for examining social construction of knowledge in computer conferencing. J. Ed. Comp. Res. 17(4), 397–431 (1997) 5. Gutiérrez-Santiuste, E., Rodríguez-Sabiote, C., Gallego-Arrufat, M-J.: Cognitive presence through social and teaching presence in communities of inquiry: a correlational–predictive study. Australas. J. Educ. Technol. 31(3), 349–362 (2015) 6. Arbaugh, B., et al.: Community of inquiry framework: validation and instrument development. Int. Rev. Res. Open Distrib. Learn. 9(2), 1492–3831 (2008). https://doi.org/10.19173/irrodl. v9i2.573 7. Richardson, J.C., et al.: Uso del marco de la comunidad de investigación para informar un diseño instruccional eficaz. En: Moller L., Huett J. (eds) La próxima generación de educación a distancia. Springer, Boston, MA (2012). https://doi.org/10.1007/978-1-4614-1785-9_7

58

O. Spandre et al.

8. Spandre, O., Dieser, P., Sanz, C.: Revisión Sistemática de Metodologías Educativas Implementadas Durante la Pandemia del COVID-19 en la Educación Superior en Iberoamérica. En Congreso Argentino de Informática, pp. 49–63. Springer, Cham (2022) 9. Ferreyra, E.G., Strieder, S., Valenti, N.B.: La presencia social en la educación en línea según el Modelo Comunidad de Indagación. Abordajes. Revista de Ciencias Sociales y Humanas. vol. 6, núm. 12 (2022) 10. Gutiérrez-Santiuste, E., Gallego-Arrufat, M.J.: Presencia social en un ambiente colaborativo virtual de aprendizaje: análisis de una comunidad orientada a la indagación. Revista mexicana de investigación educativa. vol. 22, núm 75, 1169–1186 (2017) Recuperado http://www.scielo. org.mx/scielo.php?script=sci_arttext&pid=S1405-66662017000401169&lng=es&tlng=es 11. Gutiérrez-Santiuste, E., Rodríguez-Sabiote, C. Gallego-Arrufat, M. J.: Cognitive presence through social and teaching presence in communities of inquiry: a correlational-predictive study. Australas. J. Educ. Technol. 31(3), 349–362 (2015). Disponible en: http://ajet.org.au/ index.php/AJET/issue/view/112 12. Costley, J., Lange, C.: The Relationship between Social Presence and Critical Thinking: Results from Learner Discourse in an Asynchronous Learning Environment. J. Inf. Technol. Educ. Res. 15, 89–108 (2016). https://doi.org/10.28945/3418 13. Yang, J.C., Quadir, B., Chen, N., Miao, Q.: Effects of online presence on learning performance in a blog-based online course. Int. High. Educ. 30, 11–20 (2016). https://doi.org/10.1016/j. iheduc.2016.04.002 14. Spandre, O., Dieser, M.P., Sanz, C.V.: Análisis de indicadores de presencias en cursos mediados por tecnología digital en tecnicaturas de Educación Superior. In: XXVIII Congreso Argentino de Ciencias de la Computación (CACIC) (La Rioja, 3 al 6 de octubre de 2022) (2023)

Graphic Computation, Images and Visualization

COVID-19 Signs Detection in Chest Radiographs Using Convolutional Neural Networks Guido Sebastián Armoa(B) , Nuria Isabel Vega Lencina, and Karina Beatriz Eckert Universidad Gastón Dachary, Posadas, Misiones, Argentina [email protected]

Abstract. COVID-19 pandemic that affected the entire world since late 2019 and the need to collaborate with the healthcare system gave rise to this article. Early diagnosis of the disease caused by the coronavirus is crucial for the treatment and control of this type of illness. In this context, chest radiography plays an important role as an alternative test to confirm or rule out an infected person; precisely, this work aims to analyze and develop a software prototype for COVID-19 signs recognition in chest radiographs, based on image processing using convolutional neural network model. Proposal is based on CRISP-ML methodology, following its phases of understanding the business and data, adapting the latter, generating the model and then evaluating it; experimentation and analysis of the behavior of the network were carried out by training it using different publicly available datasets. Experimental results demonstrate the proposed prototype effectiveness and limitations, with classification accuracy close to 80%. Keywords: Digital image processing · Artificial neural networks · Convolutional neural networks · Chest radiography

1 Introduction Coronavirus 2019 (COVID-19) is an infectious disease that has affected over 650 million individuals worldwide and caused over 6 million deaths as of February 2023 [1]. Traditionally, to determine whether a patient is infected or not, Reverse Transcription Polymerase Chain Reaction (RT-PCR) and rapid antibody tests are used. Former is considered more reliable, but it takes 4 to 6 h to obtain results. In addition, high demand for authorized laboratories can result in delays of several days, and there is also a shortage of PCR test kit centers. On other hand, rapid tests allow results to be obtained in 10 to 15 min, but they have a sensitivity of less than 30%, making them not recommended for routine diagnosis [2]. Early COVID-19 diagnosis is crucial for its treatment and control. This motivates alternative testing methods study, such as Chest X-rays (CXR). Imaging tests play an important role in patient management; they have been used to support diagnosis, determine the disease severity, guide treatment and assess its response. In contrast to © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 61–75, 2023. https://doi.org/10.1007/978-3-031-34147-2_5

62

G. S. Armoa et al.

PCR, CXR can be a more cost-effective and faster method to diagnose signs caused by COVID-19 [3]. CXR is generally the first-line imaging study in the evaluation of patients with suspected COVID-19 due to its usefulness, availability and low cost. Along with clinical evaluation and laboratory tests, it contributes to the initial assessment and disease monitoring. CXR also has sufficient sensitivity for detecting COVID-19, suggesting its utility as a complementary diagnostic tool [4, 5]. There are significant differences in sensitivity between PCR and CXR, but it is accepted that the latter can be used as a method for organizing the care of individuals according to existing resources and their needs in certain scenarios. These scenarios include environments with high disease prevalence (community transmission), centers with limited access to tests (PCR or rapid tests) and available portable CXR equipment, or in patients with severe symptoms, allowing for faster triage, hospitalization, and treatment [6]. Currently, there is unprecedented progress in Artificial Intelligence (AI) technology, which has led to the creation of new tools and applications. AI represents an attempt to mimic human intelligence, and systems based on it incorporate algorithms such as machine learning and deep learning in complex environments, facilitating the automation of multiple processes [7]. Thanks to deep learning, a computer can acquire the ability to perform classification tasks from images. Automatic feature extraction allows models to perform very well when used for computer vision activities, such as object identification. By using this tool, a computational system can develop the ability to classify tasks from images. Feature extraction automation makes these models very accurate in computer vision tasks, such as object identification. Among the most popular types of ANN (Artificial Neural Network) are CNNs (Convolutional Neural Networks). These networks do not require manual feature extraction, so it is not necessary to determine in advance which features are used to classify images, as in classic image processing. Instead, they rely on automatic extraction, obtaining this information directly from training images. Important features are acquired as the network evolves and learns through its experience from the input image set [8]. Proposal is to develop and train a CNN to analyze patients chest X-rays with suspected COVID-19 in an automated way, taking into account the situation of the pandemic in Argentina and the province of Misiones. This will allow doctors to quickly determine if a patient shows typical signs of the disease, and assist in making decisions about hospitalization and immediate treatment while waiting for laboratory results. Present article is structured in the following manner: Sect. 2 presents a proposal. Section 3 describes the methodology. Evaluation for prototype can be found in Sect. 4. Finally, in Sect. 5, conclusions and future research are thoroughly explained.

2 Proposal This paper presents an extension of the project presented at CACIC 2022 [9] entitled ‘Detección de signos de COVID-19 en radiografías de tórax a través del procesamiento digital de imágenes con redes neuronales convolucionales’.

COVID-19 Signs Detection in Chest Radiographs

63

Several steps were followed for CNN implementation, starting with the loading and configuration of the dataset, followed by the creation of the network model with each of its layers. Finally, network was trained and tested. Prototype development is based on the CRISP-ML(Q) methodology [10], methodology phases include: business understanding, data understanding, data preparation, modeling and evaluation, excluding the last deployment phase as it is not relevant to the project objective (a prototype).

3 Methodology CRISP-ML(Q) methodology was chosen because it provides a clear structure under a systematic approach for developing machine learning models, which helps ensure that all necessary phases for building an effective model are covered. It allows the project to be transparent and reproducible, aiding in effectively communicating the model’s results. [10, 11].

Fig. 1. Adapted CRISP-ML(Q) Methodology.

CRISP-ML(Q) is based on CRISP-DM CRoss-Industry Standard Process (CRISP) for Data Mining (DM) [12], basically consists of CRISP for development of Machine Learning (ML) applications with assurance of the Quality (Quality). In Fig. 1, see a general methodology adaptation from project. As can be noted, the process begins with defining business and data understanding. Last phases such as deployment, monitoring and maintenance were excluded as they were not considered

64

G. S. Armoa et al.

relevant to the project’s goal, which is a prototype. Additionally, there is a back-andforth between the data preparation and modeling phase as different training iterations are conducted, and based on results, dataset is modified to achieve better performance, and if necessary, model is also modified to evolve until obtaining a model that meets the requirements. Lastly, results are evaluated and if necessary, all activities are repeated until the objectives are met. 3.1 Business and Data Understanding Business and data understanding are part of methodology first phase. Business involves defining the problem that proposed model aims to solve, which in this case is described in Sect. 1. Main project objective is to develop a software prototype to signs COVID-19 detection in chest radiographs of patients using convolutional neural networks. Data Understanding As a first step, search for a dataset of chest X-ray images was carried out, as it was the primary factor to start with prototype development. Search was conducted using various means such as publicly accessible sources or published research works. It was decided to use the image dataset from an open database created by a team of researchers and physicians affiliated with the University of Qatar, Doha, and the University of Dhaka, Bangladesh, along with their collaborators from Pakistan and Malaysia [13]. Dataset consists of chest X-ray images with positive cases of COVID-19, normal cases (healthy lungs), viral pneumonia cases, and cases of lung opacities. All images are in Portable Network Graphics (PNG) format, with a resolution of 299 × 299 pixels. Researchers created dataset from different publicly available sources with the aim of producing useful and impactful academic works on COVID-19 that can help address the pandemic. To aid data understanding, the support of a medical imaging diagnostician professional was enlisted. With their help, the importance of including viral pneumonia and lung opacity cases in dataset was understood, as a patient affected by advanced COVID19 can present with these conditions, with COVID-19 being the root cause. Additionally, it was confirmed that in a pandemic alert state, where positive cases are abundant, any sign of pneumonia, whether typical of COVID-19 or not, should be considered and not dismissed. Therefore, these images types were included to positive cases dataset increase and allow the network to learn from a greater number of examples. 3.2 Data Preparation This phase involves preparation and pre-processing of the images that will be used to train the network, as well as the division into training, validation, and testing sets. Once the original dataset was obtained, different configurations of it were generated, meaning different distributions of images in different datasets were created for testing purposes to see which gave better or worse results.

COVID-19 Signs Detection in Chest Radiographs

65

Fig. 2. Distribution of folders

Factors taken into account for datasets generation were as follows: whether the dataset was curated, meaning if images with errors or poor quality that could skew the results were removed and whether lungs with pneumonia images (as COVID positive) or opacity lungs images and pneumonia images (as COVID positive) were considered. As a first step, each dataset characteristics were decided and then for each one, following structuring was carried out: each dataset was divided into three folders, with 80% of the selected images forming part to training set, 10% for validation set and remaining 10% for test set. It was sought to make all sets as diverse as possible. Furthermore, within each subset of each dataset (training, validation and test), two folders were created representing each possible classification, the images classified as COVID positive and the images classified as COVID negative. Figure 2 shows folders distribution and files mentioned above and all created configurations are stored within datasets folder. For the first dataset (data 1), it was decided to test with all available images, taking as COVID positive all images of COVID, viral pneumonia, and lung opacities. Inclusion of viral pneumonia images and lung opacities images within COVID positive classification

66

G. S. Armoa et al.

was done in order to increase dataset size and achieve better neural network training accuracy. For negative COVID, all images classified as normal were taken, resulting in a total of 10,972 images for “positive” COVID and 10,192 images for “negative” COVID. For second dataset, images classified as “normal” were used as examples of negative COVID and images classified as COVID and “viral pneumonia” were used as examples of positive COVID, leaving aside images of lung opacity. This decision was made on Dr. Luqui Osvaldo recommendation, a specialist in diagnostic imaging at the “Hospital Escuela de Agudos Dr. Ramón Madariaga”, because lung opacity can be caused by many diseases and is not a common sign of disease in question, which could obscure the study. Moreover, given current epidemiological situation, in practice, there is no distinction between COVID pneumonia and viral pneumonia. Both are considered as positive COVID, although there may be signs that differ from each other, given that each case is different, and a viral pneumonia may have been caused by a previous positive COVID in the patient. In another context, without a pandemic, this could vary. A total of 4,960 images were taken for positive COVID and 10,192 negative COVID images. In turn, a balance was made for negative COVID images set, so that both sets have the same number of images, reducing negative COVID set to 4,960 normal lungs images. For the third dataset, only images classified as COVID were considered for positive COVID set, that is, viral pneumonia and lung opacity images were not used. This was done with the idea of giving exactly network what it needs to learn, although the number of images used to network train is significantly reduced, it is still an adequate size and better quality since it only has X-rays with positive COVID. A total of 3,615 positive COVID images and 3,615 normal lung images were obtained. All available COVID images were taken, and the same number of normal lung images was selected, trying to select the “best quality” images. Finally, for fourth dataset, only COVID and normal lung images were considered, like dataset number 3, with difference that for the latter, in order to improve the results and reduce bias, it was necessary to “purge” the images, for this, the images had to be viewed individually and those that were very blurry or defective were eliminated as they could bias the results obtained, resulting in poor quality classifications. This activity was carried out without professional help, as it is a task that takes a lot of time and we did not have the availability of doctors. That is why the purge was exclusively of radiographs that were noticeably poorly executed. For last dataset, after the purge, a total of 2,462 positive COVID images were obtained, and the same number of normal lung images were selected for positive COVID. 3.3 Modeling Modeling phase of the network includes its development, optimization and training. These activities are described in detail below. Prototype Development Developed prototype was implemented in Python, since it is a multi-paradigm and multilevel open-source and free language. It was chosen because it is ideal for AI techniques

COVID-19 Signs Detection in Chest Radiographs

67

implementation. In turn, Anaconda platform was used since it can create and implement deep learning models that use neural networks. Additionally, it integrates easily with tools such as TensorFlow and Keras to create and train neural network models, including convolutional neural networks [14–17]. For CNN implementation, a series steps were followed, starting with loading and dataset configuring, followed by creating the network and each of its layers, including convolutional layers, max pooling layers, flattening layer, and dense layer. Decision on the number of applied filters, parameters used and layers number was made after performing different network configurations and selecting the architecture that demonstrated the best performance in training, thus determining the final configuration of chosen model, by iterating back and forth between previous phase, modifying data used and model repeatedly testing. Network performance was evaluated based on accuracy and validation error set, training time and computational cost, in addition to results of testing with test images. To objectively test each network, the same dataset was used. Different training sessions were performed for each network configuration, selecting neural network model that achieved the best results. These tests are not presented in this work since only the tests performed on final model and its validation are considered relevant. Subsequently, a graph was implemented to track each training session and evaluate the behavior of the network during the training, as well as to evaluate the performance of the validation set. CNN Creation Sequential() function was used to create the neural network, which groups a linear stack of layers into a tf.keras.Model file [18]. Then, each layer was added to the network using the add() function. Parameters received by this function are as follows: filters number used, filter size, padding variable referring to corners filter, height and length of input images and activation function used. Additionally, a MaxPooling layer was added using a 2x2 filter size.

Fig. 3. Architecture of the first convolution.

68

G. S. Armoa et al.

With this last layer, first convolution ends and in Fig. 3, its architecture can be observed graphically. Next, as shown in Fig. 4, second and third convolutional layers are added, in this case, hidden layers, so the size of image (inputShape) is not specified. In both cases, the parameters they receive are as follows: filters number, filter size, padding variable and activation function used. At the end, a MaxPooling layer is added, for which a filter of size 2x2 was used, thereby concluding the convolutions. Finally, a flattening layer is added to transform the multidimensional network into a one-dimensional network, which is then passed to a traditional neural network. In Fig. 5, complete final convolutional neural network architecture can be seen, formed by the 3 convolutional layers, flattening layer and multilayer perceptron (MLP). MLP outputs MLP represent the entire network outputs, resulting in each class accuracy percentage. 3.4 Network Optimization After finishing building the network, optimization process was carried out. To do this, optimization parameters of the algorithm were used through the compile() function,

Fig. 4. Architecture of the second and third convolution.

COVID-19 Signs Detection in Chest Radiographs

69

which takes as parameters a loss function, an optimizer along with learning rate and a metric. These parameters help to evaluate network during training performance. Optimizer used for the learning function was Adam, which uses gradient descent. It takes the learning rate (lr) as a parameter, in this case, a lr = 0.0005 was used. Loss function chosen was categorical crossentropy, which is used in multi-class classification tasks. These are tasks where an example can only belong to one of several possible categories, and the model must decide which one. Formally, it is designed to quantify the difference between two probability distributions. [19]. Metric used was accuracy, which represents the percentage of correct predictions made by the network. It calculates how often the predictions are correct. 3.5 Network Training Next step is to specify training and dataset. To do this, we use the fit_generator() function, which receives the following parameters: training set, steps per epoch number, epochs number (in this case, 20), validation set and validation steps number [20].

Fig. 5. Complete prototype architecture with CNN

Once network is trained, model is saved in corresponding directory, in this case, in the specific folder named “modelo”, the structure is saved under the name “modelo.h5” and the weights under the name “pesos.h5”. After saving the model, training a line plot and validation learning is generated as epochs function, as shown in Fig. 6, the plot displays 4 metrics. Four metrics mentioned above are train_acc (training accuracy) and val_acc (validation accuracy), which represent accuracy of learning for both the training and validation sets, respectively. On other hand, we have train_loss (training loss) and val_loss (validation loss), which represent the training and validation sets learning error of.

70

G. S. Armoa et al.

Fig. 6. .

4 Evaluation To validate and analyze the prototype developed functionality with the proposed methodology detailed in the previous section, the following tests have been planned: Taking into account test images large number, use of a confusion matrix was considered, a useful tool for efficiently measuring performance in image classification [21, 22]. The model was tested through three experiments for each dataset, resulting in a total of 12 experiments. Each experiment involved training the model with its corresponding dataset (Table 1). After the training was completed, confusion matrix was used to evaluate the model performance on the test set and analyze the each metric values (Table 2). Test set consisted of all the images, with their real labels, automatically evaluated by the model and compared to their predicted labels. Table 1 presents a comparative summary of error and accuracy results obtained during each model training. Additionally, Table 2 shows metric values obtained from confusion matrices generated in each experiment. Table 1. Training results summary. Dataset

Test

Training Error

Validation Error

Training Accuracy

Validation Accuracy

1

1

0,3840

0,3319

0,8292

0,8552

2

0,3575

0,3030

0,8478

0,8725 (continued)

COVID-19 Signs Detection in Chest Radiographs

71

Table 1. (continued) Dataset

Test 3

2

4 5 6

3

4

Training Error

Validation Error

Training Accuracy

Validation Accuracy

0,3478

0,2951

0,8511

0,8730

0,2956

0,6591

0,8715

0,6099

0,2928

0,6354

0,8806

0,6069

0,2939

0,5788

0,8752

0,6633

7

0,3993

0,2759

0,8009

0,8920

8

0,3993

0,2759

0,8009

0,8920

9

0,3602

0,2588

0,8387

0,9034

10

0,3510

0,3900

0,8410

0,8208

11

0,3971

0,3815

0,8122

0,8562

12

0,4212

0,3944

0,7909

0,8375

In Table 1, it can be observed that the vast majority of the trainings had results that at first glance seem promising. Test 9 training stands out for achieving an 90% accuracy and only 0.25 validation set error. On the other hand, test 5 was the test with least favorable results, with 0.63 error and validation set 60% accuracy. Table 2. Summary of tests. Dataset 1

2

3

4

Test

Precision

Sensitivity

F1-score

Accuracy

Covid

No Covid

Covid

No Covid

Covid

No Covid

1

0,66

0,77

0,83

0,58

0,73

0,66

70,78%

2

0,58

0,85

0,94

0,31

0,71

0,46

63,11%

3

0,51

0,91

0,99

0,06

0,67

0,11

52,75%

4

0,49

0,50

0,94

0,05

0,65

0,09

49,95%

5

0,49

0,44

0,91

0,06

0,64

0,11

49,04%

6

0,49

0,00

1,00

0,00

0,66

0,00

49,95%

7

0,51

0,95

0,99

0,05

0,67

0,10

52,76%

8

0,53

0,83

0,96

0,17

0,69

0,28

56,91%

9

0,47

0,47

0,54

0,40

0,51

0,43

47,65%

10

0,79

0,79

0,80

0,78

0,79

0,79

79,47%

11

0,65

0,68

0,71

0,63

0,68

0,65

67,07%

12

0,66

0,65

0,64

0,67

0,65

0,66

66,06%

72

G. S. Armoa et al.

In Table 2, it can be observed that all tests performed with the same dataset gave similar results. Dataset 1 is set that shows the greatest variation in its results, achieving an 71% accuracy in test 1 (Table 2). Tests performed with dataset number 2 stand out for obtaining least favorable results, in no case did it manage to exceed 50% accuracy. The fact of having same amount of images for each class, a 50% accuracy indicates that the network classifies practically all images as the same class. For dataset number 3 case, a similar behavior to tests performed with dataset number 2 is observed, with little notable results. It is convenient to note that test 9 performed with this dataset presents the best accuracy value, reaching 90% on the validation set during training (Table 1). It is important to note that, although the accuracy value in training is high, it does not ensure good performance in classifying images, as can be seen in the classification results in Table 2. Finally, dataset number 4 stands out for obtaining best results, exceeding 66% accuracy on the test set in all cases. Test 10, where an accuracy of 79% was achieved in classifying test set images, stands out and confusion matrix generated is shown in Fig. 7. 4.1 Network Validation Based on the results of the previous tests, the best-performing network in image classification was selected, which was obtained in test 10 with dataset 4 (achieving 79% accuracy), and validation was performed with the help of a professional in the of diagnostic imaging field from the Hospital Escuela de Agudos Dr. Ramón Madariaga.

Fig. 7. Confusion matrix of test 10.

COVID-19 Signs Detection in Chest Radiographs

73

A dataset containing 52 unlabeled images from test set of the dataset used to train the network was provided to the professional, who was asked to classify them according to their criteria. Of the 52 chest X-ray images, 37 were classified by the professional in the same way as the network, 3 could not be defined under any classification, so they were not taken into account, and the remaining 12 images were classified in contradiction to the outputs obtained by the network. A 75% agreement was obtained with classification performed by the doctor. It is worth noting that classification criteria may vary depending on each person, as factors such as experience or human error may affect decision made. Therefore, the validation results are considered favorable.

5 Conclusions In order to meet this work objectives, an exhaustive research process and COVID-19 signs analysis in lung radiographs was necessary, as well as a deeper understanding of convolutional neural networks application in image classification, network architecture designing and different datasets, prototype implementing, network training and testing with each dataset, and validating the prototype’s performance with a professional. Finally, the results were analyzed to determine proposal feasibility. After analysis, it can be observed that result tables and confusion matrices demonstrate that dataset number 4 showed best performance in image classification, achieving 79% accuracy. Based on this, it can be deduced that refinement performed on dataset was the key factor in achieving this improvement. In this sense, tests indicate that removing low-quality images produces an exponential improvement in classification results, demonstrating the sensitivity that CNNs have to these images types and having a representative dataset importance. Within exposed analysis, it is possible to observe that trained network has two major limitations: used to radiograph perform technique, which can affect image quality and chronic conditions that patient may present. On other hand, it is important to highlight high computational cost demanded to CNNs development. As it has been shown, prototype obtained was promising for specialist physician in diagnostic imaging, as it was able to effectively classify lung radiographs with COVID-19 signs in a matter of seconds once the radiograph was obtained. In this way, an alternative could be generated to cooperate with health organizations in COVID-19 diagnosis. According to what has been expressed above, it has been demonstrated that with convolutional neural networks application, a prototype capable of effectively recognizing COVID-19 signs in lung radiographs was built. Thus, it is evident this study successfully fulfilled the objectives proposed at the beginning of the research. In this work, CRISP-ML(Q) methodology application allowed classifying problem lung radiograph images with COVID-19 signs to be addressed in a rigorous and structured manner, which led to effective prototype development for this disease diagnosis. Use this methodology allowed for adequate and structured project management. It is highly recommended for machine learning projects, as it provides a structured and rigorous approach to problem-solving. Finally, it should be noted that since pandemic beginning, numerous research projects of same nature as this one have emerged, resulting in many cases with excellent results,

74

G. S. Armoa et al.

confirming the usefulness of these tools in the field. All of this leads to future improvements for this work, one of which could be implementing a network that, instead of performing binary classification, performs multi-class classification. Additionally, transfer learning could be utilized given that it presents numerous advantages and currently there are many works that support its efficiency (ResNet, VGG, etc.).

References 1. COVID-19 Visualizer. https://www.covidvisualizer.com/. Accessed 07 Dec 2022 2. Martínez Chamorro, E., Díez Tascón, A., Ibáñez Sanz, L., Ossaba Vélez, S., Borruel Nacenta, S.: Radiologic diagnosis of patients with COVID-19. Radiologia 63(1), 56–73 (2021). https:// doi.org/10.1016/j.rx.2020.11.001 3. ¿Qué es una red neuronal? - MATLAB & Simulink. https://la.mathworks.com/discovery/neu ral-network.html. Accessed 24 Sep 2020 4. The Handbook of Artificial Intelligence. Elsevier (1981) 5. Introducción al Aprendizaje Automático - Fernando Sancho Caparrini. http://www.cs.us.es/ ~fsancho/?e=75. Accessed 07 Sep 2020 6. ¿Qué es el Deep Learning? | SmartPanel. https://www.smartpanel.com/que-es-deep-learning/. Accessed 07 Sep 2020 7. Deep Learning - Libro online de IAAR. https://iaarbook.github.io/deeplearning/. Accessed 17 Nov 2021 8. Bagnato, J.I.: Aprende Machine Learning en Español, p. 164 (2020). https://www.aprendema chinelearning.com/ 9. Armoa, G.S., Vega Lencina, N.I., Eckert, K.B.: Detección de signos de COVID-19 en radiografías de tórax a través del procesamiento digital de imágenes con redes neuronales convolucionales. XXVIII Congr. Argentino Ciencias la Comput. (CACIC), Ciudad La Rioja, La Rioja, Argentina (2022) 10. Studer, S., et al.: Towards CRISP-ML(Q): a machine learning process model with quality assurance methodology. Mach. Learn. Knowl. Extr. 3(2), 392–413 (2021). https://doi.org/10. 3390/make3020020 11. CRISP-ML(Q). https://ml-ops.org/content/crisp-ml. Accessed 07 Dec 2022 12. Chapman, P., et al.: Step-by-step Data Mining Guide. SPSS inc. vol. 78, pp. 1–78 (2000). https://www.semanticscholar.org/paper/CRISP-DM-1.0%3A-Step-by-step-data-miningguide-Chapman-Clinton/54bad20bbc7938991bf34f86dde0babfbd2d5a72%0A http://www. crisp-dm.org/CRISPWP-0800.pdf 13. COVID-19 Radiography Database | Kaggle. https://www.kaggle.com/tawsifurrahman/cov id19-radiography-database. Accessed 21 May 2021 14. Anaconda | Use Cases. https://www.anaconda.com/use-cases. Accessed 17 Feb 2022 15. Librerías, M.L.: TensorFlow, Scikit-learn, Pytorch y Keras - Platzi. https://platzi.com/blog/ librerias-de-machine-learning-tensorflow-scikit-learn-pythorch-y-keras/?gclid=CjwKCA iA4KaRBhBdEiwAZi1zzrm5QrcLNP_R6BqpM9DZj0H6v9yvzsHEXltymGQzgu3FfBQa Imjc_hoCmHMQAvD_BwE&gclsrc=aw.ds. Accessed 10 Mar 2022 16. Keras: the Python deep learning API. https://keras.io/. Accessed 04 Jul 2022 17. TensorFlow. https://www.tensorflow.org/?hl=es-419. Accessed 04 Jul 2022 18. The Sequential class. https://keras.io/api/models/sequential/. Accessed 02 Mar 2022 19. Función de pérdida de entropía cruzada categórica | Plataforma Peltarion. https://peltarion. com/knowledge-center/documentation/modeling-view/build-an-ai-model/loss-functions/cat egorical-crossentropy. Accessed 17 Mar 2022

COVID-19 Signs Detection in Chest Radiographs

75

20. fit_generator function - RDocumentation. https://www.rdocumentation.org/packages/keras/ versions/2.4.0/topics/fit_generator. Accessed 04 Jul 2022 21. La matriz de confusión y sus métricas – Inteligencia Artificial –. https://www.juanbarrios. com/la-matriz-de-confusion-y-sus-metricas/. Accessed 15 Mar 2022 22. Evaluando los modelos de Clasificación en Aprendizaje Automático: La matriz de confusión.| profesorDATA.com. https://profesordata.com/2020/08/07/evaluando-los-modelos-de-clasif icacion-en-aprendizaje-automatico-la-matriz-de-confusion-claramente-explicada/. Accessed 04 Apr 2022

A Digital Zen Garden for Mental Health Conditions Treatment Nicol´as Jofr´e(B) , Graciela Rodr´ıguez, Yoselie Alvarado, Jacqueline Fernandez, and Roberto Guerrero Laboratorio de Computaci´ on Gr´ afica (LCG), Universidad Nacional de San Luis, San Luis, Argentina {npasinetti,gbrodriguez,ymalvarado,jmfer,rag}@unsl.edu.ar

Abstract. From the beginning of the COVID-19 pandemic, the severity and prevalence of symptoms of psychological distress, fatigue, brain fog, and other conditions have increased considerably, including among people who have not been infected with SARS-CoV-2. Many studies summarize the effect of the pandemic on the availability of mental health services and how this has changed during the pandemic. Concerned that potential increases in mental health conditions, had already prompted 90% of countries surveyed to include mental health and psychosocial support in their post COVID-19 response plans, but major gaps and concerns remain. In this paper we developed a de-stress proposal through a digital zen garden by using an augmented reality sandbox. The system provides patients with flexible interaction and easy control of the scenario, while making real time data recording. Three evaluation methods were developed to review the effectiveness of the therapy. According to the evaluation results of patients’ training, the system is a low cost entertainment tool that augments patients’ motivation, and helps to increase the effectiveness of therapy. Keywords: Mental Health · Cognitive Disorders Augmented Reality · COVID-19

1

· Virtual Reality ·

Introduction

In terms of pathophysiology, a closely related coronavirus (SARS-CoV) is reported to be neurotoxic and affect mental health. Furthermore, among the survivors of SARS infection, patients were reported to have persistent elevated stress, and over 64% of the survivors are reported to have a combination of stress, anxiety, and depression [1]. Only in the first year of the COVID-19 pandemic, global prevalence of anxiety and depression increased by a massive 25%, according to a scientific brief released by the World Health Organization (WHO). WHO Director-General, said that the information gathered about the impact of COVID-19 on the world’s mental health is just the tip of an iceberg. As a consequence, this is a wake-up call c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 76–87, 2023. https://doi.org/10.1007/978-3-031-34147-2_6

A Digital Zen Garden for Mental Health Conditions Treatment

77

to all countries to pay more attention to mental health and do a better job of supporting their populations’ mental health. One major explanation for the increase is the unprecedented stress caused by the social isolation resulting from the pandemic. Linked to this were constraints on people’s ability to work, seek support from loved ones and engage in their communities. Loneliness, fear of infection, suffering and death for oneself and for loved ones, grief after bereavement and financial worries have also all been cited as stressors leading to anxiety and depression [2]. Among health workers, exhaustion has been a major trigger for suicidal thinking [3]. Some studies show that the pandemic has affected the mental health of young people and that they are disproportionally at risk of suicidal and self-harming behaviours. It also indicates that women have been more severely impacted than men and that people with pre-existing physical health conditions, such as asthma, cancer and heart disease, were more likely to develop symptoms of mental disorders [4]. Data suggests that people with pre-existing mental disorders do not appear to be disproportionately vulnerable to COVID-19 infection. Yet, when these people do become infected, they are more likely to suffer hospitalization, severe illness and death compared with people without mental disorders. People with more severe mental disorders, such as psychoses, and young people with mental disorders, are particularly at risk [5]. While the pandemic has generated interest in and concern for mental health, it has also revealed historical under-investment in mental health services. Countries must act urgently to ensure that mental health support is available to all. In this sense, there is an urgent need for tools to address diseases such as stress, anxiety, among others. The aim of this paper is to propose a de-stress therapeutic tool by approximating the ancient method of Japanese Zen Garden through Augmented Reality (AR). Section 2 gives a brief overview of Japanese Zen Garden. Section 3 describes the proposed Augmented Reality Sandbox Architecture System. Section 4 details the evaluation method to review the effectiveness of the therapy with a preliminary evaluation published in [6], that evaluation was extended to more participants. Additionally, two user experience evaluations were conducted based on participant emotion and perception. Section 5 provides a small discussion and future guidelines. Section 4 details evaluation methods reviewing the effectiveness of the therapy. Evaluations methods extend participants number and method suggested in a preliminary publication [6]. Evaluations involve one objective and two subjective analysis. Subjective user experience evaluations were conducted based on participant emotion and perception. Section 5 provides a small discussion and future guidelines.

78

2

N. Jofr´e et al.

Japanese Zen Garden

Japanese gardens create their own styles and one of the most famous are the so-called Zen gardens that seek to go beyond and create a place conducive to meditation and contemplation (See Fig. 1). The japanese zen garden creates a miniature stylized landscape through carefully composed arrangements of rocks, water features, moss, pruned trees and bushes, and uses gravel or sand that is raked to represent ripples in water. Zen gardens are commonly found at temples or monasteries. A zen garden is usually relatively small, surrounded by a wall or buildings, and is usually meant to be seen while seated from a single viewpoint outside the garden, such as the porch of the hojo, the residence of the chief monk of the temple or monastery. Many, with gravel rather than grass, are only stepped into for maintenance. Classical zen gardens were created at temples of Zen Buddhism in Kyoto during the Muromachi period. They were intended to imitate the essence of nature, not its actual appearance, and to serve as an aid for meditation [7]. It is important to understand that the word zen means meditation. Monks used zen garden as an ideal place for meditation. They are areas that transmit tranquility, inner serenity and reduce stress through their beauty [8]. Sand represents the vastness of the ocean and rocks represent the mountains. One of the many benefits of zen gardens is to de-stress their owners by playing with the rake, creating shapes in the sand. We can give movement to our garden, for example by creating designs with “stacked stones” which signify stability. Zen gardens bring us serenity and relaxation; they stimulate creativity and the best thing is that we do not need a large space to create one, we can assemble them in any corner of our home or office.

Fig. 1. Photo courtesy of John S. Lander [9].

A Digital Zen Garden for Mental Health Conditions Treatment

3

79

Augmented Reality Sandbox

When referring to an augmented reality environment it talks about any realworld environment with elements augmented or supplemented by computergenerated input [10]. Since their conception in 2012 [11,12], the AR sandbox system is used to teach geographical, geological, and hydrological concepts such as how to read topographic maps, the meaning of contour lines, watersheds, catchment areas, levees, etc. It is a tool that combines 3-dimensional visualization applications with a hands-on sandbox. Users can create topography models by shaping real sand, which is then augmented in real time by an elevation color map, topographic contour lines, and simulated water flow. However, in many cases AR sandbox can be seen as a form of non-verbal therapeutic intervention [13–15]. Patients (often, children) can use sand to portray their experiences that they cannot express verbally. Moreover, many psychologists leverage this tool to treat psychic disorders due to its proven efficiency. Given this background it would be interesting to evaluate how an AR sandbox can contribute to reducing stress resulting from everyday life problems and the well-known Covid-19 pandemic. 3.1

System Description

As mentioned in Sect. 2, sand represents the vastness of the ocean and rocks represent the mountains. One of the many benefits of zen gardens is to de-stress their owners by playing with the rake, creating shapes in the sand. In relation to this, the sand in our sandbox is initially flattened and unrelieved, and the user has a set of tools such as trowel, rake and ruler. Using these tools, the user can perform different actions such as: – to create indentations or mountains by the trowel, – to create ripples that can represent water by the rake, and clean up and redraw them by a ruler, – to clean and redraw the relief until the desired relief is achieved by a ruler. It is expected that the user can visualize an analyze the projected textures in each sandbox section so they can determine and materialize the landscape appearance by means of the tools based on their observation. 3.2

Architecture System

Our AR sandbox prototype system comprises the following hardware components: – A computer with a high-end graphics card, running Linux. – A Microsoft Kinect 3D camera. – A digital video short-throw projector with a digital video interface, such as HDMI or DVI.

80

N. Jofr´e et al.

– A mirror. – A sandbox with a way to mount the Kinect camera, the mirror and the projector above the sandbox. – Sand. The architecture was designed for a medium sandbox of 120 × 100cm. These measurements determined that the depth sensor is suspended 2.2m above the sandbox. Having a regular projector, the ideal projection aperture is projecting to a screen located at a distance of more than 3 m, that is, the projector position has to be higher than the position of the depth sensor. This feature gives a resulting sensor shadow on the sandbox. The sensor-projector height problem can be solved by using a conveniently placed mirror to simplify the structure that supports all the devices. The mirror size results in 60 × 60cm. The developed prototype used for this work is shown below (Fig. 2). Figure 3 shows in detail the resulting visualized sand landscape.

Fig. 2. Sandbox architecture system.

4

Experiences and Results

The present research carried out three experimental methodologies using a group of fifty participants between 12 and 60 years old, all of them from San Luis, Argentina. Firstly, we implemented a physiological evaluation method based on user’s heart rate. Secondly, we apply a technique that directly measures emotions through a questionnaire. Finally, we performed a quantitative study for measuring the perception of the interface.

A Digital Zen Garden for Mental Health Conditions Treatment

81

Fig. 3. Sandbox projected.

se presentan 3 evaluaciones, una objetiva y 2 subejtivas basadas en la experiencia del usuario 4.1

Physiological Evaluation

We performed an objective evaluation method to review the effectiveness of the therapy training. The training consisted of measuring the level of participants’ stress before and after the experience with our sandbox prototype through 5–20 minutes user free actions. Actions were detailed in Sect. 3.1. Stress level monitoring enables to check how much stress the user has. For experimental data acquisition, a smart band was used [16]. The smart band measures the user’s heart rate and determines the current stress level based on its variability according to Jachymek et al. work [17]. Range values are suggested by the smart band’s application as shown in Table 1 [16]. Table 1. Stress level description Levels of stress Relaxed Mild 0-39

Moderate High

40-59 60-79

80-100

Table 2 shows the stress level measured at two different time slices: before and after the sandbox experience (second, third, fifth and sixth columns from left to right).

82

N. Jofr´e et al. Table 2. Stress level of the fifty participants before and after to the experience # User A Priori Level A Posteriori Level # User A Priori Level A Posteriori Level

4.2

1

35

24

26

48

40

2

29

21

27

47

39

3

34

25

28

44

35

4

29

23

29

42

31

5

40

31

30

30

24

6

64

34

31

41

28

7

38

28

32

34

27

8

27

22

33

48

35

9

38

28

34

49

40

10

59

33

35

41

28

11

43

26

36

45

36

12

47

29

37

41

29

13

44

35

38

44

30

14

42

31

39

46

36

15

30

24

40

46

35

16

41

28

41

43

28

17

35

27

42

40

27

18

44

35

43

44

38

19

49

38

44

50

38

20

42

28

45

41

28

21

60

39

46

41

30

22

45

38

47

38

37

23

47

42

48

44

38

24

45

38

49

41

32

25

45

33

50

42

37

Emotional Evaluation

Spending time doing an enjoyable activity can help relieve stress and anxiety, improve your mood and enhance feelings of happiness and well-being. Accordingly, measuring user emotions is an interesting strategy to analyze. The SelfAssessment Manikin (SAM) is a non-verbal pictorial assessment technique that directly measures the pleasure, arousal, and dominance associated with a person’s affective reaction to a wide variety of stimuli [18]. Pictograms provide the SAM scale with a great advantage since the verbal component and language are eliminated, making the evaluation of the dimensions based on drawings. Each pictogram of the scale represents an increasing score between 1 and 9, including the points between the drawings (Fig. 4). For this experiment only the pleasure dimension was studied since we are interested in how it affects the decrease of stress. Each participant was instructed to use the right extreme SAM rating if the reaction was one of feeling happy/pleased/satisfied/contented/hopeful/relaxed, and to use the other extreme if he felt unhappy/annoyed/unsatisfied/melancholic/despairing/bored.

A Digital Zen Garden for Mental Health Conditions Treatment

83

Fig. 4. SAM Scale: Pleasure dimension.

Table 3 shows the level of pleasure measured after the sandbox experience, considering the average of the users and the standard deviation of the values obtained. Table 3. Result SAM Scale: Pleasure SAM 1-9 Average

7

Standard deviation 1.25

4.3

Interface Evaluation

Since we have increased the number of users, we thought it would be useful to carry out a quantitative study of user experience to understand and evaluate the user’s perception of the interface. Therefore, we have chosen to use the standardized AttrakDiff questionnaire [19] that allows us to rate an experience with an overall score, using several different metrics. AttrakDiff is composed of 4 dimensions, each one of them with 7 items. All these 28 items are scored from -3 to 3. The advantage of this measure is that it gives a broad view of taking into account the ergonomics, usability and the pragmatic and hedonic dimensions. The 4 dimensions are detailed as PQ, HQ-I, HQ-S and ATT, where: – PQ (Pragmatic Quality): describes the functional quality of an application and indicates the degree of success through the user’s objectives achieved using it; – HQ-I (Hedonic Quality - Identity): indicates the level of immediate identification of the user with the application; – HQ-S (Hedonic Quality - Stimulus): indicates if the application supports the user’s needs concerning originality, interest and, especially, stimulus; – ATT (Attractiveness): it is the most comprehensive measure that quantifies the overall attractiveness of the application, based on the perception of quality by the user. For the evaluation, fifty users freely experimented with the application, executing the tasks mentioned in Sect. 3.1. For our study, only 12 attributes from the all 28 original method attributes were selected (Table 4). These were considered the most appropriate to analyze modifications and/or improvements to our technological prototype. The results obtained can be seen in Fig. 5.

84

N. Jofr´e et al. Table 4. 12 selected attributes from the original AttrakDiff questionnaire Dimension Attribute PQ

Human - Technical Unpredictable - Predictable Unruly - Manageable

HQ-I

Unimaginative - Creative Dull - Captivating Undemanding - Challenging

HQ-S

Isolating - Connective Unprofessional - Professional Cheap - Premium

ATT

Rejecting - Inviting Repelling - Appealing Discouraging - Motivating

Fig. 5. AttrackDiff: Classified by dimension.

A Digital Zen Garden for Mental Health Conditions Treatment

85

In Fig. 5, the analysed attribute in each dimension is represented by a boxplot. Every boxplot clearly determines the trends of the samples by showing their distribution.

5

Discussion and Conclusions

In this paper we developed a therapy system by using the augmented reality technique, a Kinect 3D camera and a sandbox. The system mimics a Japanese Zen Garden de-stress process by using a digital strategy through an augmented reality sandbox. The system provides users with flexible interaction and easy sand control, and also presents real time data recording. From the objective evaluation method, results show that the level of stress after the experience decreases by 20 to 30 percent according to the measurements of the smartwatch used. Gathered data show that the system enables to provide an experience that reduces the participants’ stress. While considering SAM technique, average and standard deviation parameters are evaluated. According to SAM scale establish values (between 1 and 9), evaluated groups highlight that pleasure dimension is near to 80% with a considerably low dispersion degree. These results show that, for most of the users, the obtained values in the evaluation of pleasure dimension are positive. On the other hand, the standardized evaluation AttrakDiff express the following behaviors according to each dimension: – PQ (Pragmatic Quality): • The Human - Technical attribute, shows that the system adapts to more human/natural use. • The Unpredictable - Predictable attribute, exhibit that the system is mostly predictable according to user requirements. • The Unruly - Manageable attribute, highlights that the system is moderately controllable. Finally, the dimension reflects that the system is optimal, but should be improved in aspects such as system control. – HQ-I (Hedonic Quality - Identity): • The Unimaginative - Creative attribute reflects that the system encourages the user to be creative, with the particularity that no user considered the system to have uninspiring characteristics. • The Dull - Captivating attribute shows that users consider the system to be moderately charming without being totally enchanted or totally bored. • The Undemanding - Challenging attribute shows that the system naturally motivated users to generate different garden design proposals by trying to make them original. Finally, this dimension shows that users quickly felt identified with the final objective of the prototype leading them to compete with their own creations.

86

N. Jofr´e et al.

– HQ-S (Hedonic Quality - Stimulus): • The Isolating - Connective attribute shows that the system is highly convective, where in particular no user considered it as a stand-alone system. • The Unprofessional - Professional attribute shows that no major skills are required to be able to use and understand the system as a whole. • The Cheap - Premium attribute attribute reflects that the designed prototype is clearly considered by the users as a low-cost system. Moreover, no user evaluated the system as being of considerable cost. Finally, this dimension reflects that the system is highly stimulating thanks to its connectivity, its ease of use and understanding, and its low cost. – ATT (Attractiveness): • The Rejecting - Inviting attribute shows that users consider the system to be considerably inviting. In particular, no user considered that the system possessed features that would generate rejection. • The Repelling - Appealing attribute shows that the prototype is remarkably appealing, as no user expressed dislike. • The Discouraging - Motivating attribute shows that the system is highly motivating with the particularity that no user considered the system to have dissuasive aspects. Finally, this dimension shows that the system as a whole has engaging qualities that inspire the user. As a result, the experiment provides a new insight into the relationship between these types of technologies and traditional mindfullness methods. The experiences here considered gave users free will at the moment of actions’ choice. Robust experiments should consider an actions’ protocol to be followed by users. Additionally, real time digital sandbox elements interaction is beyond the scope of this work. Future studies will take into account the development of a virtual reality Japanese Zen Garden including both headsets and gestural sensing devices. The system should immerse the user inside the virtual garden and give him the possibility to affect the scene through his avatar in the same way as it is done in a real zen garden.

References 1. Mahalakshmi, A.M., et al.: Does COVID-19 contribute to development of neurological disease? Immun. Inflam. Dis. 9(1), 48–58 (2021) 2. Elena Dragioti, E., et al.: A large-scale meta-analytic atlas of mental health problems prevalence during the COVID-19 early pandemic. J. Med. Virology 94(5), 1935–1949 (2022) 3. Johns, G., Samuel, V., Freemantle, L., Lewis, J., Waddington, L.: The global prevalence of depression and anxiety among doctors during the COVID-19 pandemic: systematic review and meta-analysis. J. Affect. Disord. 298, 431–441 (2022) 4. Pınar IRMAK VURAL, Nazife BAKIR, Cuma Demir, and Pınar IRMAK VURAL. The effect of religious coping on geriatric anxiety in a group of older turkish women during the covid-19 pandemic period. Turkish Journal of Geriatrics, 25(2), 282– 290, 2022

A Digital Zen Garden for Mental Health Conditions Treatment

87

5. Hassan, L., et al.: Disparities in COVID-19 infection, hospitalisation and death in people with schizophrenia, bipolar disorder, and major depressive disorder: a cohort study of the UK biobank. Mol. psychiatry 27(2), 1248–1255 (2022) 6. Jofr´e, N., et al.: Prototyping a digital zen garden. In: Editorial de la Universidad Nacional de La Rioja (EUDELAR), editor, Libro de actas - XXVIII Congreso Argentino de Ciencias de la Computaci´ on - CACIC 2022 (2022) 7. Locher, M., Fujimori, T.: Zen Garden Design: Mindful Spaces by Shunmyo Masuno Japan’s Leading Garden Designer. Tuttle Publishing (2020) 8. Locher, M., Shigeru, U.: Zen Gardens: The Complete Works of Shunmyo Masuno. Tuttle Publishing, Japan’s Leading Garden Designer (2012) 9. Lander, J., Garden. Z.: https://www.gettyimages.in/photos/john-lander-?ass ettype=image&phrase=john%20lander%20&sort=mostpopular&license=rf%2Crm (2022). Accessed: 2023–02-20 10. Azuma, R.T.: A survey of augmented reality. Presence Teleoperators Virtual Environ. 6(4), 355–385 (1997) 11. https://eos.org/science-updates/augmented-reality-turns-a-sandbox-into-a-geosci ence-lesson 12. Kreylos, O., et al.: The AR sandbox: augmented reality in geoscience education. In: AGU Fall Meeting Abstracts. vol. 2016, p. ED51H-0843 (2016) 13. Gabele, M., Schr¨ oer, S., Husslein, S., Hansen, C.: An AR sandbox as a collaborative multiplayer rehabilitation tool for children with adhd. In: Mensch und Computer 2019 - Workshopband, Bonn, 2019. Gesellschaft f¨ ur Informatik e.V 14. Lindner, P., Hamilton, W., Miloff, A., Carlbring, P.: How to treat depression with low-intensity virtual reality interventions: Perspectives on translating cognitive behavioral techniques into the virtual reality modality and how to make anti-depressive use of virtual reality-unique experiences. Front. Psychiatry 10, 792 (2019) 15. https://ar-sandbox.com/augmented-reality-sandbox-for-therapy/ 16. Xiaomi Inc., Zepp life. Google Play Store, 2022 17. Jachymek, M., et al.: Wristbands in home-based rehabilitation - validation of heart rate measurement. Sensors 22(1), 60 (2022) 18. Bradley, M.M., Peter, J, L.: measuring emotion: the self-assessment manikin and the semantic differential. J. Behav. Ther. Exp. Psychiatry 25(1), 49–59 (1994) 19. Ribeiro, Iara Margolis, Providˆencia, Bernardo: Quality Perception with Attrakdiff Method: A Study in Higher Education During the Covid-19 Period. In: Martins, Nuno, Brand˜ ao, Daniel, Moreira da Silva, Fernando (eds.) Perspectives on Design and Digital Communication II. SSDI, vol. 14, pp. 217–231. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-75867-7 14

Software Engineering

Toward an Execution Trace Standard: An MDE Approach Claudia Pereira1(B)

, Liliana Martinez1

, and Liliana Favre1,2

1 Universidad Nacional del Centro de la Provincia de Buenos Aires, Tandil, Argentina

{cpereira,lmartine,lfavre}@exa.unicen.edu.ar 2 Comisión de Investigaciones Científicas de la Provincia de Buenos Aires, La Plata, Argentina

Abstract. Dynamic analysis extracts information that describes the structure of the runtime behavior of a software system. This information, typically represented in the form of execution traces, is useful in many software modernization activities, such as reverse engineering and program analysis. The Architecture-Driven Modernization initiative has defined standards to support the modernization process in the context of Model-Driven Engineering (MDE). However, to date, there is no standard for representing runtime information that allows the specification of dynamic information independent of any programming language. In light of this, we present TRACEM, a metamodel for representing trace information under a standard representation that would allow traces to become a new domain in software engineering. The purpose of defining TRACEM is to complement an MDE framework for software modernization that aims to integrate static and dynamic analysis techniques during the reverse engineering process. This article contains a description of TRACEM and a case study that illustrates how dynamic information combined with static information allows for improving the whole reverse engineering process. Keywords: Architecture-Driven Modernization · Reverse Engineering · Metamodeling · Transformation · Static Analysis · Dynamic Analysis · Legacy System

1 Introduction In the software modernization context, reverse engineering techniques play an important role, specifically, they cover the process of analyzing available software artifacts such as requirements, design, architectures, or code, with the goal of extracting information and providing high-level views of the underlying system. Thus, software modernization starts from an existing implementation and requires an evaluation of every part of the system that could be transformed or implemented anew from scratch. The great advance of mobile technologies and the emergence of new paradigms such as cloud computing and the Internet of Things have led to a growing demand for software modernization. Many companies are faced with the need to modernize or replace their legacy software systems, which have involved the investment of money, time, and other resources over the years. Many of them are still business critical and their replacement represents a high risk. © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 91–106, 2023. https://doi.org/10.1007/978-3-031-34147-2_7

92

C. Pereira et al.

As regards the systematic modernization process, novel technical frameworks for information integration, tool interoperability, and reuse have emerged. Specifically, Model-Driven Engineering (MDE) is a software engineering discipline in which software development can be broken down into standardized, highly automated activities that can mass-produce software applications reducing costs, development time, and risks. MDE emphasizes the use of models and model transformations to raise the abstraction level and the automation degree in software development. Productivity and aspects of software quality such as interoperability and maintainability are goals of MDE [1]. Regarding MDE, recent OMG contributions to modernization are aligned with the Architecture-Driven Modernization (ADM) proposal. It is defined as “the process of understanding and evolving existing software assets for the purpose of software improvement, modifications, interoperability, refactoring, restructuring, reuse, porting, migration, translation, integration, service-oriented architecture deployment” [2]. The OMG ADM Task Force is developing a set of standards (metamodels) to facilitate interoperability between modernization tools, such as the Knowledge Discovery Metamodel (KDM) [3] and the Abstract Syntax Tree Metamodel (ASTM) [4]. ADM has emerged complementing the Model-Driven Architecture (MDA) [5], an OMG initiative that manages the software evolution from abstract models to implementations. The essence of MDA is the Meta Object Facility metamodel (MOF) [6] which allows the interoperability of different types of artifacts from different technologies. Metamodeling is an essential technique of MDA whose advantages are widely known. A standard machineprocessable language can be used to check whether models are valid instances. On the other hand, a metamodel that has been defined with the core of UML [7] class diagrams is an accessible language, easy to understand and maintain, and therefore contributes to easy adaptation, allowing language evolution. Based on the meta-metamodel level, tools that allow exchanging formats may be developed to manipulate models, regardless of the modeling language used [1]. ADM standards enable the extraction of models from code representing static information. Despite the increasing interest in dynamic analysis techniques in reverse engineering, there is no standard for representing runtime information. Such a standard could be used by tools for visualization and analysis of execution traces, facilitating interoperability and data exchange. In previous work, we showed how to reverse engineer models from code through static analysis, including class diagrams, use case diagrams, behavioral diagrams, and state diagrams [8–10]. In [11] we have presented TRACEM, a trace metamodel that is the foundation for dynamic analysis in the ADM context. This metamodel allows trace information to be represented in a standard way supporting extensibility, interoperability, abstraction, and expressiveness. An execution trace model is obtained each time the program runs. Then, by running the program with a significant set of test cases, we obtain a set of trace models that will be analyzed to obtain relevant dynamic information. The ultimate goal is to integrate dynamic and static analysis techniques combining the strengths of both approaches in the reverse engineering process within an MDE framework. In this article, we extend the previous work [11] by providing a more detailed description of our proposal, particularly, how the dynamic information specified in TRACEM allows complementing the information obtained statically and is exemplified on the models obtained in previous works [8–10].

Toward an Execution Trace Standard: An MDE Approach

93

This article is organized as follows. Section 2 presents the background. Section 3 describes a framework for reverse engineering in the MDE context. Section 4 details the TRACEM metamodel. In Sect. 5, we analyze the impact of dynamic analysis through a case study that illustrates how dynamic information combined with static information allows improving the whole reverse engineering process. Section 6 discusses related work. Finally, Sect. 7 presents conclusions and future work.

2 Background 2.1 Standards for Modernization The purpose of standardization is to achieve well-defined interfaces and formats for the interchange of information about software models to facilitate interoperability between the software modernization tools and services of the adherents of the standards. This will enable a new generation of solutions to benefit the whole industry and encourage collaboration among complementary vendors. In the MDA context, the most relevant OMG standards for our research are: • The MOF (Meta Object Facility) metamodel enables metadata management and modeling language definition and is based on a simplification of UML structural modeling capabilities [6]. • Object Constraint Language is a typed, declarative and side effect-free specification language. OCL is used to complement models and metamodels with a set of constraints and queries [12]. • XML Metadata Interchange is a common model interchange format that allows serializing and sharing the MOF-based metamodels and models in a uniform way [13]. • The Query-View-Transformation is a metamodel for expressing transformation in MDA-based processes [14]. In the ADM context, the OMG ADM Task Force is developing a set of standards (metamodels) such as KDM and ASTM, both metamodels are defined via MOF. • KDM is a metamodel for knowledge discovery in software that allows representing information related to existing software assets, their associations, and operational environments regardless of the implementation programming language and runtime platform. KDM is the foundation for software modernization representing entire enterprise software systems, not just code. • ASTM is a specification for modeling elements to express abstract syntax trees (AST). In particular, the ASTM specification mainly includes the following metamodels: – Generic Abstract Syntax Tree Metamodel (GASTM), a generic set of language modeling elements common across numerous languages establishes a common core for language modeling.

94

C. Pereira et al.

– Language Specific Abstract Syntax Tree Metamodels (SASTM) for particular languages such as Ada, C, Fortran and Java, that are modeled in MOF or MOF compatible forms. We defined TRACEM with the aim of complementing the existing set of standards, which would allow considering traces as a new domain in software engineering and representing them independently of any programming language. Dynamic information can be used for different purposes such as reverse engineering or program analysis. 2.2 Static and Dynamic Analysis Static analysis extracts information that describes the software structure reflected in the source code, whereas dynamic analysis extracts information that describes the structure of the runtime behavior. Ernst [15] compares both analyses from the point of view of their synergy and duality. He states that static analysis is conservative and sound. Conservatism means reporting weak properties that are guaranteed to be true, preserving soundness, but not strong enough to be useful. Soundness guarantees that static analysis provides an accurate description of the behavior, no matter on what input or in what execution environment the program is run. Dynamic analysis is precise, it examines the actual runtime behavior of the program, however, the results of executions may not generalize to other executions. The main challenge to carry out the right dynamic analysis is selecting a representative set of test cases. A test set can help to detect properties of the program; however, it can be difficult to detect whether results of a test set are true program properties or properties of a particular execution context. The combination of static and dynamic analysis can enrich the reverse engineering process. There are different ways of combination, for instance performing first static analysis and then dynamic one or perhaps, iterating static and dynamic analysis.

3 Reverse Engineering into the MDE Framework We propose a framework to reverse engineering models that combines the advantages of static and dynamic analysis (Fig. 1). This framework is based on the MDE principles: all artifacts involved can be viewed as models and the process can be viewed as a sequence of model-to-model transformations where the extracted information is represented in a standard way. Each model can be reused, refactored, modified or extended for reverse engineering purposes or for other purposes. Metamodels are defined via MOF and the transformations are specified between source and target metamodels. Then, MOF metamodels “control” the consistency of these transformations. In previous work, we presented a process to reverse engineering models from code through static analysis, that includes class diagrams, use case diagrams, behavioral diagrams, and state diagrams [8–10]. In the framework, as shown in Fig. 1, the first step of the static analysis is to extract the code model, that is an abstract syntax tree model instance of the SASTM (Specific ASTM), using a model injector. Next, a model-to-model transformation is performed to generate an instance of GASTM from the previous model. Finally, using a KDM model as an intermediate representation of the software system, high-level

Toward an Execution Trace Standard: An MDE Approach

95

UML models are obtained through a chain of model-to-model transformations. The first step of the process requires implementing an injector and transformations to obtain the GASTM model for each programming language, while the sequence of transformations in subsequent steps is independent of the legacy language.

Fig. 1. MDE Modernization Process

In this article, we present TRACEM, a trace metamodel that is the foundation for dynamic analysis (see the dotted circle in Fig. 1). This metamodel allows us to obtain and record trace information. Dynamic analysis is a valuable technique for reverse engineering by providing information about the runtime behavior of software systems. However, dynamic analysis requires both a complete and executable system and the instrumentation of the code to detect and record relevant events at runtime for subsequent offline analysis. To reverse engineering models from code execution, the first step is to record trace data. This includes a set of objects, a set of attributes for each object, a location and type for each object, a set of messages, and timestamp for each event. This dynamic information is obtained through source code instrumentation, a process in which additional code fragments are inserted into the code being analyzed. An execution trace model, instance of TRACEM, is obtained each time the program runs. A set of trace models is then obtained by running the program with a significant set of test cases. These models will be analyzed to obtain relevant dynamic information

96

C. Pereira et al.

that, in combination with static information, can be used to improve the reverse engineering process. Then, the resulting models would be the starting point for the forward engineering process.

4 TRACEM Metamodel TRACEM allows representing the trace information under a standard representation supporting extensibility and interoperability. TRACEM was implemented in the Eclipse Modeling Framework [16] that is the core technology in Eclipse for MDE. Figure 2 and Fig. 3 partially show this metamodel. The abstract syntax of TRACEM metamodel is described by UML class diagram (Fig. 2) augmented with OCL restrictions (Fig. 3). Although this metamodel is mainly focused on the representation of interactions between objects in terms of method calls, it can be extended to represent other types of relationships. The main metaclasses are: • Trace is an abstract metaclass that describes common features that different types of traces may have. This class allows extending the model to consider other types of traces, such as traces of inter-process communication and system-level relationships. Each instance has a name, start time, and end time. • ExecutionTrace is a subclass of Trace that represents a particular execution of a program on a specific test case. Each instance owns a set of objects and a sequence of statements discovered during the program execution. • Location is an abstract metaclass that represents a storage that holds an object. Subclasses of Location are LocalVariable, Attribute and FormalParameter. Each Location instance has a name and an allocated object which may be changed throughout the program execution. • ExecutionSentence is an abstract metaclass that specifies program instructions carried out during the program execution, such as a method call, constructor or assignment, instances of MethodCall, Constructor and Assignment respectively. • Object is a metaclass that represents objects created during the program execution. Each instance has an identifier, creation time, destruction time, and owns attributes and objects. It can be stored in different locations during the program execution. • Call is an abstract metaclass that represents both method calls and constructors. Each instance has a name and owns a subtrace. • MethodCall is a metaclass that represents actual method invocations that are executed during program execution. Each instance has a caller, a target and can have actual parameters and a returned object, all of them are Object instances. • Constructor is a metaclass that represents invocations to the class constructor that is automatically called when an object is created.

Toward an Execution Trace Standard: An MDE Approach

Fig. 2. TRACEM: abstract syntax

Fig. 3. TRACEM: OCL restrictions

97

98

C. Pereira et al.

5 Recovering Execution Traces from Code: An Example Dynamic analysis is exemplified in terms of the same case study used in Tonella and Potrich [17], which describe a reverse engineering approach based on classical compiler techniques and abstract interpretation to obtain UML diagrams from Java object-oriented code. In the case study, the Java program eLib supports the main functions of the library (Fig. 4). It contains an archive of documents of different kinds, books, journals, and technical reports. Each of them has specific functionality. Each document can be uniquely identified, and library users can request documents for loan. To borrow a document, both user and document must be verified by the library. Users can borrow up to a maximum number of documents; while books can be borrowed by any user, journals can only be borrowed by internal users, and technical reports can be consulted but not borrowed. A detailed description may be found at Tonella and Potrich [17]. We use the same case study in previous work to show the extensions proposed with respect to the approach of Tonella and Potrich [8–10]. In this article, the same example is used in order to highlight the contributions of dynamic analysis within the proposal framework.

Fig. 4. Source code of the eLib program

Dynamic analysis produces a set of execution trace instances, one for each test case. Although each instance represents a different interaction between objects, there is no guarantee that all interactions are considered. Conversely, in static analysis, all possible behaviors are represented. As an example, Fig. 5 partially shows an instance of the trace metamodel obtained from the execution of the method borrowDocument resulting in a successful loan of the book1 (instance of Book) to the internalUser1 (instance of InternalUser). Each time an object is created, it is identified by the class name concatenated with a numeric value.

Toward an Execution Trace Standard: An MDE Approach

99

Fig. 5. Trace model: a successful loan

5.1 Dynamic Information Impact The execution traces provide information that allows complementing the models obtained through static analysis. Regarding the UML behavioral diagram, it is possible to identify: • The current object that invokes the method (caller) and the one that receives the message (target). • The current parameter linked to each formal parameter, that is, which object is actually stored in each formal parameter for a particular trace.

100

C. Pereira et al.

• The object flows, that is to say, how an object is passed from one location to another, starting from where it is created. • The kind of dependence relationship between use cases, include or extend. The common traces reflect primary flow and allow detecting possible include relationships between use cases, whereas other traces may correspond to extend relationships. Regarding the UML structural diagram, it is possible to identify: • The current objects stored in the generic collections. Containers with weak types (parameterized in abstract types or interfaces) complicate the reverse engineering process. Relationships between classes, such as associations and dependencies, are determined from the declared type of attributes, local variables, and parameters. When containers are involved, the relations to retrieve must connect the given class to the classes of the contained objects. As an example, if an attribute type is a generic container, the relationship connects the given class to the class of the contained object, however, this information is not directly available in the source code, as a result, the relationship is not depicted in a UML class diagram. Identifying the type of objects that a collection actually stores allows obtaining more complete and accurate class diagrams. • Composition relationships by analyzing the lifetime of the referenced objects, since the metamodel allows recording the creation and destruction time of each object. Within composition, the lifetime of the part is managed by the whole, in other words, when the whole is destroyed, the part is destroyed along with it. Moreover, the execution traces provide information that allows detecting functionality that may never be executed. To exemplify the aforementioned, some results of the execution traces obtained from test cases are analyzed below. 5.2 Enhancing Diagrams As we mentioned before, the framework proposes obtaining models statically. In previous work we detailed how to recover class, interaction, and use cases diagrams. Next, the static diagrams obtained, and how they can be improved through dynamic information are presented. Enhancing Behavioral Diagrams. A detailed description of how to obtain sequence diagrams from source code of methods is presented in [9]. Figure 6 partially shows the diagrams obtained by static analysis corresponding to borrowdocument, verifydata, and addloan methods, in particular. In these diagrams appear instances of types, such as doc and d of document type (allocations are enclosed in boxes in Fig. 6). However, there is no information about the allocated object in each instance.

Toward an Execution Trace Standard: An MDE Approach

101

From dynamic analysis, trace model allows identifying the object flow through the allocatedObject reference, then it is possible to realize that the object book1 allocated in the formal parameter “doc” of the borrowDocument method, is the same object as the one allocated in: • the formal parameter “d” of the verifyData method; • the actual parameter “doc” of the constructor that create a new Loan object called loan1; • the class attribute “doc” of the loan1 object; • the local variable “doc” in the addLoan method. From this information, UML behavioral diagrams, such as interaction or collaboration, will show only one object of Document type even if there is more than one variable of this type. The same situation occurs with objects internalUser1 and loan1. The contribution of dynamic analysis results in more accurate diagrams in terms of identifying current objects that send and receive messages.

Fig. 6. Sequence diagrams

Enhancing Use Case Diagrams. A detailed description of how to obtain use case diagrams from source code of methods is presented in [8, 10]. Figure 7 partially shows some use cases and their relationships obtained by static analysis, which allows obtaining generalization and dependency relationships, however the particular kind of dependency cannot be distinguished. Execution traces allow improving these diagrams. The trace

102

C. Pereira et al.

models resulting from the execution of a set of test cases allow distinguishing primary from alternative paths. As we mentioned before, the common sub-trace reflects primary flow and allows detecting include relationships between use cases. The other sub-traces (alternative paths) may correspond to extend relationships. Thus, in the case of borrowdocument method execution, it can be observed that the verifydata method is executed on each execution trace. In this particular case, both methods are considered use cases through static analysis, then, the dynamic analysis infers that dependency relationship between them may be an include.

Fig. 7. Use cases diagram

Enhancing Class Diagrams. Modisco was used to recover uml class diagrams from elib code. Figure 8 partially shows the elibrary package obtained by static analysis, some classes and their properties and operations are depicted in particular. The class library owns documents, users and loans, all of them stored in generic collections. As

Toward an Execution Trace Standard: An MDE Approach

103

an example, the Fig. 8 highlights the property documents of map type from which the association between the classes library and map (a_documents_library) is deduced. In trace models, the documents collection will only contain objects of document subtypes, thus, an association between library and document will be inferred. On the other hand, by analyzing the creation and destruction times of the library1 object and the objects of type Loan added to the loans collection of Library, it is possible to infer that the association between Library and Loan is indeed a composition.

Fig. 8. Class diagram

6 Related Work The search for related work on the definition of metamodels for representing execution traces did not yield many results, which was one of the reasons for advancing our approach to contribute to the construction of a standard. Reverse engineering models from legacy code is not new in software engineering. Many works have contributed to the reverse engineering of object-oriented code, in particular dynamic analysis techniques. [17] and [18] perform dynamic analysis to complement static analysis of Java code. Trace information obtained from program execution is represented by UML models.

104

C. Pereira et al.

With the growing adoption of MDE principles and techniques, which consider models as first-class entities in all processes, new approaches for reverse engineering have been developed. Among the proposals that propose metamodels to represent the traces of execution it is worth mentioning [19] and [20]. The former proposes an open framework for reverse engineering of executable behavior from existing software code. The standard OMG fUML language is used as an executable pivot format for dynamic analysis. The authors use transformations to generate fUML models from code, which can then be executed directly by the fUML VM. They extended this virtual machine to record execution traces as instances of a simple metamodel. In [20], the authors present the first steps towards extending MoDisco [21], which injects the program structure into a model, with capabilities for dynamic program analysis. The authors propose to add execution trace information to the model during program execution. The resulting model conforms to the impact analysis metamodel that authors introduce. Unlike these works, we propose to represent traces as a new domain in software engineering, independent of any language and providing more expressiveness than approaches that use UML models to represent the dynamic analysis results. Dynamic analysis is useful not only in reverse engineering, but also in software analysis, software maintenance, software performance, testing, etc. In [22], the authors present a graph-based format, called Compact Trace Format (CTF), for representing trace information of routine calls with the aim to develop a standard format for exchanging traces among analysis tools. Some works describe model-driven approaches in specific domains involving dynamic analysis. [23] focuses on reverse engineering AUTOSARcompliant models using dynamic analysis from traces of a real-time system in the automotive domain. In [24], authors present a metamodel for representing trace information generated from High Performance Computing applications. [25] presents methods for dynamic analysis applied to energy-aware software engineering. In this approach execution traces are modeled within the source code model generated by MoDisco. The author uses the OMG standard Structured Metrics Metamodel (SMM) to model all information collected through software analysis, either statically or dynamically. The resulting models provide relevant energy-related information to improve the implementation of the system. In contrast to these related works, we propose a MOF-compliant trace metamodel for representing execution traces. This metamodel is the basis for dynamic analysis within a framework in the MDE context, specifically based on ADM standards.

7 Conclusions In the MDE context, particularly in the area of software modernization, OMG has defined several standards to represent information of existing software systems. However, there is no standard to represent runtime information, for this reason, we promote the creation of a standard that allows the specification of dynamic information independently of any programming language. Thus, trace analysis can be considered as a new domain of the software engineering. This article presents the basis for dynamic analysis in the reverse engineering process by integrating static analysis, dynamic analysis, and metamodeling in the ADM context. The main contribution is TRACEM, a metamodel that captures the concepts

Toward an Execution Trace Standard: An MDE Approach

105

and relationships present in the information obtained from program execution. It allows the specification of execution trace information under a standard representation. Thus, the traces are considered as first-class entities that provide relevant dynamic information. This information can be used for different purposes such as reverse engineering or program analysis. Our objective is to combine the strengths of static and dynamic analysis within an MDE framework to improve the whole reverse engineering process. TRACEM together with the metamodels of the different programming languages will allow the automatic instrumentation of code and, from this, the injection of trace models that allow decoupling from source technologies. However, injectors and metamodels for different programming languages are not available and must be implemented. We foresee experimenting with different programming languages to implement injector prototypes. We will also investigate execution trace analysis techniques to understand and manipulate the models obtained from program executions.

References 1. Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. 2nd edn. Morgan & Claypool Publishers (2017) 2. Architecture-Driven Modernization (ADM), http://www.omg.org/adm, Accessed 2023 Feb 14 3. Knowledge Discovery Metamodel (KDM), Version 1.4, OMG Document Number: formal/2016–09–01, http://www.omg.org/spec/KDM/1.4 (2016) 4. Abstract Syntax Tree Metamodel (ASTM), Version 1.0, OMG Document Number: formal/2011–01–05. Standard document URL: http://www.omg.org/spec/ASTM (2011) 5. Model-Driven Architecture (MDA), http://www.omg.org/mda/, Accessed 2023 Feb 14 6. OMG Meta Object Facility (MOF) Core Specification, Version 2.5.1, OMG Document Number: formal/2019–10–01. https://www.omg.org/spec/MOF/2.5.1 (2019) 7. OMG Unified Modeling Language (OMG UML), Version 2.5.1, OMG Document Number: formal/2017–12–05. http://www.omg.org/spec/UML/2.5.1 (2017) 8. Favre, L., Martinez, L., Pereira, C.: Reverse engineering of object-oriented code: an ADM approach. In: Handbook of Research on Innovations in Systems and Software Engineering, pp. 386–410. IGI Global (2015) 9. Martinez, L., Pereira, C., Favre, L.: Recovering sequence diagrams from object-oriented Code - an ADM approach. In: Proceedings of the 9th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE 2014), pp. 188–195 (2014) 10. Pereira, C., Martinez, L., Favre, L.: Recovering Use Case Diagrams from Object-Oriented Code: an MDA-based Approach. Int. J. Softw. Eng. (IJSE), 5 (2), 3–23 (2012) 11. Pereira, C., Martinez, L., Favre, L.: TRACEM - Towards a standard metamodel for execution traces in model-driven reverse engineering. In: Libro de Actas del XXVIII Congreso Argentino de Ciencia de la Computación (CACIC 2022), pp. 272–281 (2023) 12. Object Constraint Language (OCL), Version 2.4, OMG Document Number: formal/2014– 02–03, Standard document (2014) http://www.omg.org/spec/OCL/2.4 13. XML Metadata Interchange (XMI) Specification, Version 2.5.1, OMG Document Number: formal/2015–06–07, Standard document (2015) http://www.omg.org/spec/XMI/2.5.1 14. Query/View/Transformation Specification (QVT), Version 1.3, OMG Document Number: formal/2016–06–03, Standard document (2016) http://www.omg.org/spec/QVT/1.3 15. Ernst, M.: Static and dynamic analysis: synergy and duality. In: Proceedings of ICSE Workshop on Dynamic Analysis (WODA 2003), pp. 24–27 (2003)

106

C. Pereira et al.

16. Eclipse Modeling Framework (EMF), http://www.eclipse.org/modeling/emf, Accessed 2023 Feb 14 17. Tonella, P., Potrich, A.: Reverse Engineering of Object-Oriented Code. Monographs in Computer Science. Heidelberg: Springer-Verlag (2005) https://doi.org/10.1007/b102522 18. Systa, T.: Static and Dynamic Reverse Engineering Techniques for Java Software Systems. Ph.D Thesis, University of Tampere, Report A-2000–4 (2000) 19. Bergmayr, A., Bruneliere, H., Cabot, J., Garcia, J., Mayerhofer, T., Wimmer, M. fREX: fUML-based reverse engineering of executable behavior for software dynamic analysis. In:IEEE/ACM 8th International Workshop on Modeling in Software Engineering (MiSE), Austin, TX, pp. 20–26 (2016) 20. Béziers la Fosse, T., Tisi, M., Mottu, J.-M.: Injecting Execution Traces into a Model-Driven Framework for Program Analysis. In: Seidl, M., Zschaler, S. (eds.) STAF 2017. LNCS, vol. 10748, pp. 3–13. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-74730-9_1 21. MoDisco, https://www.eclipse.org/MoDisco, Accessed 2023 Feb 14 22. Hamou-Lhadj, A., Lethbridge, T.C.: A metamodel for the compact but lossless exchange of execution traces. Softw. Syst. Model. 11, 77–98 (2012) 23. Sailer, A.: Reverse Engineering of Real-Time System Models from Event Trace Recordings. University of Bamberg Press (2019) 24. Alawneh L., Hamou-Lhadj A., Hassine J.: Towards a common metamodel for traces of high performance computing systems to enable software analysis tasks. In: IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER 2015), pp. 111–120 (2015) 25. Beziers La Fosse, T.: Model-driven methods for dynamic analysis applied to energyaware software engineering. Software Engineering [cs.SE]. Ecole nationale supérieure Mines-Télécom Atlantique (2021)

New Horizons for Metamorphic Relationships in Formal Verification Fernando Asteasuain1,2(B) 1

2

Universidad Nacional de Avellaneda, Buenos Aires, Argentina [email protected] Universidad Abierta Interamericana - Centro de Altos Estudios CAETI, Buenos Aires, Argentina

Abstract. In this work we broadened the impact of the so called Metamorphic relationships (MR’s) in the formal verification phase. We showed the potential of our behavioral framework called FVS (Feather Weight Visual Scenarios) to successfully denote metamorphic properties in diverse, complex and meaningful domains such as UAV’s flying missions and operating systems for On Board Computers (OBC) for nano satellites. We employed MR’s to validate behavior in a BIG-DATA context, where possible a large amount of data and information seen as traces must be verified but also a novel way to relate different goals and UAV’s configurations in the context of the dynamic adaption of AUV’s missions due to changes in the requirements. In addition, we explored complementary behavior as a possible source for obtaining MR’s.

Keywords: Metamorphic behavior Planning

1

· Adaptive Systems · Temporal

Introduction

Software engineering can be described as a set of techniques, tools and processes aiming to produce quality software while minimizing its possible flaws and errors. Typical software engineering phases include, among others, exploring and specifying system requirements, to analyze and design its features, to describe high level or architectural interactions between the system’s main components, to implement it in some framework or language, and to validate and verify the expected behavior of the system. Since it was born, Software Engineering has been evolving to cope with the challenges that new software visions and new computer software paradigms bring along. Just to mention two examples architectural aspects were incorporated as a separate and a stand-alone software engineering phase to specify high level components’ interactions as the complexity of software system grow and grow [34]. As a second example, agile methodologies [10] were born to leverage the bureaucracy involved in software development processes. c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 107–122, 2023. https://doi.org/10.1007/978-3-031-34147-2_8

108

F. Asteasuain

Unarguable the data science big bang can be pointed out as one of the most revolutionary domains in the compute science field in the last few years. Nowadays almost any modern device can send and receive information and as a consequence a huge amount of information is out there available to be explored and analyzed. Important software areas like Machine Learning [28], Data Science [1] or BIG DATA [31] are gaining each day more relevance in order to extract, scrutinize and learn from gathered data. These areas deal with distinctive characteristics and requirements. Some of them include handling volatile, unstructured, diverse and heterogeneous tons of data, managing new ways of dealing with information flow and communication between components and a much more rigorous approach to cope with performance and availability concerns. In this context, some Software Engineering techniques need to evolve somehow to face these new elements [11,14,22–24,30,36]. Formal verification and validation has been pinpointed as one of the areas that more urgently need to be tackled. Data Science systems need to be formally verified. According to [17,23], only two of nearly one hundred analyzed approaches addressing new software engineering methods for big data were related to formal validation. These kinds of systems have been defined as “non testeable’ software [17,30] because the lack of a proper testing oracle to check their behavior. The problem can be stated as: How the new version of the system, which now includes the analyzed information, can be tested? How can the new system be checked against its expected behavior? How can the expected behavior be specified? How can the software engineer verify if the system is producing the expected outputs? Metamorphic Relationships (or more simply MRs) [16,33] have been recently applied as a way to handle this problematic issue. The objective of MR’s is to construct connections between behavior and data that help to verify the system, linking the old version of the system with its newer version. Probably the most iconic example is a machine learning system focusing on sentiment analysis classifying a given sentence as positive, neutral or negative. So as to verify the system MR’s are defined in the following manner: for positive sentences, a new sentence is build using synonyms of the sentence’s words. This new word should be classified as positive in the newer version of the system. Similarly, if the new sentence is build using antonyms instead, then the expected outcome should be negative. However, how to specify and define the MR’s for every system is an extremely arduous and error-prone task. Also, defining how many MR’s are enough is also a tricky point [17]. In [3] we explore FVS (Feather Weight Visual Scenarios) [5–7] as an specification language to model and specify MR’s. FVS is a very simple, graphical and declarative language which holds a very flexible and expressive power notation. We now build on the top of that work expanding the horizon for MR’s in the formal verification phase. In this work we applied MR’s in meaningful domains: Adaptive Systems and Temporal Planning for UAV’s (Unmanned Aerial Vehicle) [25,38–40], and Operating Systems for OnBoard Computers (OBC) for nano satellites such as CubeSats [32]. This shows the potential of MR’s as a powerful technique to formally verify a system and the applicability of FVS as an speci-

New Horizons for Metamorphic Relationships in Formal Verification

109

fication language for MR’s. We employed MR’s in two orthogonal styles: in the usual manner as a way to build a verification oracle but also a a way to relate two different goals and configuration for UAV’s, which is a very useful feature when dealing with Adaptive Systems. Finally, we inspected complementary behavior as a valuable source to define MR’s. This is a very reachable feature in FVS since it can be automatically generated [8,13]. 1.1

Summary

The main contributions of this work can be outlined as: – – – –

Showing the potential of FVS to describe MR’s for UAV’s Adaptive Systems. Showing the potential of FVS to describe MR’s for UAV’s Temporal Planning. Showing the potential of FVS to describe MR’s for nano satellites’ OBC. Exploring the possibility to analyze different goals and UAV’s configurations employing MR’s – Automatic generation of MR’s reasoning about complementary behavior. The rest of this work is organized as follows. Section 2 presents FVS, and some basic notions of the techniques employed such as Adaptive Systems, Temporal Plannings and OBC’s. The next three Sections describe all the case of studies: Sect. 3 is focused on FVS and MR’s for Adaptive Systems, Sect. 4 deals with Temporal Planning and Sect. 5 handles MR’s for a particular OBC operating systems. Section 6 presents some observations and final remarks regarding the analyzed examples. Finally, Sect. 7 outlines related work and future lines of research that may continue this work whereas Sect. 8 concludes.

2

Background

In this section we give some preliminaries notions about FVS, Adaptive Systems, Temporal Planning and OBC. 2.1

FVS

We now briefly introduce FVS main features. The reader is referred to [5] for a formal characterization of the language. FVS is a graphical language based on scenarios. Scenarios are partial order of events, consisting of points, which are labeled with a logic formula expressing the possible events occurring at that point, and arrows connecting them. An arrow connecting two points simply indicates a precedence relationship. The events occurring at the origin of arrow occur before the events occurring at the destiny point of the arrow. For instance, in Fig. 1-(a) A-event precedes B -event. Sometimes is necessary to refer to the very next or previous occurrence of an event. This is shown graphically with a double ended arrow (see Figs. 1-(b) and 1-(c)). Precedence relationship can be labeled to restrict behavior between events. For example, consider the FVS scenario in Fig. 1-d. This scenario is stating that an A-event precedes B -event

110

F. Asteasuain

such that C-event does not occur between them. FVS features aliasing between points. Scenario in Fig. 1-e indicates that a point labeled with A is also labeled with A ∧ B. It is worth noticing that A-event is repeated on the labeling of the second point just because of FVS formal syntaxis. Finally, two special points are introduced as delimiters of the language: a big black circle representing the beginning of the execution of the system and rounded version standing for the end of an execution (see Fig. 1-f).

Fig. 1. Basic Elements in FVS

We now introduce the concept of FVS Rules, a fundamental constructor of the language. FVS Rules take the form of an implication: an antecedent scenario and one or more consequent scenarios. They work following this concept: whenever a trace “matches” a given antecedent scenario, then it must also match at least one of the consequent ones. The antecedent is a common substructure of all consequents, enabling complex relationship between points in antecedent and consequents: our rules are not limited, like most triggered scenario notions, to feature antecedent as a pre-chart where events should precede consequent events. Thus, rules can state expected behavior happening in the past or in the middle of a bunch of events. Graphically, the antecedent is shown in black, and consequent ones in grey. Since a rule can feature more than one consequent, elements which do not belong to the antecedent scenario are numbered to identify the consequent they belong to. An example is shown in Fig. 2. The rule describes a requirement for the FreeRTOS1 operating system used in OBC: the system must start in the Boot phase of the operating system, and not in the Scheduling or the ProcessingTasks phase.

Fig. 2. An FVS rule example 1

https://www.freertos.org/.

New Horizons for Metamorphic Relationships in Formal Verification

111

We now introduce the concept of anti-scenarios. Anti-scenarios can be automatically generated from rule scenarios. Roughly speaking, they provide valuable information for the developer since they represent a sketch of how things could go wrong and violate the rule. The complete procedure is detailed in [8,13], but informally the algorithm obtains all the situations where the antecedent is found but none of the consequents is feasible. For example, a possible anti scenario for the previous rule in Fig. 2 is shown in Fig. 3. In this anti scenario a Scheduling event or an ProcessingTasks event occur prior the occurrence of a Boot event, thus violating the rule in Fig. 2.

Fig. 3. An anti-scenario example

2.2

Adaptive Systems

Adaptive Systems can be defined as systems that can change their behaviour to account for conditions that were not foreseen at design time [40]. There is a tremendous challenge involved in these kind of systems: goals and configuration of the system must be able to change dynamically. In order to fulfill this objective a meticulous and rigourous architectural approach must be carefully designed. Different layers of abstraction are usually introduced to produced satisfactory results. Lower layers deal with ordinary events while upper layers handle the non-trivial transition going from the old specification to the new specification. A clear example of such approaches is described in [40], presenting a hybrid control architecture that supports runtime swapping of plans, and runtime binding and unbinding of hybrid components. In that work a motivating example is given. Suppose a UAV is initially on a photographic mission over a certain region. Goals and configuration in the form of temporal logics are provided so that the controller of the UAV can carry on with its mission successfully. While the mission is on course, a missing person alert is issued. If the UAV was designed as an adaptive system, its mission objectives can be dynamically modified without the need for the UAV to return to the central base to be re started. 2.3

Temporal Planning

Temporal planning [39] guarantees that a certain automated device such as robot or an UAV will succeed in its task as long as certain explicit and implicit assumptions about the robot’s operating environment, sensors, and capabilities hold. A

112

F. Asteasuain

given plan can fail if any of the assumptions are violated at runtime. An illustrative example is facilitated in [39]. The system is in charge of an UAV taking photographes in a certain region. An possible planning assumption is that requesting a photograph upon flying into a discrete region will be actually taken before exiting that region. Another possible assumption is that a photograph will completely cover a discrete region if the plane’s roll and pitch are within certain bounds. These conditions are dynamically verified in [39] employing a so called monitor that checks that the specified conditions are met during execution. 2.4

OBC and Nano Satellites

In the past ten years the nanosatellite industry grow by a factor of 10x, from as few as 20 satellites in 2011 to nearly 200 in 2019, and it is estimated that 1800 to 2400 nano/microsatellites will need to be launched over the next 5 years [18, 38]. In particular, CubeSats, have turned out lately as one of the most popular microsatellites [32]. The CubeSat program was initiated at Stanford University in 1999 for the purpose of building a low-cost and low-weight satellite. There are a plethora of different domains where CubeSats satellites are directly involved: communications, earth remote sensing, space tethering, biology, astronomy, space weather exploration and planetary science [32], just to mention a few. On BOARD Computers (OBC) must be carefully designed, planned, developed and verified. For example, battery consumption and other resources are extremely important since the services the satellites provide heavily rely on them. An OBC is in charge of the all the satellites services, it monitors them to ensure their health, and also monitors the status of all the subsystems. An OBC also interacts with the ground station to send the required telemetry data and satellite status [19]. One of the most important aspects to decide when developing a OBC is the operating system to be installed on it. One of the most widely operating systems used is FreeRTOS. As described on its website, FreeRTOS, originally created as a real time operating system for micro controllers, is distributed freely under the MIT open source license, and includes a kernel and a growing set of IoT libraries suitable for use across all industry sectors. In [4] the formal verification of the FreeRTOS operating system using FVS as the specification language is fully provided.

3

FVS and Metamorphic Relationships(MRs) for UAV’s Missions Adaptation

In this section we define MRs for different planning goals and behavior for UAV’s missions. The analyzed system is based on the example fully described in [40]. In that work, several goals and UAV’s configurations are properly defined so that the artifact can adapt to new missions in a dynamic way. In this example, the UAV serves as a delivery vehicle transporting packages among some locations. In

New Horizons for Metamorphic Relationships in Formal Verification

113

particular, the mission for the UAV is the following. There are three locations, namely A, B and C ; and three packages to be delivered: P1, P2 and P3. Package P1 must be delivered to C from A, P2 to A from C and finally, P3 to C from B. Additionally, it is required that the UAV must not move between locations without a package to preserve a minimum weight requirement. An initial plan obtained to achieve UAV’s goals is the following: Starting from location A, the it grabs P1 and goes to location B, it grabs P3 and then carrying P1 and P3 goes to location C and releases P1 and P3 there. Finally, the UAV grabs P2, goes to location A and releases P2 there. We first model this initial behavior in FVS and then we define MR’s relating old and new plans later in the next subsection. Following the vocabulary introduced in [40] we employ some of the followings events in the specification: atLocation (the UAV is the mentioned location), grabPi (the UAV grabs package Pi ) or releasePi (the UAV releases package Pi ). The first two rules (depicted in Fig. 4) defines the expected behavior for transporting package P1. These FVS rules say that packaged P1 must be grabbed by the UAV when arriving at location A, and must be released when arriving to location C.

Fig. 4. FVS rules modeling UAV delivery mission for P1 packages

Similarly, rules for packages P2 and P3 are show in Fig. 5. Now we specify the requirement that establish that the UAV must be always transporting at least one package. The rule in Fig. 6 shapes the behavior starting from location A and ending in location B or C. We use the meta event Pi standing for any type of packages P1, P2 or P3. In few words, the rule says that in every flight starting from location A carrying an package, the UAV must arrive in a different location without releasing it. Two analogues rules using location B and location C as the origin point should be added to complete the requirement specification. 3.1

MRs for UAV’s Adaptation to New Plans

When new requirements are introduced in the UAV’s missions’ new properties, new planning strategies and new UAV configurations may be needed. We now

114

F. Asteasuain

Fig. 5. FVS rules modeling UAV delivery mission for P2 and P3 packages

Fig. 6. The UAV must be always carrying a package

define MR’s establishing well founded relationships between different plans and behavior. Following the terminology introduced in [40] we use events as OldSpec and NewSpec, representing the old specification (prior the introduction of the new requirements) and new specification (the new configuration for the UAV). For example, a new location D can be introduced in the system described earlier, with new delivering instructions: package P1 must be carried from location A to location D and package P3 from B to D. Instructions for packages P2 remain unchanged. The new planning for the UAV is the following: Starting from location A, grabs P1 and goes to location B, grabs P3, then with P1 and P3 goes to location C, it grabs P3 and flying with the three packages arrives at D where P1 and P3 are released. Finally, the UAV grabs P2, goes to location A and releases P2 there. These changes imply that some rules shaping the behavior for translating packages must be modified while others should not be altered. In particular, the new specification implies that new rules for packages P1 and P3 must be

New Horizons for Metamorphic Relationships in Formal Verification

115

introduced while rules for P2 suffer no changes. We introduce MR’s relating old and new specification. Roughly speaking, if a behavioral property P is changed   introducing a new property P , then only P is valid in the new specification. If P is not modified, then P is valid in the new specification. This general scheme is described in Fig. 7.

Fig. 7. MRs relating old and new specifications

As explained in [40] in some cases the new specification can not be started immediately due to consistency issues between old and new goals. For example, a statement saying that the UAV artifact can not carry more than two packages due to weight requirements can affect the new planning since three packages are carried out together at some point in the new specification. This is solved introducing a delay between the moment the old specification is dropped and the new specification takes charge. In this delay status the conditions shaping the behavior of the UAV’s flight are relaxed so that, for example, a package is released in the next location, therefore waiting until the new specification can be loaded. This can be modeled in FVS as a MRs between specifications as shown in Fig. 8.

Fig. 8. MRs relating delays betweens specifications

116

4

F. Asteasuain

FVS and Metamorphic Relationships(MRs) for UAV’s Temporal Planning

In this section we define MRs in a more traditional way, employing FVS as a BIG DATA oracle for traces verification. The considered system is based also in defining specifications for UAV’s flights, but in this case we focus on temporal planning rather than dynamically switching between specifications like it was shown in the previous Section. As detailed in [39], temporal task planning guarantees a robot will succeed in its task as long as certain explicit and implicit assumptions about the robot’s operating environment, sensors, and capabilities hold. The analyzed system in this Section is based on the example introduced in [39]. An UAV artifact must provide surveillance and search and rescue services within a certain region, but considering a non fly zone. Two conditions are monitored in [39]: 1) avoid entering the non fly zone, and, if entered, the degree of violation as the distance inside the no-fly zone mustb me measured and 2): to assure that the area claimed to be covered by the UAV is actually covered, giving no space to measuring errors to occur. Given the specification given in [39] for the UAV’s expected behavior we introduce two simple MR’s. The objective is very simple: if a target is classified as being in a non fly zone, we change its coordinates so that its included in the fly zone. Similarly, if a person is detected we change the conditions so that the person is not included in the next version of the system. This follows a classic technique to obtain MR’s: cases with similar conditions should belong in the same category and cases with opposite conditions should belong in opposite categories. In this Section we focus only in opposite behavior but analogous rules can be introduced considering also similar behavior. Two FVS rules are shown in Fig. 9 modeling two MR’s for the UAV’s temporal specification. The rule in the top of Fig. 9 says when the position of the UAV is altered (changing not being in the non fly zone to being in the fly zone) then the new result should be ruled out as a fly zone violation. Similarly, rule in the bottom of the Fig. 9 alters an image to that a person is no longer detected.

Fig. 9. MRs for temporal planning

New Horizons for Metamorphic Relationships in Formal Verification

5

117

FVS and Metamorphic Relationships(MRs) for OBC Operating Systems

In this section we build some MR’s in a totally different domain: operating systems for OBC designed for nano satellites missions. The behavior of the FreeRTOS Operating System employing FVS as the specification language is fully detailed in [4]. In this case we build MR’s considering the exact opposite behavior of the rules. Since FVS can automatically generate anti-scenarios for every rule, MR’s can be automatically generated. This clearly constitute an attractive feature. We took some of the rules specified in [4] and automatically obtain MR’s by generating anti-scenarios for every rule. For example, the FVS scenario in the top of Fig. 10 exhibits a behavior that should be classified as an error: the operating system does not start in the boot phase. This MR is an anti scenario for the rule demanding that the system should indeed starts in the boot phase. The scenario in the middle of Fig. 10 is another anti-scenario and should be considered as an error: the operating systems starts to process tasks without entering the scheduling phase. Finally, the scenario in the bottom of Fig. 10 illustrates an scenario which violates the priority-based scheduling policy of the operating system.

Fig. 10. MRs as FVS anti-scenarios

6

Discussion

In Sects. 3, 4 and 5 we illustrate how FVS can be used as the specification language to successfully denote metamorphic behavior in diverse, complex and

118

F. Asteasuain

meaningful domains such as UAV’s flying missions and operating systems for On Board Computers in nano satellites design. We also employed MR’s in two flavours: in Sect. 3 we specify MR’s to relate different goals and UAV’s configurations in the context of a challenging area such as the dynamic adaption of AUV’s missions due to changes in the requirements. In Sect. 4 we continue exploring UAV based system, but we built MR’s in a more traditional way: to validate behavior in a BIG-DATA context, where possible a large amount of data and information seen as traces must be checked. Finally, in Sect. 5 we moved to validate OBC software. In particular we focused on one popular operating called FreeRTOS. We took advantage of FVS’s possibility to automatically generate anti-scenarios to build MR’s that behave in the exact opposite way to the rules defining the expected behavior of the operating systems. Exploring the opposite behavior of a requirement is an useful way to obtain MR’s. Based on these experiments we can conclude that FVS is an appealing framework to specify metamorphic behavior. FVS expressive power and flexibility is shown in significative domains, from UAV’s flying mission to OBC operating systems. In addition, we showed how to denote MR’s in two ways: to relate different UAV’s configurations and to validate outputs where the vast amount of information make it hard to define. MR’s can be automatically generated as anti-scenarios. When manually defining MR’s as FVS rules all the desirable characteristics of a declarative and graphical notation shine: behavior can be intuitively explored and analyzed by gathering the desired information from the graphical scenarios. Finally, consistency checking of requirements and MR’s can be easily checked combining FVS with model checkers. For example, employing tools like GOAL [37] or [26] we can perform behavioral synthesis [12] and classic behavioral verification [5].

7

Related and Future Work

A very appealing technique to define MR’s for BIG DATA systems is presented in [17]. The foundation of this technique is to specify an initial set of MR’s and start an iterative process on which MR’s are refined. The process is automated, sound and correct. The experimentation of the research is focused on a BIG DATA service implementation. This service, called Cell Morphology Assay (CMA) was designed for modeling and analyzing 3D cell morphology and mining morphology patterns extracted from diffraction images of biology cells. The implementation is able to categorize a huge amount of biology cells images. We believe we can replicate this procedure using FVS, since our language support the refinement operation [3], which constitutes one possible future research line to continue our work. Contrary to FVS, the possibility to check consistency between MRs is not available in this approach. Other approaches focused on metamorphic properties are [2,16,27]. These options are mostly focused on implementation details such as the actual framework tool to deploy the tests. Our approach is addressing a previous phase which

New Horizons for Metamorphic Relationships in Formal Verification

119

is the exploration and specification of MRs. However, one possible combination is to graphically denote tests as FVS scenarios and trying to explore automatic generation of test cases. Adaptive System in UAV’s control missions is tackled on [40]. This work exhibits how controller synthesis can be used both to guarantee correct transitioning from the old to the new mission goals including architectural reconfiguration to handle new software actuators and sensors if necessary. Adaptation can occur at various levels of abstraction to respond to many different kinds of changes. In particular, [40] deals with mobile robot adaptation that include dynamic responses to changes in the high-level goals that the robot must achieve. Goals and configurations are specified using temporal logics. A very interesting framework based on hybrid components is in charge of performing all the necessary architectural changes in the system to adapt to the new requirements. We were able to reproduce and specify the behavioral specification for some examples of adaptive systems described in [40]. We denote a set of MR’s that could be used to relate, explore, and verify goals and requirements from the old and the new specification. We believe this can be a plus in this research line. Temporal planning for UAV’s is addressed on [39]. A monitoring process is implemented to verify that implicit and explicit assumptions of the environment are not violated. If some violation of the requirements occur, it is shown that under certain conditions some corrective actions can be taken to re enter in safe state. The approach can be classified under the Runtime Verification label, a formal methods technique that studies how to synthesize monitors from highlevel formal specifications of complex properties [21,39]. In our experimentation we showed how FVS can be used to model MR’s for temporal planning and describe how them can be used as a trace oracle and validation in BIG DATA systems. The specification in [39] is based on the HLOLA specification language [15, 20]. HLOLA is a very rich, expressive and powerful language with the possibility to realize automatic validation tasks. It would be interesting trying to combine this language with FVS’s graphical flavour. Among other future lines of research to continue this work we would like to take one step further FVS’s specifications and put them in action in some simulated or real scenarios as described in [39,40]. For example, a possible tool to consider is ArduPilot Software-In-The-Loop (SITL) UAV simulator as in [9,35]. We would also like to explore the interaction between FVS and other tools. For example, [2] extracts MR in runtime checking the different paths in the execution tree. In this context, FVS scenarios could be used as a monitor in the sense given by the model checking techniques. Finally, we are exploring the possibility to interact with automatic code and test generators like [29].

8

Conclusions

In this work we deepened the impact of MR’s for formal verification. Besides employing them as a trace oracle for formal validation in BIG DATA we showed

120

F. Asteasuain

how them can be used to explore and reason about different specifications. This is a powerful feature in order to produce the most accurate possible specification of the expected behavior of the system under analysis. We showed the potential of FVS as a specification language to denote MR’s analyzing non trivial examples in cutting-edge and heterogeneous domains such as operating systems for OBC for nano satellites and behavioral specifications for UAV’s. In addition, the possibility to automatically generate complementary behavior is a distinctive feature of our approach. The satisfactory results delineated in this work aim to further blend the interaction between MR’s, formal verification and FVS as the underlying specification language and framework.

References 1. Agarwal, R., Dhar, V.: Big data, data science, and analytics: the opportunity and challenge for is research (2014) 2. Asrafi, M., Liu, H., Kuo, F.C.: On testing effectiveness of metamorphic relations: a case study. In: 2011 Fifth International Conference on Secure Software Integration and Reliability Improvement, pp. 147–156. IEEE (2011) 3. Asteasuain, F.: A flexible and expressive formalism to specify metamorphic properties for big data systems validation. In: CACIC, pp 282–291 (2022). ISBN 978987-1364-31-2 4. Asteasuain, F.: Formalizing operating systems for nano satellites on board computers. In: CONAIISI (2022) 5. Asteasuain, F., Braberman, V.: Declaratively building behavior by means of scenario clauses. Requirements Eng. 22(2), 239–274 (2016). https://doi.org/10.1007/ s00766-015-0242-2 6. Asteasuain, F., Caldeira, L.R.:A sound and correct formalism to specify, verify and synthesize behavior in BIG DATA systems. In: Pesado, P., Gil, G. (eds) Computer Science. CACIC 2021. CCIS, vol. 1584, pp. 109–123. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-05903-2_8 7. Asteasuain, F., Calonge, F., Dubinsky, M., Gamboa, P.: Open and branching behavioral synthesis with scenario clauses. CLEI E-J. 24(3), 1–20 (2021) 8. Asteasuain, F., Calonge, F., Gamboa, P.: Exploiting anti-scenarios for the non realizability problem. In: Pesado, P., Arroyo, M. (eds.) CACIC 2019. CCIS, vol. 1184, pp. 157–171. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-483258_11 9. Baidya, S., Shaikh, Z., Levorato, M.: Flynetsim: an open source synchronized UAV network simulator based on ns-3 and ardupilot. In: Proceedings of the 21st ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems, pp. 37–45 (2018) 10. Beck, K., et al.: Manifesto for agile software development (2001) 11. Bellettini, C., Camilli, M., Capra, L., Monga, M.: Distributed CTL model checking using Mapreduce: theory and practice. CCPE 28(11), 3025–3041 (2016) 12. Bloem, R., Jobstmann, B., Piterman, N., Pnueli, A., Sa’Ar, Y.: Synthesis of reactive (1) designs (2011) 13. Braberman, V., Garbervestky, D., Kicillof, N., Monteverde, D., Olivero, A.: Speeding up model checking of timed-models by combining scenario specialization and

New Horizons for Metamorphic Relationships in Formal Verification

14. 15.

16. 17. 18. 19.

20.

21.

22.

23. 24.

25.

26. 27.

28. 29.

30. 31. 32.

121

live component analysis. In: Ouaknine, J., Vaandrager, F.W. (eds.) FORMATS 2009. LNCS, vol. 5813, pp. 58–72. Springer, Heidelberg (2009). https://doi.org/10. 1007/978-3-642-04368-0_7 Camilli, M.: Formal verification problems in a big data world: towards a mighty synergy. In: ICSE, pp. 638–641 (2014) Ceresa, M., Gorostiaga, F., Sánchez, C.: Declarative stream runtime verification (hLola). In: Oliveira, B.C.S. (ed.) APLAS 2020. LNCS, vol. 12470, pp. 25–43. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-64437-6_2 Chen, T.Y., Cheung, S.C., Yiu, S.M.: Metamorphic testing: a new approach for generating next test cases. arXiv preprint arXiv:2002.12543 (2020) Ding, J., Zhang, D., Hu, X.H.: A framework for ensuring the quality of a big data service. In: 2016 SCC, pp. 82–89. IEEE (2016) Doncaster, B., Williams, C., Shulman, J.: 2017 nano/microsatellite market forecast. SpaceWorks Enterprises Inc., Atlanta, GA, Technical report (2017) Fernandez, L., Ruiz-De-Azua, J.A., Calveras, A., Camps, A.: Assessing Lora for satellite-to-earth communications considering the impact of ionospheric scintillation. IEEE access 8, 165570–165582 (2020) Gorostiaga, F., Sánchez, C.: HLola: a very functional tool for extensible stream runtime verification. In: TACAS 2021. LNCS, vol. 12652, pp. 349–356. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-72013-1_18 Havelund, K., Roşu, G.: Synthesizing monitors for safety properties. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 342–356. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-46002-0_24 Hummel, O., Eichelberger, H., Giloj, A., Werle, D., Schmid, K.: A collection of software engineering challenges for big data system development. In: SEAA, pp. 362–369. IEEE (2018) Kumar, V.D., Alencar, P.: Software engineering for big data projects: domains, methodologies and gaps. In: IEEEBIGDATA, pp. 2886–2895. IEEE (2016) Laigner, R., Kalinowski, M., Lifschitz, S., Monteiro, R.S., de Oliveira, D.: A systematic mapping of software engineering approaches to develop big data systems. In: SEAA, pp. 446–453. IEEE (2018) Luckcuck, M., Farrell, M., Dennis, L.A., Dixon, C., Fisher, M.: Formal specification and verification of autonomous robotic systems: a survey. ACM Comput. Surv. (CSUR) 52(5), 1–41 (2019) Magee, J., Kramer, J.: State models and Java Programs. Wiley, Chichester (1999) Mayer, J., Guderlei, R.: An empirical study on the selection of good metamorphic relations. In: 30th Annual International Computer Software and Applications Conference (COMPSAC 2006), vol. 1, pp. 475–484. IEEE (2006) Mitchell, T.M., Mitchell, T.M.: Machine LLearning, vol. 1. McGraw-hill New York (1997) Niaz, I.A., Tanaka, J.: Code generation from UML statecharts. In: Proceedings of the 7th IASTED International Conference on Software Engineering and Application (SEA 2003), Marina Del Rey, pp. 315–321 (2003) Otero, C.E., Peter, A.: Research directions for engineering big data analytics software. IEEE Intell. Syst. 30(1), 13–19 (2014) Pramanik, S., Bandyopadhyay, S.K.: Analysis of big data. In: Encyclopedia of Data Science and Machine Learning, pp. 97–115. IGI Global (2023) Saeed, N., Elzanaty, A., Almorad, H., Dahrouj, H., Al-Naffouri, T.Y., Alouini, M.S.: Cubesat communications: recent advances and future challenges. IEEE Commun. Surv. Tutor. 22(3), 1839–1862 (2020)

122

F. Asteasuain

33. Segura, S., Fraser, G., Sanchez, A.B., Ruiz-Cortés, A.: A survey on metamorphic testing. IEEE Trans. Software Eng. 42(9), 805–824 (2016) 34. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Inc., Upper Saddle River (1996) 35. de Sousa Barros, J., Oliveira, T., Nigam, V., Brito, A.V.: A framework for the analysis of UAV strategies using co-simulation. In: 2016 VI Brazilian Symposium on Computing Systems Engineering (SBESC), pp. 9–15. IEEE (2016) 36. Sri, P.A., Anusha, M.: Big data-survey. Indonesian J. Electr. Eng. Inform. (IJEEI) 4(1), 74–80 (2016) 37. Tsay, Y.-K., Chen, Y.-F., Tsai, M.-H., Wu, K.-N., Chan, W.-C.: GOAL: a graphical tool for manipulating büchi automata and temporal formulae. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 466–471. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71209-1_35 38. Ziegert, S., Wehrheim, H.: Temporal plans for software architecture reconfiguration. Comput. Sci.-Res. Dev. 30, 303–320 (2015) 39. Zudaire, S., Gorostiaga, F., Sánchez, C., Schneider, G., Uchitel, S.: Assumption monitoring using runtime verification for UAV temporal task plan executions. In: 2021 IEEE International Conference on Robotics and Automation (ICRA), pp. 6824–6830. IEEE (2021) 40. Zudaire, S.A., Nahabedian, L., Uchitel, S.: Assured mission adaptation of UAVs. ACM Trans. Auton. Adapt. Syst. (TAAS) 16(3–4), 1–27 (2022)

Approach to Improving Java Source Code Considering Non-compliance with a Java Style Guide Pablo Becker , Luis Olsina(B)

, and María Fernanda Papa

GIDIS_Web, Facultad de Ingeniería, UNLPam, General Pico, LP, Argentina {beckerp,olsinal,pmfer}@ing.unlpam.edu.ar

Abstract. This work shows the betterment of a typical Java source code application by taking into account its non-compliance with a subset of items of the Google Java Style Guide. To get this, an improving strategy is used. The improving strategy has a set of activities that allow defining non-functional requirements in the form of characteristics, attributes, items, and their relationships, as well as designing and implementing measurements, evaluations, analysis, and code changes. The practical case was carried out in the context of an advanced undergraduate subject in System Engineering as a compulsory integrated exam. The results of evaluating attributes/items for compliance with the above coding style guide and improving non-compliances are illustrated in detail. We argue that this study may be of interest to professors and students of other similar degrees. Keywords: Non-compliance · Source Code · Google Java Style Guide · Improving Strategy

1 Introduction Elish and Offutt [7] pointed out that “adherence to standard coding practices is considered to be essential to ensure readable and understandable software, and thus more likely to be easy to maintain and reuse”. Today, there are well-known coding style guidelines and conventions that arise from different companies and authors for various programming languages intending to make software source code more readable, understandable, and maintainable. For example, regarding readability, dos Santos and Gerosa [5] surveyed a set of 11 coding practices to find out their impact on readability. The authors’ findings were that 8 coding practices had evidence of affecting it, while 3 practices had no statistically significant effect. Furthermore, there is current evidence that programmers and teams work with coding practices in the context of industrial software projects. For example, Broekhuis [4] says that “teams adopt or adapt coding styles, and in some cases, they are mandatory. This means coding practices are an integral part of software development”. This author obtained 102 responses from professionals surveyed in the Netherlands in 2021, including 5 project managers, 95 developers, and 2 testers. As a result, more than 90% of © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 123–139, 2023. https://doi.org/10.1007/978-3-031-34147-2_9

124

P. Becker et al.

the participants used coding styles in their software projects. As a consideration of his empirical work, Broekhuis highlights “It is, therefore, reasonable to conclude that they [coding practices] have a critical role in industries. This could imply the necessity of teaching these coding styles to students”. This paper analyzes the quality evaluation and improvement of a typical Java code application by considering the non-compliance with a selected set of items of the Google Java Style Guide [8]. In a nutshell, this guide serves as the complete definition of Google’s coding standards for source code in the Java programming language, which is available online. As in any other coding style guide, the Google Java Style Guide has a set of items grouped in dimensions or sections named ‘Source file structure’, ‘Formatting’, and ‘Naming’, among others, that the assessed code must comply with. The practical case that we illustrate in the present paper was partially applied in an advanced undergraduate subject in System Engineering as a mandatory exam. The subject called Software Engineering II is taught in the 1st semester of the 5th year of the System Engineering degree. The theoretical content of the subject refers to nonfunctional requirements, measurement, evaluation, and analysis of the quality of a software product or system. Concepts of change and quality improvement are also conveyed. In order to implement these contents from a practical standpoint and promote the technical and transversal competencies of the students, each year, considering the problem to be solved, a strategy is selected from a family of evaluation strategies [14]. In the year 2022, we selected the evaluation strategy with the purpose of understanding and improving the quality of a given Java source code, considering the compliance of the code with a subset of items from [8]. Note that the code we provided to students was deliberately and slightly modified to partially comply with this coding style guide. The learning goals were mainly two. First of all, as in every academic year, apply the concepts of characteristics, attributes, metrics, and indicators, as well as the concept of analysis of the situation for better recommendations. These concepts and practices are embedded into the processes and methods of any given evaluation strategy [14]. Second, we consider it relevant that students as future professionals learn software coding styles through practice, as Broekhuis suggested above. In short, the contribution of this work is to illustrate both aspects from a practical point of view. Given that this practical case may be of interest to professors and students of other similar degrees, its complete documentation is linked to an additional open resource. It is important to remark that the current paper is an extended version of the Becker et al. work [1]. Unlike this cited conference paper, in this chapter, we present concepts and relationships of the ontological conceptual model for non-functional requirements, which allow a better understanding of the correspondence between requirements in the form of characteristics and attributes with dimensions and items of the coding style guides. Besides, due to the greater availability of space than in that conference paper, we carry out a more extensive analysis of the results of the improving strategy activities. The remaining sections of this paper are organized as follows. Section 2 provides an overview of the Google Java Style Guide and the evaluation strategy, as well as some descriptions of an ontological conceptual model for non-functional requirements, including the concepts of characteristic, attribute, item, and their relationships. Section 3 describes the motivation and context of the practical case. Section 4 illustrates and

Approach to Improving Java Source Code

125

implements the strategy activities for the case in detail using a Java source code. Section 5 reviews the related work and finally, Sect. 6 presents the main conclusions.

2 Non-functional Requirements and Improving Strategy: An Overview For a better understanding of the practical case, in the following three subsections, we would like to go over some fundamentals and elements of dimensions and items of a coding style guide, non-functional requirements, and evaluation strategy activities aimed at improvement. 2.1 Summary of Google’s Java Style Guide As stated above, the practical case is illustrated using the Google Java Style Guide. The online document [8] includes the definition of Google’s coding rules and conventions for source code in the Java programming language. It is organized into sections (dimensions) and guidelines (items). Google’s Java Style Guide defines non-functional requirements, that is, the conventions and rules that must be adhered to, by including dimensions and items related to: • Source file basics combine guidelines for filenames, file encoding, whitespace characters, and special characters. • Source file structure that combines guidelines that deal with license information, package and import statements, and class member ordering. • Formatting that aggregates items for braces, indents, line wrapping, whitespace, parentheses, enums, arrays, switch statements, annotations, comments, and modifiers. • Naming deals with items for identifiers such as package, class, method, constant, field, local variable, and type variable. • Programming Practices that deal with @Override, exceptions, static members, and finalizers. • Javadoc states how to format some aspects and where it is required. For example, the Naming section or dimension has guidelines or items labeled as Class names, Method names, and Parameter names, among others. 2.2 Some Concepts and Relationships for Non-Functional Requirements Non-functional requirements often refer to the concept of a quality aspect of a thing or entity, where an entity can be a resource, process, artifact, or system, among others. In a nutshell, the non-functional requirements are the criteria established to evaluate how an entity should perform, and therefore the concrete entity must have certain quality attributes or items to achieve the non-functional requirements. There is a collection of concepts for this domain, which can be represented in a conceptual model. This model can be structured as an ontology. Figure 1 mainly shows concepts and relationships of the Non-Functional Requirements Top-Domain Ontology (NFRsTDO), in which some

126

P. Becker et al.

terms are semantically enriched with terms of higher-level ontologies such as ThingFO [13]. In the following paragraphs, we would like to define a subset of NFRsTDO concepts and relationships to better understand the present work.

Fig. 1. Concepts and relationships of the Non-Functional Requirements Top-Domain Ontology (NFRsTDO). Note that all the definitions of terms, properties, and relationships can be accessed at https://bit.ly/NFRsTDOv1_2

In particular, we look at the terms Evaluable Entity, Non-Functional Requirement, Characteristic, Statement Item, and Attribute depicted in Fig. 1. Evaluable Entity is a Target or Context Entity that represents a particular (concrete) entity to be evaluated. Note that depending on a given situation, an Evaluable Entity has the semantics of a Target Entity, or Context Entity, which in turn are things [13]. An example of an Evaluable Entity is a particular software source code program. Non-Functional Requirement (NFR) is a Quality-, Constraint-related Assertion [13] that specifies an aspect in the form of a Characteristic, Attribute, or Statement Item to be evaluated on how or how well an Evaluable Entity performs or shall perform. Characteristic (synonym: Dimension, Factor) is a NFR that represents an evaluable, non-elementary aspect attributed to a particular entity or its category by a human agent. Note that a Characteristic can be evaluated but cannot be measured as an Attribute. Examples of it are Naming, Compliance, and Maintainability, among many others. Statement Item –or item for short- is a NFR that represents a declared textual expression of an evaluable physical or abstract aspect asserted for a particular entity or its

Approach to Improving Java Source Code

127

category by a human agent. Note that a Statement Item can represent for instance an assertive element in a questionnaire instrument, an assertive element in a heuristic checklist, or an assertive element in a guide. The Class names Statement Item is an example of this in [8]. Attribute is a NFR that represents a measurable and evaluable physical or abstract aspect attributed to a particular entity or its category by a human agent. Note that an Attribute is a measurable and evaluable elementary NFR, i.e., an elementary quality to be quantified. The Class naming compliance is an example of an Attribute name. Considering the relationships, Fig. 1 shows that a NFR relates with none or many NFRs, where a NFR always refers to an Evaluable Entity. In addition, a Characteristic is a non-elementary NFR, which combines Attributes or Statement Items. For example, in [8], Class names and Method names are two items combined into the Naming dimension. Besides, the Naming Compliance sub-characteristic combines Attributes such as Class naming compliance and Method naming compliance, as we see later. Finally, a useful relationship that we will put into practice is called is mapped to between the terms Statement Item and Attribute, which we also discuss later on. 2.3 Activities of the Improving Strategy In Olsina and Becker [14], a family of evaluation strategies guided by measurement and evaluation activities is analyzed. These strategies make it possible to achieve purposes such as understanding, improving, monitoring, and controlling, among others. In this work, the GOCAMEC (Goal-Oriented Context-Aware Measurement, Evaluation, and Change) strategy [2] is used, which allows us to understand and improve the current state of an entity. Figure 2 exhibits the GOCAMEC process specification using the UML activity diagram and SPEM notation. The strategy process starts by enacting the Define Non-Functional Requirements (NFRs) activity (A1), which aims at defining the items/attributes and characteristics to be evaluated. A1 takes as input a quality model and/or guidelines (e.g. as those in [8] and [9]) and produces a “NFRs Specification”, which includes a “NFRs Tree”. In the Design Measurement and Evaluation activity (A2), metrics and indicators are designed or reused from a repository. Then, the Implement Measurement and Evaluation activity (A3) implies producing the measures and indicator values. A4.1 is called Design Analysis, which mainly includes establishing the criteria and instruments for the analysis of the outcomes. As seen in Fig. 2, A4.1 can be performed in parallel with A3. Next, in the Analyze Results activity (A4.2), the measures, the indicator values, and the “Analysis Specification” are used as input, to produce the “Conclusion/Recommendation Report”. This activity aims at detecting weaknesses in the evaluated entity and recommending changes. If there are no recommendations for changes, since the level of satisfaction achieved by the indicators is satisfactory, the process ends. But, if there are recommendations for changes due to detected weaknesses, Design Changes (A5) is carried out, producing an “Improvement Plan” in which the specific changes to be made are indicated. Then, the plan serves as input to Implement Changes (A6). The result is a new version of the entity under study (i.e., a “New Situation”).

128

P. Becker et al.

Fig. 2. Generic process specification for the improving strategy called GOCAMEC

Figure 2 shows that after completing activity A6, A3 must be enacted again to perform measurement and evaluation of the new version of the entity. Based on the new results, A4.2 analyzes whether the changes have increased the level of satisfaction achieved by the same NFRs. If the improvement is not enough to meet the main business/informationneed goal, new cycles of change, re-evaluation, and analysis can be carried out until the goal set by the organization is achieved.

3 Motivation and Context As introduced in Sect. 1, the practical case was implemented in the context of the Software Engineering II subject in the first semester of the 5th year of the Systems Engineering degree at the Engineering School of UNLPam. The case is thoroughly developed in Sect. 4, so here we describe a little more about the context. On the one hand, we chose a Java code because the students spend about 90 h in the previous subject named Object Oriented Programming, in the 1st semester of the 3rd year, using the Java language to program a video game application. The given source code (Evaluable Entity) is called “GUICalculator.java”. It has 116 lines of code and the reader can consult it in Appendix IV at https://bit.ly/CCIS_Appendix. We deliberately modified this program a bit to introduce some violations of the [8] coding style items. Code lines with at least one evaluated incident are shaded orange in this Appendix. On the other hand, the Software Engineering II subject always evaluates the technical skills of students on non-functional requirements using characteristics and attributes to specify them. It also includes measurement and evaluation processes using metrics and indicators as methods to evaluate entities. Note that “establishing software metrics and quality standards” is a specific competency in the new curricular standard in Argentina

Approach to Improving Java Source Code

129

for Information Systems degrees. Therefore, the specification of quality requirements, the design and implementation of metrics and indicators, and the application of an evaluation strategy are key concepts and practices to grade this subject. Considering the case given to students, we have set the limit that one attribute must map to a single Google Java Style Guide item. In addition, the maximum number of attributes to be evaluated was 8, therefore, mapped to 8 items of this guide. In the present work, we expand the scope of the assignment given to students, by including 11 attributes and by specifying in one instance 3 attributes for 1 item of the guide. Specifically, to the “3.3.3 Ordering and spacing” Statement Item in [8], we evaluate the adherence of the GUICalculator.java code to it by using the following Attributes: 1.1.1. Compliance with the ordering of types of imports; 1.1.2. Spacing compliance between static and non-static import blocks; and, 1.1.3. Spacing compliance between import sentences. Thus, we exemplify the relationship is mapped to between the terms Statement Item and Attribute of Fig. 1 using the cardinality 1 to 1 and 1 to many. In summary, this work evaluates 11 attributes mapped to 9 items of the guide, as will be illustrated in detail in the next section. By assigning this activity to students, which represents an integrated exam that regularly lasts around 35 days, we encourage group work. In the year 2022, there were 10 students, including one international, by an institutional interchange. The size of the groups varied from 1 group with three members to 3 groups with two members, while 1 student decided to work alone. There were slightly different restrictions on the size of the group, such as the number of attributes/characteristics and the pages of the monograph as the final report to be examined. For example, the group of 3 students must have requirements specified by two sub-characteristics of Compliance [9] and 8 attributes to measure and evaluate. Also, they had to inspect the code beforehand to make sure that the requirements tree included at least 3 attributes that would imply that the code would have to be changed to fully comply with the guide. The resulting monographs were between 33 and 68 pages, including appendices. In short, we give an account of some transversal skills and competencies gained by the students, by promoting group work, providing all the material in English, and fostering oral and written communication in the Spanish mother tongue.

4 Application of the Improving Strategy to the Practical Case As commented above, to improve the compliance of the “GUICalculator.java” source code to the Google Java Style Guide, we applied the GOCAMEC strategy. This strategy allows i) to understand the degree of compliance of the source code to the style guide; ii) based on non-compliances, to apply changes to the current version of the source code (v. 1.0) for improving compliance with the style guide; and iii) understand the degree of source code compliance after the changes (that is, to the version 1.1 of the code). Next, we illustrate the activities represented in Fig. 2. (A1) Define Non-Functional Requirements: Firstly, in this activity, we select a quality model. Since adherence to a coding style guide favors the source code maintainability, we consider the model for external and internal quality proposed in ISO 9126 standard [9], which includes the “Maintainability” characteristic. In turn, this characteristic explicitly

130

P. Becker et al.

includes the “Compliance” sub-characteristic, which is defined as “The degree to which the software product (e.g., the source code) adheres to standards or conventions relating to maintainability”. Note that although ISO 25010 [10] replaces ISO 9126, the former does not explicitly include the “Compliance” sub-characteristic in its quality models. So, with the intention that students would see the “Compliance” sub-characteristic explicitly in the model, the ISO 9126 standard was chosen. As a second sub-activity in A1, from the Google Java Style Guide, we select a set of items to be evaluated. The selected items are shown in the 1st column of Table 1. Table 1. Google Java Style Guide items mapped to characteristics and attributes related to “Maintainability” and “Compliance” of a Java source code and its evaluation results (in [%]). Note: The symbol means “Satisfactory”; “Marginal”, and “Unsatisfactory”. Additionally, op stands for “operator”, EI for “Elementary Indicator” and DI for “Derived Indicator” Google Java Style Guide Items

3. Source file structure

3.3.3 Ordering and spacing

3.4.1 Exactly one top-level class declaration 4. Formatting 4.1.1 Use of optional braces 4.8.2.1 One variable per declaration 4.3 One statement per line 4.4 Column limit: 100 5. Naming 5.2.2 Class names 5.2.3 Method names 5.2.6 Parameter names

Characteristics and Attributes (in italics) 1 Maintainability 1.1 Compliance 1.1.1 Source file structure compliance 1.1.1.1 Compliance with the ordering of types of imports 1.1.1.2 Spacing compliance between static and non-static import blocks 1.1.1.3 Spacing compliance between import sentences 1.1.1.4 Compliance with the number of top-level class declarations per source file 1.1.2 Formatting compliance 1.1.2.1 Compliance with the use of optional braces 1.1.2.2 Compliance with the number of variables per declaration 1.1.2.3 Compliance with the number of statements per line 1.1.2.4 Compliance with the maximum line size 1.1.3 Naming compliance 1.1.3.1 Class naming compliance 1.1.3.2 Method naming compliance 1.1.3.3 Parameter naming compliance

op C-+ A

A

C--

v1.0 EI/DI

v1.1 EI/DI

73.74 73.74 53.33

100 100 100

100

100

100

100

0

100

33.33

100

72.10

100

9.09

100

82.61

100

88.24

100

95.15

100

82.96 60.00 100 100

100 100 100 100

Then, for each item, we define one or more attributes. As exhibited in Fig. 3, for item 3.3.3 Ordering and spacing we define 3 attributes while for item 3.4.1 Exactly one toplevel class declaration we define just one attribute. It is important to note that mapping a guide item to more than one attribute allows us a more refined evaluation of the item. Figure 3 also shows how different parts of the items’ declaration were used to identify attributes. The 2nd column of Table 1 shows in italics all the identified attributes for this study and their mapping to the guide items. The reader can see all the characteristic and attribute definitions in Annex I at https://bit.ly/CCIS_Appendix. (A2) Design Measurement and Evaluation: As attributes are quantified by metrics, indirect and direct metrics were defined in this activity. For example, to quantify the

Approach to Improving Java Source Code

131

Fig. 3. Example of mapping between Google Java Style Guide items and attributes

attribute “Compliance with the number of top-level class declarations per source file” (coded 1.1.1.4 in the 2nd column of Table 1) the indirect metric “Percentage of valid toplevel class declarations” (%TLC) was defined. The specification of this indirect metric is shown in Table 2. In addition, for each indirect metric, one or more direct metrics were specified. For the foregoing metric, three direct metrics were defined, namely: “Availability of valid top-level class” (AVTLC), “Number of top-level classes” (#TLC), and “Number of Java files” (#JF). Table 3 shows the specification for the direct metric AVTLC. It is important to mention that the measurement procedures must be as clear as possible to favor repeatability and reproducibility. So, some notes were included. For example, Table 3 shows three notes, where one of them (note 1) clarifies what is considered a top-level class. All the metrics defined for this work can be found in Annex II of the document available at https://bit.ly/CCIS_Appendix. Since the measured values do not represent the level of satisfaction of an elementary non-functional requirement (e.g. attribute), a transformation must be performed that converts the measured value into a new value that can be interpreted. Therefore, for each attribute, an elementary indicator was specified. As an example, the elementary indicator specification for attribute 1.1.1.4 is shown in Table 4. This indicator, like the rest of the elementary indicators, has three acceptability levels: Unsatisfactory (values less than or equal to 60%), Marginal (values greater than 60% and less than 100%), and Satisfactory (values that are equal to 100%). We decided to use the traffic light metaphor to facilitate the visualization of the levels of satisfaction achieved: red/Unsatisfactory, yellow/Marginal, and green/Satisfactory. The reader can find the rest of the elementary indicators in Annex III at https://bit.ly/CCIS_Appe ndix. Once all elementary indicators were specified, the next sub-activity was the definition of derived indicators. A derived indicator allows us to interpret a non-functional requirement with a higher level of abstraction, such as the characteristics and sub-characteristics documented in the 2nd column of Table 1. For this study, an aggregation function named Logic Scoring of Preference (LSP) [6] was used for all derived indicators. Particularly,

132

P. Becker et al.

the aggregation function specification is: 1/ r  DI (r) = w1 ∗ Ir1 + w2 ∗ Ir2 + . . . + wm ∗ Irm where DI represents the derived indicator to be calculated and Ii are the values of the indicators of the immediate lower level, or grouping in the tree, in a range 0 < = Ii < = 100; wi represents the weights that establish the relative importance of the elements within a grouping and must comply with w1 + w2 +… + wm = 1, and wi > 0 for i = 1… m; and r is a coefficient for LSP operators. These operators model different relationships among the inputs to produce an output. There are operators (op) of simultaneity or conjunction (operators C), replaceability or disjunction (operators D), and independence (operator A). LSP operators used for this work are shown in the 3rd column of Table 1. Regarding weights (not shown in Table 1), for this work the dimension called 1.1.3 Naming Compliance was considered the most relevant, so we set a weight of 0.50. The weight for each element can be seen in Annex VII at https://bit.ly/CCIS_Appendix. Lastly, acceptability levels were defined for the derived indicators using the same three levels previously defined for the elementary indicators. Table 2. Indirect metric specification to quantify the “Compliance with the number of top-level class declarations per source file” attribute coded 1.1.1.4 in Table 1

(A3) Implement Measurement and Evaluation: This activity involves using the metrics and indicators previously defined in A2 to produce metric and indicator values. Thus, the level of satisfaction achieved by the non-functional requirements can be subsequently analyzed. For example, using the metric “Percentage of valid top-level class declarations”, the quantified value for the attribute “Compliance with the number of top-level class declarations per source file” is 33.33%. This derived measure is produced by applying the calculation procedure specified in Table 2.

Approach to Improving Java Source Code

133

Table 3. Direct metric specification related to the indirect metric “Percentage of valid top-level class declarations” (%TLC)

Table 4. Elementary indicator specification for the attribute “Compliance with the number of top-level class declarations per source file” (coded 1.1.1.4 in Table 1). Note: %TLC stands for the “Percentage of valid top-level class declarations” metric

For illustration purposes, Fig. 4 shows a screenshot where we can see that the “GUICalculator.java” file has three top-level classes (highlighted with yellow arrows): “GUICalculator”, “calculatorFrame” and “calculatorpanel”, but just the class “GUICalculator” is a valid top-level class since its name is equal to the file name. All the base

134

P. Becker et al.

measures (used to calculate this and other derived measures) can be seen in Annex V of the document at https://bit.ly/CCIS_Appendix. Once all the indirect metrics’ values were obtained, the derived measures were used to calculate all the elementary indicators’ values. In turn, these were used to calculate the derived indicators using the LSP aggregation function. Indicators’ values both for elementary and derived indicators are shown in the 4th column of Table 1. (A4.1) Design Analysis: In this activity, it was decided to include in the “Analysis Specification” document that the attributes would be classified using the decision criteria defined for the indicators according to Table 4. Therefore, attributes that would fall into the Unsatisfactory range ( ) should receive attention with the highest priority, followed by those that would fall into the Marginal range ( ). It is important to remark that a guide item reaches the Satisfactory level only if all the mapped attributes fall at the Satisfactory ( ) level simultaneously.

Fig. 4. Screenshot showing the “GUICalculator.java” file and its three top-level classes: “GUICalculator”, “calculatorFrame” and “calculatorpanel”

(A4.2) Analyze Results: Following the criteria established in the “Analysis Specification” document, values marked with and in the 4th column of Table 1 were analyzed, and improvements were recommended. For example, the “1.1.1 Source file structure compliance” characteristic combines 2 attributes with a low level of performance. So, for the “Spacing compliance between import sentences attribute” (coded 1.1.1.3) which reached 0% the recommendation was “Blank lines between import sentences must be eliminated”, and for the attribute coded 1.1.1.4 which reached 33.33% , the recommendation was “Each top-level class must be defined in a file named as the class considering that names are case-sensitive”. Considering the “1.1.3 Naming compliance” characteristic, the recommendation for the “Class naming compliance” (1.1.3.1) –which got 60% - was: “All class names must be in upper camel case”.

Approach to Improving Java Source Code

135

Finally, the “1.1.2 Formatting compliance” characteristic has one attribute that falls at the Unsatisfactory level and three at the Marginal level. Regarding the attribute “Compliance with the use of optional braces” (coded 1.1.2.1) –which reached 9.09% - the recommendation was: “Use braces with if , else, for, do, and while statements, even when the body is empty or contains only a single statement”. Similarly, recommendations for attributes that fall at the Marginal level ( ) were addressed. This activity is where we can observe the importance of having several attributes that map to an item in the guide. For example, as shown in Fig. 3 and Table 1, the item “3.3.3 Ordering and spacing” has 3 associated attributes, of which 2 reached 100% (“Compliance with the ordering of types of imports” and “Spacing compliance between static and non-static import blocks”). But one had 0% , namely “Spacing compliance between import sentences”. As a consequence, these attributes allow us to judge exactly which parts of the guide item declaration are met, which are not, and at what level. (A5) Design Changes: Using the “Recommendation Report” generated in A4.2, the changes to be made were designed. For example, to improve the level of satisfaction achieved by the attribute “Class naming compliance” (1.1.3.1), it was proposed that the classes named “calculatorFrame” and “calculatorpanel” were renamed as “CalculatorFrame” and “CalculatorPanel”, respectively. Additionally, to improve the attribute “Compliance with the number of top-level class declarations per source file” (1.1.1.4), it was proposed that the classes named “CalculatorFrame” and “CalculatorPanel” (which are top-level classes) be defined in separate source files, which should be called “CalculatorFrame.java” and “CalculatorPanel.java”, respectively. All proposed changes were recorded in the “Improvement Plan” document. (A6) Implement Changes: In this activity, the changes proposed in the “Improvement Plan” were carried out. For example, Fig. 5 shows that the new version (v1.1) of the code has renamed the old “calculatorFrame” and “calculatorpanel” classes as “CalculatorFrame” and “CalculatorPanel”, respectively. Additionally, Fig. 5 shows that each top-level class was placed in a separate file, which has the same name as the class. Figure 6 shows some changes made in the source code. For example, in the new code version, every variable declaration declares only one variable (see green box in Fig. 6.b versus Fig. 6.a), and lines do not exceed the limit of 100 characters (see red vertical line). These changes are related to improving the “Compliance with the number of variables per declaration” (coded 1.1.2.2) and “Compliance with the maximum line size” (coded 1.1.2.4) attributes, respectively. The new version (v1.1) of the source code is available in Annex VIII at https://bit. ly/CCIS_Appendix.

136

P. Becker et al.

(a)

(b)

Fig. 5. Source code v1.0 (a) has three top-level classes placed in the “GUICalculator.java” file, while v1.1 (b) has three java files, each of them with a top-level class named as the file name

As shown in the GOCAMEC process of Fig. 2, once A5 and A6 activities were carried out, a re-evaluation must be performed to determine the level of satisfaction achieved by the new version of the source code after the changes. Thus, A3 and A4.2 activities were enacted again. (A3) Implement Measurement and Evaluation: For this second cycle of measurement and evaluation, we use the same metrics and indicators on version 1.1 of the Java source code. The evaluation results are shown in the 5th column of Table 1. (A4.2) Analyze Results: As can be seen in column 5th of Table 1, all the attributes reached 100% ( ). As a consequence, the new version of the source code satisfies all the Google Java Style Guide items considered for this work. Since new cycles of change, re-evaluation, and analysis are not required because the goal was successfully achieved, the process is finished.

Approach to Improving Java Source Code

137

(a)

(b)

Fig. 6. Snippet of the source code v1.0 (a) versus v1.1 (b)

5 Related Work Source coding conventions and guidelines that programmers must follow have been introduced since the mid-1970s. Kernighan and Plauger [11] were one of the early promoters of programming style conventions [15], who gave many hints on how to write readable code in the C language using real software examples. For the Java programming language, one of the first promoters of coding style guidelines was Sun Microsystems in 1997 [17], and the work of Reddy in 2000 [16], who was also a member of this firm. After these contributions, the Google Java Style Guide [8] arose. We have chosen this document for the current practical case, as it has the main dimensions and items to make the code readable, as well as easy formatting and online access for students. Another recent initiative for Java coding conventions and practices is Bogdanovych and Trescak [3]. Many empirical studies have been done on different coding styles that influence code readability, such as those by Elish and Offutt [7], Lee et al. [12], dos Santos and Gerosa [5], to cite just a couple. Also, as mentioned in the Introduction Section, according to the survey conducted by Broekhuis, out of 102 responses from software professionals, only 3% did not use a coding style in their enterprise projects. These results may emphasize the role that the learning process in the academy should continue to play in these useful concepts and practices. For the practical case illustrated here, this was one of the learning goals established in the Software Engineering II subject.

138

P. Becker et al.

As far as we know, what is not present in related works is the mapping of nonfunctional requirements in the form of dimensions and items of coding style guides with characteristics and attributes to build a quality model –as illustrated in Sect. 4- and supported by ontological concepts and relationships –as seen in Subsect. 2.2. This mapping allows more than one attribute to be assigned to a given item so that finer-grained elementary non-functional requirements can be quantified. Furthermore, it enables systematic understanding and improvement of source code compliance by using metrics, indicators, and refactoring as methods to implement measurement, evaluation, and change activities, all of which are integrated into the GOCAMEC strategy. The use of the aforementioned concepts and practices was another of the learning goals and objectives set in Software Engineering II. For one of the learning objectives, the employment of tools and analyzers was not promoted as is done in other works. Students were expressly expected, for better understanding, to design metrics and indicators, and manually make code changes from recorded data of non-compliances in the GOCAMEC implementation activities.

6 Conclusions In this work, we have illustrated the evaluation and improvement of a representative Java source code taking into account the compliance with internal quality attributes duly mapped to a subset of Google Java Style Guide items. To conduct this study, the GOCAMEC strategy was employed, which permits evaluators not only to know the current state of the entity in particular but also to design and implement changes that positively affect the quality of the new version of the target entity. For the problem posed to the students in the framework of an undergraduate subject, the resulting Java source code was improved justifying the results of the GOCAMEC activities. Furthermore, the learning goals and objectives of the subject and the skills and capabilities expected after passing the course were also addressed. As a final comment, we would like to emphasize that what is not present in the literature on related work is the mapping of quality requirements (compliance) in the form of characteristics and attributes with dimensions and items of coding style guides, such as illustrated throughout the manuscript. As a work in progress, we are automating aspects of the presented approach, which is an assignment for an undergraduate thesis in Systems Engineering. Acknowledgment. This line of research is supported partially by the Engineering School at UNLPam, Argentina, in the project coded 09/F079.

References 1. Becker, P., Olsina, L., Papa, M.F.: Strategy for improving source code compliance to a style guide. In: XXVIII Congreso Argentino de Ciencias de la Computación (CACIC’22), La Rioja, Argentina, pp. 312–321 (2022). http://sedici.unlp.edu.ar/handle/10915/149102

Approach to Improving Java Source Code

139

2. Becker, P., Tebes, G., Peppino, D., Olsina, L.: Applying an improving strategy that embeds functional and non-functional requirements concepts. J. Comput. Sci. Technol. 19(2), 153– 175 (2019). https://doi.org/10.24215/16666038.19.e15 3. Bogdanovych, A., Trescak, T.: Coding style and decomposition. In: Bogdanovych, A., Trescak, T. (eds.) Learning Java Programming in Clara’s World, pp. 83–100. Springer International Publishing, Cham (2021). https://doi.org/10.1007/978-3-030-75542-3_4 4. Broekhuis, S.: The importance of coding styles within industries. In: 35th Twente Student Conference on IT (TScIT 35), pp. 1–8 (2021) 5. dos Santos, R.M., Gerosa, M.A.: Impacts of coding practices on readability. In: International Conference on Software Engineering, pp. 277–285 (2018) 6. Dujmovic, J.: Continuous preference logic for system evaluation. IEEE Trans. Fuzzy Syst. 15(6), 1082–1099 (2007) 7. Elish, M., Offutt, J.: The adherence of open source java programmers to standard coding practices. In: 6th IASTED International Conference on Software Engineering and Applications, pp. 1–6 (2002) 8. Google Java Style Guide: https://google.github.io/styleguide/javaguide.html (2022). Last Accessed June 2022 9. ISO/IEC 9126-1: Software Engineering – Software Product Quality – Part 1: Quality Model, International Organization for Standardization, Geneva (2001) 10. ISO/IEC 25010: Systems and Software Engineering – Systems and software product Quality Requirements and Evaluation (SQuaRE) – System and software quality models (2011) 11. Kernighan, B.W., Plauger, P.J.: The Elements of Programming Style, 1st edn. McGraw-Hill, New York (1974) 12. Lee, T., Lee, J.B., In, H.P.: A study of different coding styles affecting code readability. Int. J. Softw. Eng. Appl. 7(5), 413–422 (2013) 13. Olsina, L.: Applicability of a foundational ontology to semantically enrich the core and domain ontologies. In: 13th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management, vol. 2, pp. 111–119. KEOD (Knowledge Engineering and Ontology Development), Portugal (2021) 14. Olsina, L., Becker, P.: Family of strategies for different evaluation purposes. In: XX CIbSE’17, Published by Curran Associates, pp. 221–234 (2017) 15. Oman, P.W., Cook, C.R.: A paradigm for programming style research. ACM SIGPLAN Not. 23(12), 69–78 (1988). https://doi.org/10.1145/57669.57675 16. Reddy, A.: Java™ coding style guide. Sun MicroSystems (2000) 17. Sun Microsystems: Java code conventions. https://www.oracle.com/technetwork/java/codeco nventions-150003.pdf (1997)

Quality Management Systems and Blockchain in the 4.0 Era: A Literature Review Kristian Petkoff Bankoff(B) , Rocío Muñoz , Ariel Pasini , and Patricia Pesado Computer Science Research Institute LIDI (III -LIDI), Facultad de Informática, Partner Center of the Scientific Research Agency of the Province of Buenos Aires (CIC), Universidad Nacional de La Plata, La Plata, Argentina {kpb,rmunoz,apasini,ppesado}@lidi.info.unlp.edu.ar

Abstract. Quality Management Systems emerged in the 20th century, catalyzed by an awareness of quality in organizations, promoting cultural changes to improve not only the quality of the product or service provided, but also all processes and even people. The evolution of computing, along with quality models, helped the use of computer tools to assist in the implementation of Quality Management Systems. However, the rate of change in computing is higher than that of the improvement models used in Quality Management, which prompts reflection on the need to adopt new technologies in these systems as an integral part of them, not just in the context of the business. In this sense, the aim is to analyze publications that relate disruptive technologies, such as Blockchain, to well-established systems or models such as those defined in ISO 9001 in the face of the Fourth Industrial Revolution, and to contextualize those traditional Quality Management Systems in the path to Quality 4.0.

Keywords: Quality Management Blockchain · Smart Contracts

1

· Industry 4.0 · Quality 4.0 ·

Introduction

Quality Management Systems emerged in the 20th century, catalyzed by a growing awareness of the importance of quality in organizations. This led to cultural changes in order to promote improvement not only in the quality of the products or services provided, but also in all processes and even people. The Total Quality Management (TQM) approach was based on the philosophy that quality should be a concern of the entire organization and that continuous improvement is essential to maintain long-term competitiveness. Japanese business leaders adopted this philosophy and applied it to all aspects of their operations, from design and production to supplier relationship management

c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 140–155, 2023. https://doi.org/10.1007/978-3-031-34147-2_10

QMS and Blockchain in the 4.0 Era

141

and customer satisfaction. However, the idea of involving the entire organization, its resources, processes, products and services in the quality improvement is not always affordable, which is why other approaches, such as ISO 9001, ISO 14001, ISO/IEC 17025, ISO 45001 and other compatible standards, were defined. These approaches seek to ensure that certain processes, services and products met specific requirements set by customers, by authorities or by the organization itself. The evolution of computing along with quality models led to the use of computer tools to assist the implementation of Quality Management Systems. However, the rate of change in computing is faster than that of the improvement models used in the late type of Quality Management [3], which prompts reflection on the need to adopt new technologies as an integral part of these systems, not just as a response to the business context. In this sense, we propose to analyze publications that link disruptive technologies such as Blockchain with well-established systems or models, such as those defined in ISO 9001, in the context of the Fourth Industrial Revolution, where the quality of products, services and process optimization is central. The keyword combinations used in order to search for literature as further described in this article are an increasing number of publications from 2014. Table 1 shows the number of publications found in a preliminary search, while Fig. 1 illustrates this data in a graph1 . As the main topic of the review is related to Quality, the Blockchain data series is excluded in Fig. 2 to get a detailed view of the stronger Quality-related publications found. Table 1. Publications per year for each keyword combination Year QMS + Blockchain QMS + Industry 4.0 Quality 4.0 Blockchain + Industry 4.0 2014

0

1

0

0

2015

0

2

1

1

2016

0

7

2

0

2017

3

12

3

6

2018

4

17

3

29

2019

19

30

6

100

2020

18

61

16

164

2021

17

69

29

232

2022

26

94

68

327

20231

2

15

9

48

1

Until February 16th.

This paper is an extension of “Sistemas de Gestión de Calidad y Blockchain en la era de la Industria 4.0: una revisión de literatura” [27] published in Argentine Congress of Computer Science 2022 (CACIC 2022). The new version incorporates a literature review on Quality 4.0 and places the conclusions of the original paper in the context of TQM and Quality 4.0. 1

2023 year year data is excluded to avoid biased representation.

142

K. P. Bankoff et al.

Fig. 1. Number of publications between 2014 and 2022 on this article topics

Fig. 2. Number of publications between 2014 and 2022 on Quality topics

2

Context

There are different definitions of quality that are focused on concepts such as compliance with requirements, meeting expectations, and suitability for use. In the search of ensuring the quality of its products and services, various Quality Management currents have emerged throughout the 20th century, driven by the so-called quality gurus [28].

QMS and Blockchain in the 4.0 Era

143

The Total Quality Management (TQM) approach emerged in the 1950 s s in Japan, in the context of the country’s economic reconstruction following World War II. TQM was developed by Japanese business leaders, such as W. Edwards Deming and Joseph Juran, who introduced new quality management techniques and tools in the Japanese industry. The success of Japanese companies in the 1970 s s and 1980 s,s, such as Toyota, Sony, and Honda, brought increasing global attention to the TQM approach. In the United States, TQM became a popular strategy for improving quality and business competitiveness in the 1980s s and 1990s s [15]. Many key aspects of Quality Management that are reflected in the ISO 9001 standard model involve defining a quality policy, planning, control, assurance, and improvement. A Quality Management System based on ISO 9001 consists of a set of strategic definitions, products, services, customers, and processes necessary for the production of goods and services that are expected to satisfy the customer. These processes (in addition to products) are measured, controlled, and improved by the use of tools such as the PDCA cycle (plan, do, check, act). This model is based on the premise that by applying quality processes, quality products are generated, and that organizations must constantly seek improvement to optimize their productive processes in pursuit of quality. One of the greatest difficulties in implementing a Quality Management System is the effort to generate and maintain a comprehensive set of documents, procedures, and records about its processes and their execution history. However, an organization can only improve and ensure quality if it is first known by itself, and this is only achieved through the availability of data and information. 2.1

Industry 4.0

The concept of Industry 4.0, or the Fourth Industrial Revolution, was first mentioned in Germany in 2011 [35] and represents how the integration of hardware, software, and network resources changes the way industries carry out their operations, producing smart factories rather than just computer-assisted processes. The main features of production modes and organizations within this revolution are global cooperation, permanent exchange of large amounts of data, automatic generation of summaries and information, use of sensors and other digital resources to record all activities more and better. As a result of the integration of digital tools into the entire production, control, and decision-making process, cost-saving benefits are obtained that drive industries 4.0: reduction of operational costs, optimization of waste, optimization of communication among all stakeholders, involvement of customers and obtaining products with higher functionality and quality. 2.2

Quality 4.0

Quality 4.0 is a term that refers to the application of Industry 4.0 technologies and principles to enhance and transform quality management. It involves the integration of digital technologies such as Internet of Things (IoT), Big Data

144

K. P. Bankoff et al.

Analytics, Artificial Intelligence (AI), and Cloud Computing into Quality Management Systems [34]. The term Quality 4.0 emerged from a 2015 report by consulting firm Deloitte entitled “Industry 4.0 and the Future of Quality Management”. The report highlighted the potential benefits of integrating Industry 4.0 technologies into quality management, including improved quality and productivity, reduced costs, and enhanced customer satisfaction [12]. Applications of Quality 4.0 include improving efficiency in Quality Management through automation, real-time monitoring, and predictive analysis. It can also enable greater customization of products and services to meet specific customer needs and desires. Additionally, Quality 4.0 can help businesses reduce quality risks, improve decision-making, and increase operational efficiency [7]. 2.3

Blockchain

Blockchain is a decentralized database technology that provides a mechanism for immutability guarantee and the absence of a central entity for decision-making in data operations. This is achieved through consensus algorithms, which establish protocols for participating nodes to autonomously decide when a data block is valid and when it is not. Decentralization and immutability (guaranteed by asymmetric cryptography) have led to some successful implementations, especially in the banking and finance business. Over time, it has given way to more businesses in which tools based on this technology make a decisive contribution, even to the extent of suggesting that in a certain degree it is a catalyst for a revolution in computing. One of the most relevant tools based on Blockchain is Smart Contracts. These contracts are software applications programmed to execute predefined actions when agreed conditions are met by two entities or nodes, without the need to trust between them, recording everything in a database that guarantees immutability. It is interesting to note that the record is both the evidence that allows establishing that the conditions are met and the contract itself. The contract, therefore, cannot be altered by neither of the parties or by third parties as it would violate one of the principles of the network. In this sense, this technology, which can be fed by data from other hardware, software, or network pieces, is aligned with principles of process optimization, business and integration of digital tools in the core of the most diverse businesses.

3

Literature Review

In this section, we present the objectives and criteria that were used to carry out the search. It is aimed at establishing connections between pairs of topics to ultimately link the concepts of ISO 9001-based Quality Management Systems, Blockchain, and Industry 4.0 to each other, considering the lack of publications that address this linkage. Also, an extension of the previous research is proposed so as to compare the Quality Management Systems and the Quality 4.0 concept.

QMS and Blockchain in the 4.0 Era

3.1

145

Goals

The main objective of this work is to verify if there exist, within the literature of each of the main topics, publications from which a network can be established and in the same way it links Quality Management Systems (or other similar systems, such as environmental management systems) with Industry 4.0 and Blockchain technology, with a view to adapting the former to these new industrial and IT trends. To organize the research, this objective was divided into the following sub-objectives: – To find relationships between publications to determine if ISO 9001-based Management Systems are compatible or adaptable to Industry 4.0 processes. – To analyze the situation of Quality Management Systems in the context of the Fourth Industrial Revolution. – To determine if there are other lines of research related to the implementation of Quality Management Systems with Blockchain technology. – To contextualize the ISO 9001-based management systems with respect to Quality 4.0 and Industry 4.0. 3.2

Search Criteria

The search criteria used for the initial literature review, attached to the first three specified goals were as follows: to collect publications related to quality management, Industry 4.0 and Blockchain, a search was conducted on the Scopus and ResearchGate engines using the expressions “quality management” AND blockchain, “quality management” AND 4.0 AND (industries OR industry), blockchain AND 4.0 AND (industries OR industry). The results were subject to a preliminary analysis based on their abstract to filter those better aligned with the first three goals of the research. To extend the review to the fourth goal a new search using the “quality management” AND 4.0 (industries OR industry) was carried out, after which a selection of articles aligned to the Quality 4.0 concept were chosen. 3.3

Scope

The scope of the first review was limited to publications related to Quality Management Systems with compatible models or based on the ISO 9001, ISO 14001, ISO/IEC 17025, ISO 45001 standards; also to experiences of management system application in industries, the impact of digitization and the topic of Industry 4.0 on the processes of organizations, whether they have implemented management systems or not. On the other hand, a selection was made to get publications related to Blockchain or Smart Contracts that have a relationship with key aspects of a management system, such as evidence management, versioning and process control. The first search was carried out between December 2021 and February 2022, and articles were filtered mixing criteria that have the best interrelation among

146

K. P. Bankoff et al.

the three proposed topics and that are significantly recent articles. The lack of publications linking the entire theme addressed is seen as a result of the searches even before the decision was made to limit the scope of the first review. The second search was performed in February 2023 resulting in a list of publications containing some of the filtered ones in the first review but also many published after February 2022. From these results, publications concerning to Quality 4.0 were selected. 3.4

Identified Publications

Table 2 presents the 26 publications collected with their categorization according to the topics that are addressed within the interest of the initial review. Table 3 presents the 6 publications selected for the Quality Management Systems in Quality 4.0 context review. Table 2. Identified publications for first review # Title

B I4.0 Q

1

“Data quality certification using ISO/IEC 25012: Industrial experiences” [9]

X

2

“The Computerized Maintenance Management System an Essential Tool for World Class Maintenance” [37]

X

3

“A process approach to ISO/IEC 17025 in the implementation of a quality management system in testing laboratories” [14]

X

4

“A proposal of model for a quality management system in research testing laboratories” [23]

X

5

“ISO 9001:2015 Adoption: A Multi-Country Empirical Research” [8]

X

6

“Proposal for a maintenance management system in industrial environments based on ISO 9001 and ISO 14001 standards” [6]

X

7

“Quality of the ISO 9000 series of standards-perceptions of quality management experts” [32]

X

8

“Recertification of a Quality Management System based on ISO 9001 - Is it a must for a modern manufacturing company?” [24]

X

9

“System proposal for implementation of risk management in the context of ISO/IEC 17025” [36]

X

10 “System quality and security certification in seven weeks: A multi-case study in Spanish SMEs” [13]

X

11 “Blockchain Enabled Quality Management in Short Food Supply Chains” [5]

X

12 “Evidence Management System Using Blockchain and Distributed File System (IPFS)” [17]

X

X X

13 “Are QM models aligned with Industry 4.0? A perspective on current practices” [3]

X

X

14 “Procedure for Defining the System of Objectives in the Initial Phase of an Industry 4.0 Project Focusing on Intelligent Quality Control Systems” [30]

X

X

15 “Quality Culture of Manufacturing Enterprises: A Possible Way to Adaptation to Industry 4.0” [11]

X

X

16 “Quality management in the 21st century enterprises: Research pathway towards Industry 4.0” [16]

X

X

17 “Re-Engineering of Logistics Business Processes Influenced by the Digitalization” [10]

X

18 “Blockchain Enterprise: Use Cases on Multiple Industries” [25]

X X

19 “Blockchain Technology: A Fundamental Overview” [18]

X X

20 “Blockchain Technology Applications for Next Generation” [31]

X X

21 “EPS-ledger: Blockchain hyperledger sawtooth-enabled distributed power systems chain of operation and control node privacy and security” [19]

X X

22 “Significance of Blockchain Technologies in Industry” [26]

X X

23 “Blockchain. La revolución industrial de internet” [29]

X X

24 Construction of Blockchain Technology Audit System [20]

X

25 “Decentralized collaborative business process execution using blockchain” [22]

X

26 “A blockchain-based integrated document management framework for construction applications” [1] X

QMS and Blockchain in the 4.0 Era

4

147

Analysis

In this section results from analyzing the publications are shown in two stages, corresponding respectively to the initial review and the extended one. 4.1

First Search

In Fig. 3 the list of items selected to review, related to ISO 9001-based Quality Management Systems, Blockchain and Industry 4.0, is shown, allowing visualization of the location of each publication in the context of the proposed dimensions and the level of cohesion between the terms. To ease the visualization, numbers referring to rows in Table 2 are used. Analysis. Upon analyzing the relevant articles, it was found that 15% of the selected publications directly responded to the main topics of Quality and Industry 4.0, 24% coincided in the key elements of Blockchain and Industry 4.0, and 8% directly related Blockchain with Quality Management. From the selected literature that addresses individual topics, there are relationships in the text that allow establishing links between Blockchain and Quality Management (8%) and between Quality and Industry 4.0 (8%). It is also observed that the searches performed did not produce results that directly link to the three topics. However, by analyzing the articles based on a reading of the body of the posts and particularly the conclusions and discussions posed in them, a network of concepts that connect to the searched topics can be established. To start, in [3] concludes that Quality Management as conceived in the 20th century naturally does not contain the fundamentals of Industry 4.0 and that a substantial adaptation incorporating new technologies is necessary in order to be carried out facing the digital industries of the 21st century, as these produce changes and intelligent processes that are faster than today’s traditional quality management methods. Some aspects to consider when integrating Quality Management with a business model aligned with Industry 4.0 is quality control in outsourcing and supply chain processes that integrate different organizations, so as to ensure optimization of costs, resource use, and quality itself. In [16], future research questions are proposed, such as: what changes are necessary in Quality Management to engage human development with emerging technologies such as Blockchain, IoT, Big Data, smart supply chains; how to manage outsourcing and integration of multi-organizational processes in the era of Industry 4.0; how to develop quality exchanges with the support of sophisticated methods for smart supply chains. It is of great interest to this analysis to emphasize that resource acquisition is one of the key aspects that must be attended to when implementing a Quality Management System.

148

K. P. Bankoff et al. Table 3. Identified publications for the extended review #

Title

Q4-1 “Integrating quality management systems (TQM) in the digital age of intelligent transportation systems industry 4.0” [2] Q4-2 “Industry 4.0 as a key enabler toward successful implementation of total quality management practices” [33] Q4-3 “A quality 4.0 assurance framework for the higher education institutes” [21] Q4-4 “Developing a Quality 4.0 Implementation Framework and Evaluating the Maturity Levels of Industries in Developing Countries” [38] Q4-5 “Classification of Industry 4.0 for Total Quality Management: A Review” [4] Q4-6 “Unleashing the Potential of the TQM and Industry 4.0 to Achieve Sustainability Performance in the Context of a Developing Country” [34]

Fig. 3. Relationship between analyzed articles in the first review

The ISO 9001 standard for the implementation of Quality Management Systems can be applied to any type of organization, regardless of the type of industry it operates in. Currently, there are over one million companies and institutions

QMS and Blockchain in the 4.0 Era

149

certified under the ISO 9001 standard. Many organizations have started to view Quality Management Systems not only as a mechanism to achieve organizational performance but also as a starting point for the construction of more complex integrated production systems. The implementation of Quality Management Systems improves the predictability of process behavior and, therefore, improves the efficiency of organizations and optimizes resource use [24], which coincides with fundamental principles of Industry 4.0. Among the most highlighted aspects during a search presented in [24] it can be found the reduction of costs and elimination of records that affect work efficiency without providing relevant information to the processes in order to optimize them. Other management systems are compatible with ISO 9001 without being specifically for quality, as in recent years many of the models have been adapted to have a standardized document body. One of these cases are environmental management systems defined in the ISO 14000 family. The control of the materials used is a key aspect for environmental management system certification; Castillo-Martinez et al. in [6] propose a system architecture that optimizes the exchange of information between different areas through the adoption of tools and technology that automate these processes, emphasizing the recording of each use of the different materials and the tracking of their life cycle. Although the main objectivo of environmental management systems is to improve environmental practices, cost optimization, especially in waste management, is within their responsibilities and is consistent with Industry 4.0. The topic of Blockchain arises when analyzing the requirements of Quality Management Systems, which rely on evidence registration to support decisionmaking and monitoring of improvement or correction actions during maintenance. Audits also control the proper execution of pre-defined procedures and the integrity of the corresponding record, which are generally well covered by tools implemented on Blockchain [1,17]. On the other hand, Blockchain technology is gaining more and more ground in various use cases, and therefore, ensuring the quality of an organization whose processes are supported by this technology would catalyze a migration of Quality Management Systems towards Blockchain technologies such as Smart Contracts [19,31]. 4.2

Quality Management in Quality 4.0 Context

A relationship between Quality Management Systems, such as those based on ISO 9001, and Industry 4.0 emerges when the concept of Quality 4.0 is considered. Quality 4.0 is a set of practices that aim to integrate the Industry 4.0 tools as well as to adapt Quality Management principles to a fully digitalized context, taking the whole Total Quality Management components [34]; Saha et al. explore the potential benefits of combining TQM and Industry 4.0 for enhancing organizational sustainability performance. The authors suggest that the integration of TQM and Industry 4.0 can lead to more effective resource utilization, improved quality control processes, and increased customer satisfaction. However, the successful implementation of Industry 4.0 requires top management involvement, collaboration with external stakeholders, and a flexible organizational structure.

150

K. P. Bankoff et al.

While there are challenges to adopt Industry 4.0, the authors suggest that its characteristics offer a solid foundation for supporting business success. Overall, the authors conclude that the adoption of Industry 4.0 positively impacts TQM implementation and contributes to enhance organizational sustainability performance. A classification of Industry 4.0 for TQM is proposed by Baran and Korkusuz Polat in in [4] using the Smart Contracts, Big Data, Cloud Computing, Blockchain and Cyber-phisical Systems as keys among several other. In particular, Smart Contracts enable the creation of production ecosystems driven by intelligent systems with autonomous features such as automatic evidence decision-making. Also, Blockchain can assist ensuring the traceability of quality improvement process, so businesses can identify any coordination problems and take corrective action. One of the reasons of the relation being stronger between Industry 4.0 and TQM appears to be the fact that the later is a superset of practices for the organization to achieve continuous improvement compromising the whole human resources, customers, processes, services, products and tools to it in order to gain cost and resource efficiency and reduce waste, both of which are key principles to the Fourth Industry Revolution. On the other hand, TQM suggests paths to achieve its goals but does not explicitly define concrete procedures while ISO 9000 family (and compatible ISO standards) set the requirements to get a working Quality Management System not focusing in the digitalization but leaving freedom to the organization to implement it [2]. On the other hand, Quality 4.0 can be decomposed in eleven axis [21,38] as shown in Fig. 4, each of one is taken into analysis so as to propose an implementation of TQM using Industry 4.0 tools. Lodi et al. propose the use of autonomous software to monitor changes to regulatory bodies published in government (or any other authority) repositories or websites so as to improve the compliance of the TQM automatically [21]. Also Zulqarnain, Wasif, and Iqbal analyze the challenges in developing countries when it comes to integrate Industry 4.0 technology due to the lack of infrastructure, skilled human resources, as well as cultural, economic, politic, and social treats. Overall, in [38] the authors conclude that Quality 4.0 is not well developed neither in small organizations nor in big enterprises in Pakistan. Furthermore, compliance in one axis of Quality 4.0 can lead to improvements on other dimensions, at the same time that it is observed that most difficult implementations arise at compliance, app development, scalability and culture axis. In Fig. 4 the relationship between the so called Quality 3.0 approach (implemented as traditional well-known Quality Management Systems like ISO 9001) is shown based on [38]. Finally, Sader, Husti, and Daróczi expose several benefits of Industry 4.0 in quality assurance and quality control among other QMS principles. In [33] the authors highlight that an Industry 4.0 integrated production system can ensure high-quality products by defining and eliminating root causes of production defects, making instant early action to avoid defects and production failure, optimizing processes, and minimizing rework and scrap. It further notes that intelligent quality control systems are replacing traditional quality control techniques, leading to instant exclusion of defective products and

QMS and Blockchain in the 4.0 Era

151

minimizing the cost of quality. Furthermore, the text emphasizes that Industry 4.0 can aid evidence-based decision making by providing accurate data and information. It notes that Industry 4.0 can improve relationship management with business partners by optimizing the production supply chain and ensuring effective communication and collaboration tools between stakeholders.

Fig. 4. Quality Management in the TQM-Quality 4.0-Industry 4.0 context

5

Conclusions

A number of articles related to the terms Blockchain, Industry 4.0, and Quality Management were identified and retrieved by conducting searches with different combinations of theme pairs. Once organized according to the theme in an order that allows moving from quality to Blockchain through coincidences in the Industry 4.0 dimension, points of contact between the three themes were established that were not evident at first glance or through the keywords. Quality is both a result and a requirement of digital industries, and at the same time, Blockchain technology (such as through Smart Contracts) is an increasingly present tool in Industry 4.0. Therefore, with regard to the objectives outlined, we can conclude the following: To Find Relationships Between Publications to Determine if ISO 9001-Based Management Systems are compatible or adaptable to Industry 4.0 processes. Quality Management Systems are adaptable to Industry 4.0 but should go through a transformation to allow better resilience against changes driven by digital evolution. In this sense, Quality Management Systems could experience their own revolution in the context of the Fourth Industry Revolution.

152

K. P. Bankoff et al.

To Analyze the Situation of Quality Management Systems in the Context of the Fourth Industrial Revolution. Quality Management Systems were conceived as tools that ensured the customer that the product supplied would meet their expectations even before evaluating it. To some extent, they worked as a commercial tool; in the context of the Fourth Industrial Revolution, Quality Management Systems are at risk of being relegated by the changes promoted by the digitization of industries, which would allow them to introduce improvements in other key aspects such as cost optimization. However, Quality Management Systems are compatible with Industry 4.0 because they do not introduce any restrictions to the object or the objectives of the system. To Determine if There are Other Lines of Research Related to the Implementation of Quality Management Systems with Blockchain technology. Although there are research or implementations of some key aspects of Quality Management (such as document control or controlled evidence recording), no other authors or institutions specifically addressing this topic have been found. However, the relationship between the relevant publications makes it possible to categorize it as future research. To Contextualize the ISO 9001-Based Management Systems with Respect to Quality 4.0 and Industry 4.0 It was found that Quality Management and Industry 4.0 are strongly linked through the concept of Quality 4.0, which aims to introduce key features such as interconnection, big data and integration to follow the principles of Total Quality Management. In this context, Quality Management Systems, based on ISO 9000 family and other compatible standards (such as ISO 14000, ISO/IEC 17025, etc.), take a set of TQM principles and define a way to certify the compliance to customer requirements, processes definition and quality policy. This principles correspond to the Management System axis of Quality 4.0.

References 1. A blockchain-based integrated document management framework for construction applications. Automation in Construction, 133 104001, (2022). ISSN 0926–5805. https://doi.org/10.1016/j.autcon.2021.104001 2. Akhmatova, M.S., Deniskina, A., Akhmatova, D.M., Prykina, L.: Integrating quality management systems (tqm) in the digital age of intelligent transportation systems industry 4.0. volume 63, pp. 1512–1520 (2022). https://doi.org/10.1016/j. trpro.2022.06.163 3. Asif, M.: Are qm models aligned with industry 4.0? a perspective on current practices. J. Cleaner Prod. 258, 120820 (2020). ISSN 0959–6526. https://doi.org/10. 1016/j.jclepro.2020.120820 4. Baran, E., Korkusuz Polat, T.: Classification of industry 4.0 for total quality management: A review. Sustainability 14 (6), 2022. ISSN 2071–1050. https://doi.org/ 10.3390/su14063329.URL https://www.mdpi.com/2071-1050/14/6/3329 5. Burgess, P., Sunmola, F.,Wertheim-Heck, S.: Blockchain enabled quality management in short food supply chains. Procedia Comput. Sci. 200, 904–913 (2022). https://doi.org/10.1016/j.procs.2022.01.288

QMS and Blockchain in the 4.0 Era

153

6. Burgess, P., Sunmola, F., Wertheim-Heck, S.: Proposal for a maintenance management system in industrial environments based on iso 9001 and iso 14001 standards. Comput. Stand. Interfaces 73, 904–913 (2021) 7. Chiarini, A., Kumar, M.: What is quality 4.0? an exploratory sequential mixed methods study of italian manufacturing companies. Int. J. Prod. Res. 60(16), 4890– 4910 (2022). https://doi.org/10.1080/00207543.2021.1942285 8. da Fonseca, L.M.C.M., Domingues, J.P., Machado, P.B., Harder, D.: Iso 9001:2015 adoption: A multi-country empirical research. J. Indust. Eng. Manage. 12(1), 27– 50 (2019) 9. Data quality certification using iso/iec 25012: Industrial experiences. J. Syst. Softw. 176, 110938 (2021). ISSN 0164–1212. https://doi.org/10.1016/j.jss.2021.110938 10. Dubolazov, V., Tayushev, S., Gabdrakhmanova, I., Simakova, Z., Leicht, O.: Reengineering of logistics business processes influenced by the digitalization. In: 14th International Scientific Conference on Precision Agriculture and Agricultural Machinery Industry, 246, pp. 539–547 (2021) 11. Durana, P., Kral, P., Stehel, V., Lazaroiu, G., Sroka, W.: Quality culture of manufacturing enterprises: A possible way to adaptation to industry 4.0. Social Sci. 8(4), 124 2019. ISSN 2076–0760. https://doi.org/10.3390/socsci8040124. https:// www.mdpi.com/2076-0760/8/4/124 12. ATCC Finance. Industry 4.0 challenges and solutions for the digital transformation and use of exponential technologies. Finance, audit tax consulting corporate: Zurich, Swiss, pp. 1–12 (2015) 13. Gaitero, D., Genero, M., Piattini, M.: System quality and security certification in seven weeks: a multi-case study in spanish smes. J. Syst. Softw. 178(110960), 8 (2021) 14. Grochau, I.H., ten Caten, C.S.: A process approach to iso/iec 17025 in the implementation of a quality management system in testing laboratories. Accred. Qual. Assur. 17, 519–527 (2012) 15. Gryna, F.M., Juran, J.M.: Quality Planning and Analysis: From Product Development Through Use. McGraw-Hill series in industrial engineering and management science. McGraw-Hill, 2001. ISBN 9780070393684. https://books.google.com.ar/ books?id=xjUfAQAAIAAJ 16. AGunasekaran, A., Subramanian, N., Ngai, W.T.E.: Quality management in the 21st century enterprises: Research pathway towards industry 4.0. Int. J. Prod. Econ. 207, 125–129 2019. ISSN 0925–5273. https://doi.org/10.1016/j.ijpe.2018.09. 005.URL https://www.sciencedirect.com/science/article/pii/S092552731830375X 17. Jamulkar, S., Chandrakar, P., Ali, R., Agrawal, A., Tiwari, K.: Evidence management system using blockchain and distributed file system (ipfs). In: International Conference on Machine Learning and Big Data Analytics, pp. 337–359 (2021) 18. aradat, A., Ali, O., AlAhmad, A.: Blockchain Technology: A Fundamental Overview, pages 1–24. Springer Singapore, Singapore, 2022. ISBN 978-981-16-63017. https://doi.org/10.1007/978-981-16-6301-7_1 19. Khan, A.A. et al.: Eps-ledger: Blockchain hyperledger sawtooth-enabled distributed power systems chain of operation and control node privacy and security. Electronics (Switzerland), 10(19), 2395 (2021) 20. Liu, Q.: Construction of Blockchain Technology Audit System. In: Macintyre, J., Zhao, J., Ma, X. (eds.) SPIoT 2021. LNDECT, vol. 97, pp. 523–529. Springer, Cham (2022). https://doi.org/10.1007/978-3-030-89508-2_67 21. Lodi, S., Shaikh, A., Wasif, M., Tufail, M., Butt, F.: A quality 4.0 assurance framework for the higher education institutes. vol. 2022-June, pp. 725–732, 2022. https:// doi.org/10.4995/HEAd22.2022.14032

154

K. P. Bankoff et al.

22. Loukil, F., Boukadi, K., Abed, M., Ghedira-Guegan, C.: Decentralized collaborative business process execution using blockchain. World Wide Web 24(5), 1645– 1663 (2021) 23. Marinez-Perales, S., Ortiz-Marcos, I., Ruiz, J.J.: A proposal of model for a quality management system in research testing laboratories. Accr. Qual. Assur. 26, 237– 248 (2021) 24. Midor, K., Wilkowski, G.: Recertification of a quality management system based on iso 9001 - is it a must for a modern manufacturing company? Prod. Eng. Archives 27, 217–222 (2021). https://doi.org/10.30657/pea.2021.27.29 25. Narayanaswamy, T., Karthika, P., Balasubramanian, K.: Blockchain Enterprise: Use Cases on Multiple Industries, pp. 125–137. Springer International Publishing, Cham, 2022. ISBN 978-3-030-76216-2. https://doi.org/10.1007/978-3-030-762162_8 26. Lakshmi Patibandla, R.S.M., Vejendla, L.N.: Significance of Blockchain Technologies in Industry, chapter Signifcance of Blockchain Technologies in Industry, pp. 19–31. Springer Science and Business Media Deutschland GmbH (2022) 27. Petkoff Bankoff, K., Muñoz, R., Pasini, A.: Sistemas de Gestión de Calidad y Blockchain en la era de la Industria 4.0: una revisión de literatura, pp. 342–353. 2022. ISBN 978-987-1364-31-2 28. Velthuis, M.G.P., Rubio, F.O.G., Muñoz-Reja, I.C.: Calidad de Sistemas Informáticos, chapter 1. Alfaomega Grupo Editor, 2007. ISBN 84-7897-734-1 29. Preukschat, A., et al.: Blockchain. La revolución industrial de internet. Centro Libros PAPF, S. L. U., Barcelona, Spain, 2017. ISBN 978-84-9875-448-3 30. Procedure for Defining the System of Objectives in the Initial Phase of an Industry 4.0 Project Focusing on Intelligent Quality Control Systems, volume 52, pp. 262–267 (2016). https://doi.org/10.1016/j.procir.2016.07.067.The Sixth International Conference on Changeable, Agile, Reconfigurable and Virtual Production (CARV2016) 31. Puri, N., Garg, V., Agrawal, R.: Blockchain Technology Applications for Next Generation, chapter Blockchain Technology Applications for Next Generation, pp. 53–73. Springer Science and Business Media Deutschland GmbH (2022) 32. Rogala, P., Wawak, S.: Quality of the iso 9000 series of standards-perceptions of quality management experts. Int. J. Qual. Serv. Sci. 509–525 (2021) 33. Sader, S., Husti, I., Daróczi, M.: Industry 4.0 as a key enabler toward successful implementation of total quality management practices. Periodica Polytechnica Social and Management Sciences, 27(2), 131–140, 2019. https://doi.org/10.3311/ PPso.12675 34. Saha, P., Talapatra, S., Belal, B., Jackson, V.: Unleashing the potential of the tqm and industry 4.0 to achieve sustainability performance in the context of a developing country. Global Journal of Flexible Systems Management, 23(4), 495– 513 (2022). https://doi.org/10.1007/s40171-022-00316-x 35. Schwab, K.: The Fourth Industrial Revolution, chapter 1. World Economic Forum, 2016. ISBN 978-84-9992-699-5 36. da Silva, F.R., Grochau, I.H., Veit, H.M.: System proposal for implementation of risk management in the context of iso/iec 17025. Accr. Qual. Assur. 26, 271–278 (2021) 37. Wienker, M., Henderson, K., Volkerts, J.: The computerized maintenance management system an essential tool for world class maintenance. Procedia Engineering, 138, 413–420 (2016.) ISSN 1877–7058. https://doi.org/ 10.1016/j.proeng.2016.02.100. https://www.sciencedirect.com/science/article/pii/

QMS and Blockchain in the 4.0 Era

155

S1877705816004641. SYMPHOS 2015 - 3rd International Symposium on Innovation and Technology in the Phosphate Industry 38. Zulqarnain, A., Wasif, M., Iqbal, S.A.: Developing a quality 4.0 implementation framework and evaluating the maturity levels of industries in developing countries. Sustainability 14(18), 2022. ISSN 2071–1050. https://doi.org/10.3390/ su141811298. https://www.mdpi.com/2071-1050/14/18/11298

Databases and Data Mining

Boosting the Permutation Index for Similarity Searching Using an Eclectic Approach Karina Figueroa1(B) , Antonio Camarena-Ibarrola1 , Rodrigo Paredes3 , Nora Reyes2 , and Braulio Ramses Hernández Martínez1 1 Universidad Michoacana, Morelia, Mexico {karina.figueroa,antonio.camarena,1578615h}@umich.mx 2 Universidad de San Luis, San Luis, Argentina [email protected] 3 Universidad de Talca, Talca, Chile [email protected]

Abstract. The permutation index is one of the best strategies for nonexact similarity searching. However, it is still possible to improve its remarkable performance. Hence, we propose boosting it by using an eclectic strategy that combines some interesting ideas from both pivot- and permutant-based indexes. We mix together (i) a convenient way of reducing the permutation length (where the clipped permutations might have different sizes), (ii) a permutation similarity measure adjusted for this permutation clipping, and (iii) the use of the closest permutant to each object as its pivot. This strategy allows us to both shrink the size and increase the discriminability of the permutation index in order to reduce even more the number of distance computations while maintaining the answer quality. The performance of our proposal is tested using three well known real-world databases. As we experimentally show, the performance is improved by reducing more than 30% of the number of distance evaluations needed to solve approximate similarity queries on these real-world datasets. Keywords: Similariy search · Permutant-based index index · Permutation similarity measure

1

· Pivot-based

Introduction

Most database applications need to perform searches. Furthermore, today due to the high availability of multimedia data (such as, datasets of free text documents, images, audios, or videos, among others) many database applications must perform meaningful searches on these types of unstructured data. For this reason, similarity searches have become the more notable operation on these datasets c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 159–174, 2023. https://doi.org/10.1007/978-3-031-34147-2_11

160

K. Figueroa et al.

because for this kind of data two elements are never exactly the same, unless they were digital copies of each other. Two objects could be considered similar depending on the particular problem domain. In general, in order to capture the richness of the data, similarity is modeled and defined by domain experts as a function which is usually expensive to calculate, in terms of the number of operations (arithmetic, I/O, etc.) that are required to obtain it. The goal of any similarity search algorithm is to answer queries as quickly as possible, thus we try to reduce the amount of times we compute the similarity between two objects. Then, a direct way to achieve efficiency is by using an auxiliary index to reduce the number of distance computations needed for answering a query. Any similarity search problem can be modeled as a metric space [6]. Formally, a metric space is a pair (U, d) which is composed of a universe of possible objects U and a distance function d, that allows us to compare any pair of objects from U. Furthermore, the database will be any subset X of universe elements (X ⊆ U) whose elements are of interest. Let be n the cardinality of the database X (n = |X|). As it is aforementioned, we assume that the function d is expensive to compute. Therefore, one of our goals is to minimize the use of d at answering queries. The most known kinds of similarity searches are range and K-nearestneighbor queries. On the one hand, Range queries retrieve all the dataset elements whose distance to a given query element q is lower than or equal to the given radius r. We denote this kind of query as R(q, r). On the other hand, Knearest-neighbor queries, denoted as NNK (q), retrieve K dataset elements that are the K most similar elements to the given query element q. Note that the answer set for a range query is unique, while it could vary in case of ties for the K-nearest neighbor query. Formally, these two kinds of queries can be defined as: – R(q, r) = {x ∈ S , d(x, q) ≤ r}. – NNK (q) ⊆ U and |NNK (q)| = k and ∀x ∈ NNK (q), y ∈ U−NNK (q), d(x, q) ≤ d(y, q). Since, it is not practical to sort a multimedia data according to any total order (because such an order is usually meaningless to solve a similarity query), it is necessary to build an index to organize the objects so as to solve queries efficiently. An index is a data structure that allows us to obtain a candidate set without sequentially scanning the entire database (unthinkable for huge datasets). There are three well-known index families, namely, the ones based on pivots, the ones based on compact partitions, and recently, the ones based on permutations. Pivot-based and compact-partition-based indexes are commonly used in exact proximity indexes, while permutation-based ones are approximate ones. In an approximate search we may lose a few relevant objects from the query answers, but accepting this loss allows us to improve searching time significantly. In this paper, we propose a new hybrid method to enhance the performance of permutation-based indexes. Our proposal eclectically blends three main ideas: the first one is to conveniently reduce the length of the permutations stored within the index, the second one is adapting the permutation similarity measure

Boosting the Permutation index for Similarity Searching

161

for these clipped permutations, and the third one is to use the closest permutant of each object as a pivot for it. This novel strategy allows us to improve the already remarkable performance of the permutation-based index when solving approximate similarity queries. The performance of our proposal is tested using three well known real-world databases: NASA and Colors, which are part of the SISAP project’s metric space benchmark dataset available at [10], and SIFT image descriptors [12] from the TEXMEX website, available at corpus-texmex.irisa.fr. Using our eclectic blend, we reduce more than 30% of the number of distance evaluations needed to solve approximate similarity queries on these databases. A preliminary version of this proposal appears in [9]. In this current version, we have extended and clarified the explanations of our proposal by adding more examples and several discussions about the ideas involved in this work. Besides, we extend the experimental evaluation to the SIFT image descriptors, a large dataset that allows us to verify that this proposal can effectively scale up. The rest of this article is organized as follows: Sect. 2 describes the related work on metric spaces and similarity search, including a brief explanation of the Metric Inverted File index [1] and how to reduce and improve it [8,11]. In Sect. 3 we show our novel hybrid index, whose experimental evaluation is shown in Sect. 4. This evaluation considers two real-world datasets from the SISAP library [10] and the real-world dataset of SIFT image descriptors [12]. Finally, we expose conclusions and some possible extensions for this work in Sect. 5.

2

Related Work

Similarity searching in metric spaces has been studied in three leading families of algorithms: pivot-based algorithms [6,14], partition-based algorithms [5,7], and permutation-based algorithms [1,4]. As we aforementioned, the permutationbased approach is one of the best representative methods to solve approximate similarity searches. Although general metric spaces do not have an explicit dimensionality, we can explain their intrinsic dimensionality following the same idea as in vector spaces. If we compute the histogram of distances between any object pairs in metric spaces of high intrinsic dimension, the probability distribution of distances would be narrow and peaked, making the work of any similarity search algorithm more difficult [2,6]. We say that a general metric space has high intrinsic dimensionality when its histogram of distances is concentrated and it is very difficult to solve any query on it. Particularly, pivot-based algorithms work well on spaces with low intrinsic dimension, partition-based algorithms are adequate for medium to high intrinsic dimension, and permutation-based algorithms are useful on high intrinsic dimension in an approximate fashion. In the following we describe the pivot-based and permutation-based algorithms as they are relevant for this work.

162

2.1

K. Figueroa et al.

Pivot-Based Algorithm

Pivot-based algorithms use a subset of objects P = {p1 , p2 , . . . , pk } ⊆ U to compute pseudo-coordinates in an auxiliary vector space. Each dataset object x ∈ X is represented by a vector containing its k distances to every pivot pi ∈ P . Let D(u, P ) = (d(x, p1 ), . . . , d(x, pk )) be this vector. Given a query R(q, r), we first represent q in the same auxiliary space as D(q, P ) = (d(q, p1 ), . . . , d(q, pk )). Thus, by virtue of the triangle inequality, any object x ∈ X can be discarded if |d(pi , x) − d(pi , q)| > r for any pivot pi ∈ P . Therefore, in this case, we do not need to explicitly evaluate d(x, p) saving us one distance computation. Finally, to obtain the query answer, all the non-discarded database objects are directly compared with q and only the objects whose distance to q is within the threshold r are reported. Since we want to discard objects, we need large values for |d(pi , x) − d(pi , q)|. Then, we would prefer pivots that are close to the objects or close to the query. We can obtain pivots close to the objects by selecting several pivots. However, we cannot anticipate the location of the query. 2.2

Permutation-Based Algorithm

Similar to pivot-based indexes, permutation-based indexes also use some distinguished elements from U, but this time they are used as reference points and they are called permutants. The main idea of this method was introduced in [3]. Let P be the permutant set, formally, P = {p1 , . . . , pk } ⊆ U. For the sake of producing the index, each u ∈ X computes D(u, P) = {d(u, p1 ), . . . , d(u, pk )}, that is, u computes its distance to every permutant. Then, each object u sorts the set P using their distances computed in D(u, P) in increasing order. This ordering is called the permutation of u, which is denoted by Πu . Therefore, the permutant in the first position of Πu is the closest one to u, and so on. Inversely, let Πu−1 be the inverse of the permutation Πu , so we can use Πu−1 to identify the position of any permutant in Πu . As an example, Fig. 1 depicts a subset of points in R2 , considering Euclidean distance. The set of permutants is P = {p1 , p2 , p3 , p4 , p5 , p6 }; that is, k = 6. If we consider the object u ∈ X, D(u, P) = (3, 4, 6, 3, 2, 5) where d(u, p1 ) = 3 and so on. Then, sorting D(u, P) by increasing distance, we can obtain the permutation of u as Πu = (5, 1, 4, 2, 6, 3), when we consider just the index of each permutant in such increasing order. It can be noticed that the closest permutant is p5 , because d(u, p5 ) = 2. The inverse permutation Πu−1 is (2, 4, 6, 3, 1, 5). Then, Πu−1 (p2 ) = 4 means p2 is in the 4th position in Πu . It can be noticed that O(nk) distance computations are needed to obtain the permutations of all the database objects, being |X| = n and |P| = k. As two identical elements must have exactly the same permutation, we expect the permutations of two similar elements to be also similar. Therefore, when we search for elements similar to a query q, the problem is translated to find objects whose permutations are similar to Πq . An advantage of this approach is that

Boosting the Permutation index for Similarity Searching

163

Fig. 1. Example of a permutation considering P ⊂ R2 using Euclidean distance. In the plot, the distances between u and each permutant in the set P = {p1 , p2 , p3 , p4 , p5 , p6 } are represented by arrows labelled by the respective value of the distance.

computing the permutation similarity is usually cheaper than computing the distance function d. There are different measures to compute similarity between permutations [13]. One of the most used is the Spearman Footrule measure Fk , defined as: k=|P|

F (u, q)k = F (Πu , Πq ) =



|Πu−1 (pi ) − Πq−1 (pi )|

(1)

i=1

The basic permutation method stores the whole permutation of each dataset object. Hence, the index needs O(nk) distance computations and also O(nk) space. An interesting member of this index family is the Metric Inverted File [1]. In the next section we describe it along with some of its improvements. 2.3

Metric Inverted File (MI-File)

Amato and Savino proposed to use an inverted file of permutations [1], where each permutant in P has its respective entry in the inverted file. We call this, the MI-File approach. To produce the index, they define a parameter mi < |P| which is used during preprocessing time. For each permutant p ∈ P the MI-File index stores the list of elements u ∈ X such that its permutation Πu has the permutant p within the first mi positions. The list for each permutant p stores pairs (u, pos), where u denotes an object in X and pos refers to the position of p within the permutation Πu . Given the query q, we need to determine Πq . The MI-File index uses another parameter ms  mi for searching. The MI-File search method only retrieves the posting lists of the first ms permutants in Πq and next, it joins all of them to obtain the candidate set. Finally, all the elements in the candidate set are directly compared with q using the distance d to produce the query answer. The authors in [1] proposed a variant of the Spearman Footrule permutation similarity measure, because each permutation was clipped by the parameter mi . In the works [8,11], the authors improved the performance of the MI-File index in two ways. On the one hand, each posting list stores only elements u

164

K. Figueroa et al.

but not the positions pos [11] and each element maintains its short permutation. They also proposed a new way to compute the Spearman Footrule measure, considering that the permutations have changed. On the other hand, to reduce even more the candidate set cardinality, a new parameter msr is selected according to the radius r of the similarity query [8] (instead of the fixed-parameter ms from the MI-File index).

3

Our Proposal

In the state of the art, the works [8,11] show that the permutant-based index performance still allows room for improvement. We pick some ideas from these previous works, for instance, we also shorten the permutations, need to modify the similarity measure according to the shortening, and the use of additional parameters to control the permutation size. However, we still use a plain permutant index, that is, for each element we store its shorten permutation and some other additional information, but without using the auxiliary inverted index. Now, we specific the three main aspects involved in our work. The first one is to introduce a new mechanism for shortening permutations in the index, the second one is to use one of the permutants as a pivot, and the third is to consider a modified permutation similarity measure adapted for our specific case. After explaining in detail these aspects, we show how to combine them in order to produce our novel index and its respective searching algorithm. 3.1

Clipped Permutations

Instead of having a maximum global length mi , each permutation can be shortened with a different length, by considering for each object u ∈ X its appropriate permutation prefix. For this sake, we consider the distance to its closest permutant; that is, d(u, pΠu (1) ) = ru , and keep for u those permutants within a distance lower than or equal to 2ru . We ran preliminary experiments to determine that 2ru performs well when solving queries. Our preliminary experimental results have shown that the value 2ru has some dependence on the intrinsic dimension of the particular metric space; and as long as the intrinsic dimension increase, we could change the coefficient to a value lower than 2. However, this still deserves further study. We call Πu the u’s clipped (or trimmed) permutation. Let mu denote the length of the trimmed permutation for element u; that is, mu = |Πu | is the length of the prefix selected. We note that if a permutant is very close to the object u then ru will be small and consequently, it is possible that there is only one permutant within distance 2ru from u. Therefore, we propose using a minimum global length mmin for all the permutations. On the other hand, since the distance histogram of spaces having high intrinsic dimension is concentrated, it is possible that some object could have all the permutants within distance 2ru from u. Hence, we also propose a maximum global length mmax for all the permutations. As a by-product of this improvement, we

Boosting the Permutation index for Similarity Searching

165

can avoid adapting the coefficient 2 when the particular space has high intrinsic dimension. In our example of Sect. 2.2, Fig. 1, for element u we obtained ru = 2. So, its clipped permutation is Πu = (5, 1, 4, 2) because d(u, p2 ) = 4 ≤ 2ru . It can be noticed that, by this way of shortening the permutations, each clipped permutation would have a different length. 3.2

Including a Single Pivot

When we search for a query q, we have to compute Πq by calculating all the distances between q and every permutant in P. Besides, we know that if we keep the distances from the element u ∈ X to all the permutants in P, we can use them to obtain lower bounds of the distance from u to q, as in a pivot-based algorithm. Hence, we can discard the elements whose lower bounds exceed the search threshold r. However, storing all the distances between the elements u ∈ X and the permutants p ∈ P is expensive. We also know that a good pivot for estimating the distance from u to q is some element similar to u; so, we decided to use the permutant closest to u as its pivot. Then, we already have the pivot identifier and we only need to store the distance to it. Therefore, we only need one distance for each object u ∈ X, which implies that we keep exactly n extra distances in the index, which is negligible for the index size. Naturally, one can wonder whether storing more pivots for each object would be convenient. As we already mention, the closest permutant is a good pivot option. But, the question is which other permutant should be considered. There are two obvious choices, namely, the second closest permutant and the furthest one. The second closest permutant should be close to the first one; hence, there is a little chance that it could improve the lower bound of the distance to the query. Of course, adding another pivot also requires more space in the index for each object. Otherwise, the furthest permutant does have better chance of improving the lower bound, but as we only store the permutation prefix, we should need to store which is the furthest permutant and its respective distance, so we need even more space in the index. Clearly, this reasoning can be extended for including more pivots, and it involves even more space in the index with no significant chance of improving the query distance lower bound. Accordingly, we prefer to keep only one extra distance in the index; but, this deserves further study. Continuing with our example in Fig. 1, the closest permutant of object u is p5 , so, we use it as pivot and store the distance 2. 3.3

Permutation Similarity Measure

As we have clipped permutations within the index, we have to reformulate the similarity measure. Moreover, since the permutation lengths can vary, we introduce two penalty strategies in order to cope with the lengths.

166

K. Figueroa et al.

Given a query q, we first need to calculate all the distances between q and the permutants in P to obtain Πq . At this point, we have the complete query permutation (with length k) and the distances D(q, P). Thus, it should be possible to compare any clipped permutation Πu of any length with Πq , using the same Eq. 2 proposed in [8]: F ∗ (u, q)mu = F ∗ (Πu , Πq ) =

mu 

|i − Πq−1 (Πu (i))|

(2)

i=1

If all clipped permutations had the same size, Eq. 2 should compute a fair value for the similarity measure. But, as we already said, we include a penalty system to compensate the case when we compare two clipped permutations of different size. In particular, we need to quantify penalties when we find a permutant that does not belong to Πu and, analogously, when we miss a permutant from the prefix of Πq . Fortunately, these penalties also improve the discriminability of our proposal, as can be seen in Sect. 4. Penalty When a Permutant does not Belong to Πu . The permutants not belonging in Πu (that is, the discarded ones) add a penalty that considers how big is the displacement of the remaining permutants in Πu with respect to their positions in Πq . We call the maximum of all these displacements maxi. So, we add maxi · (k − mu ) to F ∗ . Note that if permutants in Πu are placed in the prefix of Πq , this penalty is very mild. Also, the penalty increases as long as displacements are bigger. To illustrate this penalty we extend our running example of Fig. 1 as shown in Fig. 2, where we include the query q. The clipped permutation for u is Πu = (5, 1, 4, 2), so mu = 4. The permutation for q is Πq = (3, 6, 1, 2, 4, 5). The displacements of permutants in Πu are respectively (5, 1, 2, 0), so maxi = 5, which corresponds to the displacement of permutant 5. Finally, k is |P| = 6. Therefore, the penalty is 5 · (6 − 4) = 10. Penalty When Missing a Permutant from the Prefix of Πq . Two permutations starting with the same permutants give a strong suggestion that the respective objects could be similar. Likewise, if some of the permutants in the prefix of Πq does not belong to Πu , we have a strong indicator that object u could be irrelevant to the query q. So, we need to establish a criterion about what is this prefix. Analogously to Πu , considering the query radius r and using D(q, P), we compute how many permutants have their distances from q within threshold 2r. This value is called mq , so the prefix of mq permutants is called Πq . Notice that, if mq < mmin then mq is set to mmin . Otherwise, if mq > mmax then mq is set to mmax . Therefore, we determine how many permutants in Πq are missing in Πu . We call this value c. Finally, as this is a strong indicator that u is not relevant to q, we strongly penalize the measure with c · F ∗ . Of course, if all the permutants in Πq occur in Πu , this term is zero. But, the more the number of missing permutants in Πu , the greater the penalty (and each increment is also very strong).

Boosting the Permutation index for Similarity Searching

167

Fig. 2. Example of a permutation considering P ⊂ R2 using Euclidean distance and a query.

Considering the example of Fig. 2, where the query radius r = 2, we obtain Πq = (3, 6, 1, 2). Note that the missing permutants in Πu are 3 and 6, so c = 2 and F ∗ = 5 + 2 + 2 + 0 = 9. Therefore, this penalty is c · F ∗ = 18. Note that in the case of K-nearest-neighbor queries, as we do not know beforehand the final query radius that encloses the K nearest elements of q, we set the prefix of the query permutation as mmax . Resulting Permutation Similarity Measure. We use Eq. 2 and these two penalties in order to compute the permutation similarity measure. The obtained measure is depicted in Algorithm 1. Algorithm 1 distanceBetweenPermutations(Πq−1 , mq , Πu , mu , k) 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:

OUTPUT: Reports modified Spearman Footrule. t ← 0, c ← mq , maxi ← 0 for i ← 1 to mu do Δi ← |i − Πq−1 (Πu (i))|, t ← t + Δi maxi ← max(Δi , maxi) if Πq−1 (Πu (i)) < mq then c←c−1 end if end for return t ← t + maxi · (k − mu ) + c · t

The variable t accumulates the similarity measure, c is initialized as mq so we start by assuming that we miss all the permutant in Πq , and maxi is initialized as zero. Then, we compute a for cycle to review all the permutants in Πu (Lines 3

168

K. Figueroa et al.

to 9). Line 4 computes the displacement Δi for each permutant in Πu and accumulate it in t. Line 5 updates the value of maxi, when the displacement increases. In Line 6, we verify whether the permutant Πu (i) belongs to the prefix Πq , in whose case, we decrease c by 1 (Line 7), as we found another permutant within Πq . Finally, in Line 10 we apply the penalties and return the permutation similarity measure. For the example of Fig. 2, the value of t is 9 and the penalties are respectively 10 and 18. Thus, the similarity measure between Πu and Πq reported by Algorithm 1 is 37. If we compute the Spearman Footrule measure (Eq. 1) between the whole permutations Πu and Πq , we obtain a value of 16. As it can be seen, the penalties tend to emphasize the differences between the clipped permutations, which diminishes the probability of considering this element as relevant to the query. 3.4

Solving Similarity Range Queries

Given dataset X, we chose a subset P of k objects at random to compute the permutations. Then, for each object u ∈ X we compute its permutation Πu and its clipped version Πu , and we store both Πu and the distance to the closest permutant in the index. Given a range query R(q, r), we compute its permutation Πq and its prefix Πq , so mq = |Πq |. Since, for each element u ∈ X, the index stores the distance between u and its closest permutant and we already compute D(q, P) at querying time, then, we can calculate a lower bound of d(u, q). Thus, for each u, d(u, q) is lower bounded by |d(u, p∗ ) − d(p∗ , q)|, using the closest permutant p∗ to u as a pivot. Then, if |d(u, p∗ ) − d(p∗ , q)| > r then u can be safely discarded from the candidate set as, by virtue of triangle inequality, it does not belong to the query answer. Therefore, only the non-discarded objects are included in the candidate set. We sort increasingly this set according to our adapted permutation similarity measure (computed by Algorithm 1) to obtain a candidate list. Next, since there is a good chance of having the relevant objects to the query q at the beginning of this sorted list, we can review just a small portion at its starting. Consequently, we would compare directly q with few elements using the distance function d. The K-nearest-neighbor queries can be solved by using the range query procedure, starting from radius r = ∞ and then, reducing the query radius in order to enclose just the K current candidate objects to be the nearest neighbors of q, as we proceed.

4

Experimental Results

The performance of our proposal has been tested using three well known realworld databases: NASA, Colors, and SIFT. The two former datasets are available from SISAP project’s metric space benchmark dataset [10]. The third one, SIFT image descriptors, belongs to the TEXMEX testbed, and this particular dataset

Boosting the Permutation index for Similarity Searching

169

was first introduced in [12]. Any quadratic form can be used as a distance on these spaces, so we chose Euclidean distance as the simplest meaningful alternative. As NASA and Colors datasets are relatively small, we study the performance of our proposal when we have more space available for indexation; thus, we perform test varying the permutant set size (64, 128, and 256 permutants). As SIFT is a large dataset, we study the behavior of our proposal considering space limitations that occurs in real-world scenarios, thus, we test only with 64 permutants. Hence, this allows us to study how much affect the other parameters to the performance of our proposal. Particularly, we are interested to experimentally evaluate what would happen if we force a value for radius ru , instead of using the value that each object obtains to its closest permutant. As can be noticed, this selection should affect the index size. 4.1

NASA

NASA is a dataset where each object is represented as a 20-dimensional vector. They were generated from images downloaded from NASAand there are no duplicate vectors. The total number of vectors is 40,150. The first 39,650 are indexed and the remaining 500 vectors are used as queries. In Fig. 3(a), we show the average performance of our proposal (ShP) along with those of the basic permutation idea (PP, with 64 permutants), the MIFile using mi for the missing values during the Spearman Footrule computation (MIFI Pi, using similar space of our index), and the MI-File modified as in [8] (MIFI Pm, using similar space of our index). These experiments account for how many distances are needed to obtain the true NNK (q) answer, varing K ∈ [1, 8]. Notice that our proposal makes 30% fewer distance computations than the best technique proposed in [8] for NN8 . In Fig. 3(b), we show the histogram for different lengths of clipped permutations, considering that mmin = 8 and mmax = 32. It is remarkable that using 64 permutants we can get clipped permutations with different mu lengths and smaller than the original size (64), as shown in Fig. 3(b). The average length of the clipped permutation is 27. We note that our index having almost half the space of PP with 64 permutants, behaves better. Moreover, when using a more extensive set of permutants (128 concerning 64), the average searching cost is almost the same, since the clipped permutations have almost the same size. If we use more permutants, we increase the construction cost of the index. Therefore, it is not worth using more permutants because our proposal always leave only a few permutants that are good ones. In fact, in Fig. 3(a) we omit the plot for k = 256 as the results are similar to those of k = 64 and 128. During searches, our proposal outperforms the other variants that build the index with the same number of permutants and construction costs. This behavior may be not only due to a good clipped permutation but also to the pruning ability that gives the stored distance to the nearest permutant of each element.

170

K. Figueroa et al.

Fig. 3. Performance with NASA dataset.

Fig. 4. Performance with Colors dataset.

4.2

Colors

This dataset consists of 112,682 color histograms represented as 112-dimensional feature vectors, from an image dataset1 Similarly with the NASA dataset, the first elements are indexed and the last 500 color histograms are used as queries. In Fig. 4(a), we show the performance of our proposal (ShP). Again, it is compared with the MI-File algorithms and the permutation-based algorithm (PP). In this dataset, our proposal needs 37% fewer distances than the best technique used in [8]. As it occurs in the NASA space, the number of permutants used does not significantly affect the search performance. On Fig. 4(b), we show the histogram for each length of clipped permutations, where mmin = 8 and mmax = 32. Please, note that all clipped permutations have almost the same length independently of the original permutation size. Surprisingly, the average length is again 27 permutants.

1

Available at http://www.dbs.informatik.uni-muenchen.de/~seidl/DATA/histo112. 112682.gz..

Boosting the Permutation index for Similarity Searching

171

Newly, if we fix the number of permutants used to build the different alternatives of the indexes whose construction costs are the same, our proposal outperforms the others during searches. 4.3

SIFT

Nowadays, TEXMEX2 offers four datasets to evaluate approximate nearest neighbors search algorithms. For each dataset, TEXMEX provides four sets. We only use the SIFT dataset [12] which contains a set of 1,000,000 image descriptors to build the index, a set of 10,000 elements as queries, and two other sets for other purposes. In the SIFT dataset, each element is represented as a 128-dimensional vector. As can be noticed, the cardinality of this dataset is significantly larger than the two previous ones. Therefore, if we try to reproduce the test for NASA and Colors spaces we should require quite a lot of memory when we build the index, as we initially needs O(nk) space to store the whole permutations which are later shortened with the described mechanism. Besides, we need O(nk) distance computations to build the index, which involves an excessive time requirement. Therefore, we limit the number of permutants to 64 for this experimental series, while considering mmin = 8 and mmax = 32, as before. Since we now have a fixed permutant set size, we cope the study of the parameter ru , which affect the size of the clipped permutations. This time, instead of using ru as the distance to the closest permutant, which implies that each object u has its own value for ru , we set ru to a fixed value for all u ∈ X. In Fig. 5(a), we show the average performance of our proposal, considering three fixed values for the parameter ru chosen conveniently for this space (ru = 280, 350 and 450). The average permutation size for these options are approximately 8, 10, and 19 permutants, respectively; hence, we include the performance of the plain permutant index with 8 and 16 permutants, as these alternatives use similar space for indexation. Besides, we include the performance of our non-fixed ru option, whose average clipped permutation size is 30. As can be seen, the fixed alternatives for ru = 280, 350 and 450 overcome both plain variants while using less space for the index. On the other hand, the nonfixed ru option obtains a similar performance but uses more permutants than the fixed ones. This reveals that our proposal improves over plain permutants, but add another parameter to be tuned. Clearly, it deserves more study. Finally, Fig. 5(b) depicts the clipped permutation size histogram for the same values of ru used before. As can be seen, using the smallest ru value (280), the favorite clipped permutation size is the minimum value allowed in this case (mmin = 8) and no clipped permutation reaches the maximum possible value (mmax = 32); the average clipped permutation size is 8.02. When we increase the value of ru , we appreciate that there is a more even distribution of the clipped permutation sizes; in fact, they can reach the maximum available value 2

Available at http://corpus-texmex.irisa.fr/.

172

K. Figueroa et al.

(32). The average clipped sizes are 9.90 and 18.65. This show that as we increase the value of ru , more clipped permutations sizes reach the maximum value. We note that we need a preliminar dataset study for fixing a specific value for ru . However, having more information about the dataset compensates the needed effort to discover this knowing as it could minimize the searching cost.

Fig. 5. Performance with SIFT dataset.

5

Conclusions and Future Work

In this paper, we propose a new strategy for reducing the permutation length, which we have called clipped permutations. We also propose a permutation similarity measure adapted for this clipping. Our approach also takes advantage of storing only one distance per database element to obtain a lower bound of the distance between the element and the query. For this sake, we store the distance from each object to its closest permutant. This stored distance allows for discarding many elements. This way we can use a smaller eclectic index which blends some good ideas from both pivots and permutant indexes, and at the same time it improves search performance. We have tested the performance of our proposal with three well-known realworld databases: NASA and Colors, obtained from SISAP project’s metric space benchmark set [10], and SIFT obtained from TEXMEX [12]. Our experimental results proved that our approach surpasses the other known permutation-based techniques. In fact, the eclectic combination of these good ideas significantly improves searching performance of the plain permutation-based index and overcomes the MI-File presented in [1], for approximate similarity searching. As it can be noticed, we reduced more than the 30% the distance evaluations needed to solve the queries on both databases.

Boosting the Permutation index for Similarity Searching

173

As future work, even though we have already tested our proposal on a large dataset (SIFT images descriptors), we can consider even more large datasets. We continue analyzing the parameters of our proposal, that is verifying how the values of ru , mmin and mmax affect the lengths of the permutations and their impact on storage and search performance. Besides, we plan to study the actual pruning ability of the stored distances to the nearest permutant of each database element. An appealing trend is to consider some synthetic databases of increasing dimension to evaluate how the dimensionality curse affects our proposal. Also, we consider investigating how the number of permutants used during the index construction affects the search performance considering other metric spaces.

References 1. Amato, G., Savino, P.: Approximate similarity search in metric spaces using inverted files. In: Proceedings of the 3rd International ICST Conference on Scalable Information Systems, INFOSCALE 2008, Vico Equense, Italy, June 4–6, 2008. p. 28 (2008) 2. Brin, S.: Near neighbor search in large metric spaces. In: Proceedings of the 21st Conference on Very Large Databases (VLDB’95), pp. 574–584 (1995) 3. Chávez, E., Figueroa, K., Navarro, G.: Proximity searching in high dimensional spaces with a proximity preserving order. In: Proceedings of the 4th Mexican Intl. Conf. in Artificial Intelligence (MICAI’05), pp. 405–414. LNAI 3789 (2005) 4. Chávez, E., Figueroa, K., Navarro, G.: Effective proximity retrieval by ordering permutations. IEEE Trans. on Pattern Analysis and Machine Intelligence (TPAMI) 30(9), 1647–1658 (2009) 5. Chávez, E., Navarro, G.: A compact space decomposition for effective metric indexing. Pattern Recogn. Lett. 26(9), 1363–1376 (2005) 6. Chávez, E., Navarro, G., Baeza-Yates, R., Marroquín, J.: Proximity searching in metric spaces. ACM Comput. Surv. 33(3), 273–321 (2001) 7. Ciaccia, P., Patella, M., Zezula, P.: M-tree: an efficient access method for similarity search in metric spaces. In: Proceedings of the 23rd Conference on Very Large Databases (VLDB’97), pp. 426–435 (1997) 8. Figueroa, K., Camarena-Ibarrola, A., Reyes, N.: Shortening the candidate list for similarity searching using inverted index. In: Mexican Conf. on Pattern Recognition. vol. 12725, pp. 89–97. LNCS Springer (2021). https://doi.org/10.1007/9783-030-77004-4_9 9. Figueroa, K., Camarena-Ibarrola, A., Reyes, N., Paredes, R., Martínez, B.R.H.: A hybrid approach to boost the permutation index for similarity searching. In: Actas del XXVIII Congreso Argentino de Ciencias de la Computación (CACIC 2022), pp. 458–467 (Oct 2022) 10. Figueroa, K., Navarro, G., Chávez, E.: Metric spaces library (2007), available at http://www.sisap.org/Metric_Space_Library.html 11. Figueroa, K., Reyes, N., Camarena-Ibarrola, A.: Candidate list obtained from metric inverted index for similarity searching. In: Martínez-Villaseñor, L., HerreraAlcántara, O., Ponce, H., Castro-Espinoza, F.A. (eds.) Advances in Computational Intelligence, pp. 29–38. Springer International Publishing, Cham (2020) 12. Jégou, H., Douze, M., Schmid, C.: Product quantization for nearest neighbor search. IEEE Trans. Pattern Anal. Mach. Intell. 33(1), 117–128 (2011). https:// doi.org/10.1109/TPAMI.2010.57

174

K. Figueroa et al.

13. Skala, M.: Counting distance permutations. J. Discrete Algorithms 7(1), 49–61 (2009). https://doi.org/10.1016/j.jda.2008.09.011 14. Zezula, P., Amato, G., Dohnal, V., Batko, M.: Similarity Search: The Metric Space Approach, Advances in Database Systems, vol. 32. Springer (2006). https://doi. org/10.1007/0-387-29151-2

Dynamic Distal Spatial Approximation Trees Edgar Ch´avez1 , Mar´ıa E. Di Genaro2 , and Nora Reyes2(B) 1

Centro de Investigaci´on Cient´ıfica y de Educaci´on Superior de Ensenada, Ensenada, Mexico [email protected] 2 Departamento de Inform´atica, Universidad Nacional de San Luis, San Luis, Argentina {mdigena,nreyes}@unsl.edu.ar

Abstract. Metric space indexes are critical for efficient similarity searches across various applications. The Distal Spatial Approximation Tree (DiSAT) has demonstrated exceptional speed/memory trade-offs without requiring parameter tuning. However, since it operates solely on static databases, its application is limited in many exciting use cases. This research has been dedicated to developing a dynamic version of DiSAT that allows for incremental construction. It is remarkable that the dynamic version is faster than its static counterpart. The outcome is a faster index with the same memory requirements as DiSAT. This development enhances the practicality of DiSAT, unlocking a wide range of proximity database applications. Keywords: similarity search · dynamism · metric spaces · non-conventional databases

1 Introduction In recent years, the metric space approach has become popular for handling complex and unstructured databases. These databases often require similarity searches to find objects similar to a given query object. Similarity searches have various applications in fields like text searching, information retrieval, machine learning, image processing, and computational biology. In the metric space model, a distance function is defined between objects in a universe U, and proximity searching involves finding objects in a dataset X that are similar enough to a given query object q. The database can be preprocessed to create a metric index, which accelerates query response times. Two common similarity queries are range queries and k-nearest neighbors queries. There are numerous metric indexes available, with the Distal Spatial Approximation Tree (DiSAT) being a popular index that uses hyperplanes to divide the search space and approach the query spatially. However, the DiSAT is not well-suited for databases where data is obtained gradually over time. To address this issue, the Bentley-Saxe method (BS) can be used to create dynamic indexes that can be split or joined based on insertion/deletion rates. The Distal Spatial Approximation Forest (DiSAF) is a dynamic index based on the DiSAT, but it has limitations due to expensive rebuilds. This paper presents a new dynamic version of the DiSAT called the dynamic DiSAT (DDiSAT). This version significantly reduces construction costs and improves search c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 175–189, 2023. https://doi.org/10.1007/978-3-031-34147-2_12

176

E. Ch´avez et al.

performance. The approach allows for insertions and range searches, with deletions and k-NN searches left as future works. The paper also includes an analysis of how the similarity search and construction cost are affected by the number of pending elements to be inserted, providing insights into selecting the number of elements to decrease construction costs while maintaining search performance. A preliminary version of this article appears in [2]. We extended the preliminary version with an in deep analysis of construction cost affected by the number of elements pending to be actually inserted into the tree, providing a guidance in selecting the number of the elements which will be effectively added as nodes into the tree, as a way to decrease construction costs while maintain the search performance. The paper is organized as follows: Sect. 2 covers some basic concepts, Sect. 3 details the DiSAT, DiSAF, Spatial Approximation Trees, and Dynamic Spatial Approximation Trees, Sect. 4 introduces the DDiSAT, Sect. 5 evaluates the performance of the DDiSAT experimentally, Sect. 6 studies the impact of pending elements on similarity search and construction cost, and Sect. 7 presents conclusions and future works.

2 Some Notation The metric space model can be defined as follows: Consider a set X of objects and a nonnegative distance function d : X × X −→ R+ defined on them. This function satisfies the three axioms of a metric, making the pair (U, d) a metric space: strict positivity (d(x, y) ≥ 0 and d(x, y) = 0 ⇔ x = y), symmetry (d(x, y) = d(y, x)), and triangle inequality (d(x, z) ≤ d(x, y) + d(y, z)). We have a finite database U ⊆ X with n elements, which can be preprocessed to build an index. Given a new object q ∈ X (a query), the goal is to retrieve all similar objects in U. There are two common types of queries: – Range query: retrieve all objects in U within a distance r of q. That is, x ∈ U, d(x, q) ≤ r. – k-nearest neighbors query (k-NN): retrieve the k closest objects to q in U. That is, a set A ⊆ U such that |A| = k and ∀x ∈ A, y ∈ U − A, d(x, q) ≤ d(y, q). Since the distance function is expensive to compute, the complexity of the search is typically measured as the number of distance evaluations performed. The goal is to preprocess the dataset to minimize the number of distance evaluations needed to answer queries. This paper focuses on range queries, as k-NN queries can be obtained from range queries in an optimal way. There are many similarity search indexes available, and we will discuss some relevant ones in the next section [6, 7, 11, 14].

3 Distal Spatial Approximation Trees The Distal Spatial Approximation Tree (DiSAT) [4] is a type of the Spatial Approximation Tree (SAT) [9]. These data structures use a spatial approximation approach to iteratively approach a query by navigating the tree from the root. To construct the DiSAT, an element a is chosen as the root, and a set of neighbors N (a) is identified. The neighbors

Dynamic Distal Spatial Approximation Trees

177

are a subset of elements x ∈ U that are closer to a than any other element in N (a). The remaining elements (not in N (a) ∪ a) are assigned to their closest neighbor in N (a). Each element in N (a) recursively becomes the root of a new subtree that contains the assigned elements. For every node a, the covering radius, R(a), which is the maximum distance between a and any element in the subtree rooted at a, is stored. The initial set of neighbors for the root a, N (a), is empty, allowing for the selection of any database element as the first neighbor. Once the first neighbor is chosen, the database is split into two halves using the hyperplane defined by proximity to a and the selected neighbor, and any element on the a side can be selected as the second neighbor. The process of selecting subsequent neighbors continues until the root zone, which consists of database elements closer to the root than the previous neighbors, is empty. The DiSAT aims to improve the performance of the original algorithm by selecting distal nodes instead of proximal ones. This approach increases the separation between hyperplanes, which in turn decreases the size of the covering radius, the two variables that govern the performance of these trees. The performance improvement depends on the root element selected, and different roots can lead to completely different DiSATs, each with different search costs. For instance, the DiSAT obtained by selecting p6 as the tree root in a metric database is illustrated in Fig. 1(a) and Fig. 1(b), which depict the covering radii for the neighbors of the tree root.

Fig. 1. Example of a metric database in R2 , and DiSAT obtained if p6 were the root.

The process for constructing the DiSAT is formally described in Algorithm 1. To perform a range search, Algorithm 2 is used and is called as RangeSearch(a,q,r,d(a, q)), where a is the root of the tree, q is the query object, and r is the search radius. One important feature of DiSAT is that a greedy search can be used to locate all the objects that have been inserted previously. For a range query with radius r and c being the closest element between the set a ∪ N (a) ∪ A(a), where A(a) is the set of ancestors of a, the same greedy search is used by traversing all the nodes b ∈ N (a) such that d(q, b) ≤ d(q, c) + 2r. This is because any element x ∈ (q, r)d can differ from q by at most r in any distance evaluation and could have been inserted into

178

E. Ch´avez et al.

Algorithm 1 Process to build a DiSAT for U ∪ {a} with root a. BuildTree(Node a, Set of nodes U ) 1. N (a) ← ∅ /* neighbors of a */ 2. R(a) ← 0 /* covering radius */ 3. For v ∈ U in increasing distance to a Do 4. R(a) ← max(R(a), d(v, a)) 5. If ∀b ∈ N (a), d(v, a) < d(v, b) Then 6. N (a) ← N (a) ∪ {v} 7. For b ∈ N (a) Do S(b) ← ∅ 8. For v ∈ U − N (a) Do 9. c ← argminb∈N (a) d(v, b) 10. S(c) ← S(c) ∪ {v} 11. For b ∈ N (a) Do BuildTree(b,S(b))

Algorithm 2 Searching of q with radius r in a DiSAT with root a. RangeSearch(Node a, Query q, Radius r, Distance dmin ) 1. If d(a, q) ≤ R(a) + r Then 2. If d(a, q) ≤ r Then Report a 3. dmin ← min {d(c, q), c ∈ N (a)} ∪ {dmin } 4. For b ∈ N (a) Do 5. If d(b, q) ≤ dmin + 2r Then 6. RangeSearch(b,q,r,dmin )

any of those b nodes. During the search, all the nodes that are found to be close enough to q are reported. [9, 14]. 3.1

Dynamic Distal Spatial Approximation Forest

The Bentley-Saxe method (BS) is a technique for transforming a static index into a dynamic one, as long as the index is decomposable and based on the binary representation of integers [1]. The Distal Spatial Approximation Forest (DiSAF) [3] applies the BS method to a DiSAT to create a dynamic index. Specifically, we use the BS method to create multiple trees, which are all DiSATs, resulting in a forest of DiSATs. This index is called the Dynamic Distal Spatial Approximation Forest (DiSAF), with each subtree Ti having 2i elements. To illustrate, consider the example shown in Fig. 1(a). Figure 2 illustrates the DiSAF obtained by inserting the objects p1 , · · · , p15 one by one in that order. This results in four DiSATs, T0 , T1 , T2 , and T3 , with T0 containing only p15 , T1 containing p13 and p14 , T2 containing p9 , . . . , p12 , and T3 containing p1 , . . . p8 . The covering radii of the tree roots’ neighbors are depicted, with some having a radius of zero. It’s worth noting that the DiSAF has no parameters, so the only way to get different forests is by considering different insertion orders.

Dynamic Distal Spatial Approximation Trees

179

Fig. 2. Example of the DiSAF, inserting from p1 to p15 .

Dynamic Spatial Approximation Tree The Dynamic Spatial Approximation Tree (DSAT) [10] is an online version of the Static Approximation Tree (SAT) that enables dynamic insertions and deletions without increasing the construction cost. Although not intentionally designed as such, the DSAT has an impressive feature of enhancing the searching performance. The DSAT is faster in searching even when it has less information at construction than the static version of the index. The DSAT is designed for scenarios where the database is not known beforehand, and objects arrive at the index at random, along with queries. Since the DSAT is a dynamic data structure, it cannot make strong assumptions about the database and will not have statistics about all of the database.

4 Dynamic Distal Spatial Approximation Tree The main cost of DSAT construction is the reconstruction required after insertion. To avoid this cost, the authors propose lazy insertions, where they delay the insertion of elements until the pool of objects is large enough to justify the insertion. This results in the Dynamic Distal Spatial Approximation Tree (DDiSAT), which significantly reduces construction costs compared to DiSAF and performs better in search performance than DiSAT. Each DDiSAT node can store an element a, its covering radius rc(a), its set of neighbors N (a), and a bag B(a) of pairs of (element, distance), that are new elements into the database, and the distance is its distance from a. The DDiSAT can store twice the number of elements compared to DiSAT inside its nodes. The authors rebuild the DDiSAT only when the number of elements in the node bags equals the number of nodes in the DDiSAT.

180

E. Ch´avez et al.

During insertions into the DDiSAT, if the DDiSAT has less than or equal to i elements in the node bags, the new element x is inserted into a node bag. Otherwise, all the elements in the DDiSAT (in nodes and bags) are retrieved, and the tree is rebuilt as a DiSAT. When inserting a new element x into the DDiSAT, the search begins at the tree root. For any node b in the DDiSAT, if b is closer to x than any neighbors in N (b), the pair (x, distance(b, x)) is inserted into the bag B(b) of this node. Otherwise, the search goes down to the node of the nearest element to x in N (b). The covering radii are updated at every level while traversing the tree to insert a new element x. The authors use this heuristic to avoid rebuilding the tree as often and ensure top search performance. As the DDiSAT grows in size, the threshold for rebuilding also increases, making the reconstructions more sporadic but involving more elements. The authors provide an example of the resulting DDiSAT, which has eight nodes and seven elements within their bags. The DDiSAT is rebuilt three times when p2 , p4 , and p8 are inserted, respectively. The final DDiSAT is depicted in Fig. 3, which shows the node bags for lazy insertions, the connecting lines between nodes and their tree neighbors, and the covering radii for the neighbors of the tree root. There are no parameters in DDiSAT, and different trees can be obtained by considering different insertion orders. Algorithm 3 illustrates the insertion process of a new element x into a DDiSAT T rooted at a. That means, when the first element x arrives to the database, we need to build the initial underlying DiSAT. Therefore, the first insertion will be done invoking BuildTree(x,∅). As it is possible to intuit, #nodes is the number of nodes into the underlying DiSAT tree, and #pendings is the number of elements into the bags; that is, elements pending to be actually inserted into the DiSAT. We follow the path from the tree root to the closest element to x in the underlying DiSAT, with a greedy spatial-approximation strategy, and then, we add the new element x in its bag B. Then, we need to verify whether this insertion produces that the number of pending elements (#pendings) becomes equal to the number of nodes (#nodes). In the case of #nodes = #pendings, we need to collect all the elements in a set S and rebuild

Fig. 3. Example of the DDiSAT, inserting from p1 to p15 .

Dynamic Distal Spatial Approximation Trees

181

Algorithm 3 Insertion of a new element x in a DDiSAT T with root a. Insert(Node a, Element x) 1. c ← argminb∈N (a) d(b, x) 2. R(a) ← max{R(a), d(a, x)} /* update the covering radius of a */ 3. If d(a, x) < d(c, x) Then 4. B(a) ← B(a) ∪ {(x, d(a, x))} /* add to the bag of a */ 5. #pendings ← #pendings + 1 6. If (#nodes = #pendings) Then 7. Collect in S the all the elements into the DDiSAT T 8. #nodes ← |S|, #pendings ← 0 9. Select randomly an element a from S /* a as tree root */ 10. BuildTree(a,S − {a}) /* rebuild the tree */ 11. Else 12. Insert(c,x)

Algorithm 4 Searching of q with radius r in a DDiSAT with root a. RangeSearch(Node a, Query q, Radius r, Distance dmin ) 1. If d(a, q) ≤ R(a) + r Then 2. If d(a, q) ≤ r Then Report a 3. For any pair (x, dx ) ∈ B(a) 4. If |d(a, q) − dx | ≤ r Then 5. If (d(x, q) ≤ r Then Report x 6. dmin ← min {d(c, q), c ∈ N (a)} ∪ {dmin } 7. For b ∈ N (a) Do 8. If d(b, q) ≤ dmin + 2r Then 9. RangeSearch(b,q,r,dmin )

with these objects the underlying DiSAT. Algorithm BuildTree(a,S), invoked at line 10, is that used for the static construction (Algorithm 1) The next rebuild will occur after |S| new insertions. During searches, we take advantage of all the information from the tree. As in a search on a DiSAT (Algorithm 2), we also use the distances stored in the buckets. The Algorithm 4 illustrates the new search process. This process is invoked as RangeSearch(a,q,r,d(a, q)), where a is the tree root, r is the radius of the search, and q is the query object.

5 Experimental Results We conducted an empirical evaluation of various indexes in three different metric spaces from the SISAP Metric Library. These spaces include a dictionary of 69,069 English words where the distance is calculated using the edit distance, a set of 112,682 8-D color histograms with Euclidean distance, and a set of 40,700 20-dimensional feature vectors from NASA images with Euclidean distance. To evaluate the construction costs of the indexes, we built the index using the entire database. For dynamic indexes, we inserted objects one by one, while for static indexes,

182

E. Ch´avez et al.

all elements were known beforehand. To evaluate search performance, we used 90% of the database elements to build the index and the remaining 10% were randomly selected as queries. These query objects were not part of the index, and we averaged the search costs of all the queries over 10 index constructions with different datasets permutations. We considered range queries retrieving on average 0.01%, 0.1%, and 1% of the dataset, which corresponded to specific radii for each metric space. For the dictionary, radii from 1 to 4 were used, which retrieved on average 0.00003%, 0.00037%, 0.00326%, and 0.01757% of the dataset, respectively. The same queries were used for all experiments on the same datasets, and we did not consider k-nearest neighbor searching experiments as range-optimal algorithms already exist for them. We compared our dynamic DDiSAT to the static alternatives SAT and DiSAT, as well as to the DiSAF and DSAT indexes. The construction costs of all indexes on the three metric spaces are shown in Fig. 4. It is worth noting that DDiSAT outperformed DiSAF in terms of construction costs, while DSAT did not require any reconstruction during the index construction via insertions. The arity parameter of the DSAT, which is the maximum number of neighbors of each tree node, was tunable and set to 4 for the NASA images and color histograms and 32 for the dictionary, as suggested by the authors in [10]. The source code for the different SAT versions (SAT and DSAT) is available at www.sisap.org.

Fig. 4. Construction costs for the three metric spaces considered.

We analyze search costs in Fig. 5. As can be noticed, DDiSAT surpasses the dynamic indexes DiSAF and DSAT in all the spaces. Moreover, DDiSAT obtains the

Dynamic Distal Spatial Approximation Trees

183

best search performance concerning the other four indexes (static and dynamic ones). Therefore, we can affirm that the heuristic of construction of DiSAT allows surpassing in searches the other strategies used in SAT and DSAT, and combining it with the bags into the nodes that store new elements near them, it is possible to obtain even better results. Besides, we have obtained a dynamic index with better search performance. Also notice that DDiSAT does not have tuning parameters, which is good for practitioners.

Fig. 5. Search costs for the three metric spaces considered.

5.1 Comparison with Other Representative Indexes DDiSAT has shown outstanding performance compared to all the variants of the spatial approximation index. All of these indices use linear space, meaning that they require O(N ) distances to be stored. Specifically, in DDiSAT, each node of the underlying DiSAT only stores its covering radius, and each element in a bag only maintains its distance to the object in the DiSAT node that owns that bag. To further understand DDiSAT’s performance, we have selected several data structures from the literature whose source codes are available and whose space is also linear. Most of these data structures are static, but we also included the dynamic M-tree data structure, which is a crucial reference in the literature. We compare DDiSAT’s performance against the M-tree, List of Clusters (LC), Vantage-point Tree (VPT), and a plain pivot-based index.

184

E. Ch´avez et al.

Although the M-tree [8] is designed for secondary memory, we only consider its construction and search costs regarding the number of distance computations. The Mtree1 uses more memory than DDiSAT since it replies to its internal nodes with some elements as routing objects. Furthermore, all the database elements are in the tree’s leafnodes, and each one stores one distance. It considers a minimum arity m for the internal nodes, where each node stores 2m distances and m pointers. We have experimented with different parameter settings and chosen the parameters that result in lower search costs. The list of clustersLC [5] has a parameter m that determines the maximum number of elements in each cluster. Each cluster stores a distinguished element called its “center” (randomly selected), and its m closest elements are associated with it, considering the subset of non-clustered elements. The construction of the list of clusters proceeds by adding one new cluster to the list in each step, and the process continues recursively with the remaining elements while there are non-clustered elements. Each cluster stores its covering radius. The LC’s construction cost is quadratic (O(n2 /m)), and its space is O(n). The LC’s performance depends on the selection of the cluster size. We compare DDiSAT’s performance against the LC with two values of m. The vantage point tree VPT [12, 13] is a balanced binary tree recursively built using an arbitrary element as its root. The construction process computes all the distances from the root to every object, and then it selects the median M of those distances. Each object is associated with the left child or right child depending on whether its distance is lower or greater than M , respectively. This process continues recursively until the number of elements is smaller than a certain bucket size m. Each tree node needs to store the median distance M . Like the M-tree, the VPT uses O(n) space, and its construction time is O(n log n) in the worst case. Its good performance depends on the selection of an appropriate value of m. Lastly, we compare DDiSAT’s performance against a generic plain pivot index that uses randomly selected K pivots to calculate and store the Kn distances between the K pivots and all the elements in U. For all these indexes with only one parameter to tune, we have chosen to display two of the values with which we have experimented. For LC, one value has a construction cost similar to that of DDiSAT, while the other achieves better search performance, but at a higher construction cost. As DDiSAT only stores one distance per element, it only requires linear space. For all those indexes that only have one parameter to tune, we have chosen to display two of the values with which we have experimented. In LC one of those values achieves a construction cost similar to that of DDiSAT and the other, although it spends much more on construction, achieves better search performance. As our DDiSAT only stores one distance per element, the index needs only the space that is equivalent to store two distances per element [4]. Hence, for Pivot index we consider how is the behavior of this index when it only uses this space; that is only two pivots. Besides, we also show the behavior of this index when it uses 16 times the space of DDiSAT. For VPT index, we use two small values that appear with good search performance. Figure 6 illustrates the comparison of construction costs of DDiSAT with the most of the indexes considered. In this case we do not show the construction costs of the pivot 1

At http://www-db.deis.unibo.it/research/Mtree/.

Dynamic Distal Spatial Approximation Trees

185

index because it can be obtained as Kn. For the indexes that have only one parameter to set, we indicates between parentheses the value used of this parameter.

Fig. 6. Comparison of construction costs for the three metric spaces considered.

Figure 7 depicts the comparison of search costs of DDiSAT with the all the indexes considered. As it can be see, our proposal beats most of the other indexes in most of the metric spaces. Those options that surpasse DDiSAT generally need much more construction time or much more space. The only option that have a better search performance than DDiSAT in all metric spaces is Pivot, considering K = 32; that is, more than 16 times more memory space than DDiSAT. However, when we have the memory space limited to the same space used for DDiSAT (K = 2), Pivot becomes as one of the worst alternatives for searches.

6 Analysis of Tree Partition Density In the previous section we show that our proposal, the DDiSAT, improves simultaneosly in construction and search costs compared to DiSAT. Mind that the DiSAT tree has full knowledge of all the elements to build the index. As the DDiSAT is incrementally built, it only has knowledge of the elements inserted so far. An interesting question is about the partition induced for the DDiSAT, where some parts are denser because they also include pending close elements. We wanted to know how the relative density affects the search performance.

186

E. Ch´avez et al.

Fig. 7. Comparison of search costs for the three metric spaces considered.

To this end, using the same metric spaces, we experimentally study how the number of nodes into the DDiSAT affects the behavior of construction and search costs. Notice that the number of nodes is a proxy for the total number of objects indexed. In the experiment, as before, we build the DDiSAT with the 90% of the database elements and use the remaining 10% for searches. We randomly select the database elements used for building and for searching. We execute ten (10) times the experiments over different permutations of the database elements, and the results shown are the average of all obtained results. To observe how the number of nodes and pending elements affects, we do not consider the restriction established to the DDiSAT previously: the DDiSAT will be rebuilt when a new insertion in a bag makes the number of elements in the bags (pending insertion in the DiSAT) equal to the number of nodes in the DDiSAT. Therefore, we build a DiSAT with a 10% (20%, 30%, . . . , 80%) of the database elements, and the remaining 80% (70%, 60%, . . . , 10%) is added into the bags of their closest node until we have the 90% of the database elements into the index. Then we query with the not yet used database elements (the remaining 10%). This way, the elements that are nodes into the DiSAT partition the space, and the remaining objects maintained into the node bags make the corresponding part denser. Figure 8 depicts the analysis of the construction costs per element on the three metric space considered. As it can be observed, the costs increases slowly as the number of nodes into the DiSAT grows.

Dynamic Distal Spatial Approximation Trees

187

Fig. 8. Analysis on how the number of nodes affects the construction costs.

Figure 9 shows the analysis of the search costs on the tree metric space considered. We plot the behavior of each radii separately. Surprisingly, as it can be noticed, it is not necessary to do a more detailed partitioning of the space based on a large number of objects. Hence, few database objects are enough to define a good partition for the DiSAT. Moreover, relative to this space partition we locate the elements pending insertion are located to their closest representative object. Thereby, we can lower the construction cost of a static DiSAT, while maintaining a remarkable good search performance. Therefore, lazzy insertion has an added advantage for either an static index or a dynamic one.

7 Conclusions We have introduced a new dynamic version of DiSAT that overcomes its previous limitations by incorporating insertion capability while improving search quality. The fact remains that there are only a few data structures that efficiently search metric spaces dynamically. Our proposed heuristic can further optimize the DiSAT by taking advantage of the compact subtrees produced by distal nodes, which create partitions over the metric space. This method assigns new elements to their nearest object in the tree, as they await insertion into the DiSAT node. Previously, the DiSAT data structure was impractical due to its high construction cost and inability to accommodate insertions and deletions. However, we have addressed some of these weaknesses by obtaining reasonable construction costs, which can still be further improved. One possible approach is by providing a bulk-loading algorithm that initially creates the DDiSAT if we know a subset of elements beforehand, thus avoiding unnecessary rebuilding when we insert new elements. Additionally, using a combination of lazy insertion and tree rebuilding can further reduce insertion costs. Our future work involves designing a fully dynamic DDiSAT data structure that can support deletions and an efficient bulk-loading algorithm to further decrease insertion costs. We also aim to develop a smart solution to k-NN search that uses all calculated distances to shrink the radius enclosing k elements as soon as possible. Moreover, we are currently pursuing in the direction of making the DDiSAT work efficiently in secondary memory. In that case we need to consider as relevant for index performance

188

E. Ch´avez et al.

Fig. 9. Analysis on how the number of nodes affects the search costs.

both the number of distance computations and disk accesses. A simple solution could combine the DDiSAT with some ideas from the DiSAF; that is, we can consider a forest of DDiSAT, where each DDiSAT fit in a certain fixed number of disk pages.

References 1. Bentley, J.L., Saxe, J.B.: Decomposable searching problems I. Static-to-dynamic transformation. J. Algorithms 1(4), 301–358 (1980) 2. Ch´avez, E., Di Genaro, M.E., Reyes, N.: An efficient dynamic version of the distal spatial approximation trees. In: Actas del XXVIII Congreso Argentino de Ciencias de la Computaci´on (CACIC 2022), pp. 468–477, October 2022 3. Ch´avez, E., Di Genaro, M.E., Reyes, N., Roggero, P.: Decomposability of disat for index dynamization. J. Comput. Sci. Technol. 110–116 (2017) 4. Ch´avez, E., Lude˜na, V., Reyes, N., Roggero, P.: Faster proximity searching with the distal sat. Inf. Syst. (2016) 5. Ch´avez, E., Navarro, G.: A compact space decomposition for effective metric indexing. Pattern Recogn. Lett. 26(9), 1363–1376 (2005) 6. Ch´avez, E., Navarro, G., Baeza-Yates, R., Marroqu´ın, J.L.: Searching in metric spaces. ACM Comput. Surv. 33(3), 273–321 (2001) 7. Chen, L., et al.: Indexing metric spaces for exact similarity search. ACM Comput. Surv. 55(6), 1–39 (2022) 8. Ciaccia, P., Patella, M., Zezula, P.: M-tree: an efficient access method for similarity search in metric spaces. In: Proceedings of the 23rd Conference on Very Large Databases (VLDB 1997), pp. 426–435 (1997)

Dynamic Distal Spatial Approximation Trees

189

9. Navarro, G.: Searching in metric spaces by spatial approximation. Very Large Databases J. (VLDBJ) 11(1), 28–46 (2002) 10. Navarro, G., Reyes, N.: Dynamic spatial approximation trees. J. Exp. Algorithmics 12, 1.5:1– 1.5:68 (2008) 11. Samet, H.: Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics and Geometric Modeling). Morgan Kaufmann Publishers Inc., San Francisco (2005) 12. Uhlmann, J.K.: Satisfying general proximity/similarity queries with metric trees. Inf. Process. Lett. 40, 175–179 (1991) 13. Yianilos, P.N.: Data structures and algorithms for nearest neighbor search in general metric spaces. In: Proceedings of the 4th ACM-SIAM Symposium on Discrete Algorithms (SODA 1993), pp. 311–321 (1993) 14. Zezula, P., Amato, G., Dohnal, V., Batko, M.: Similarity Search: The Metric Space Approach. Advances in Database Systems, vol. 32. Springer, New York (2006). https://doi.org/10.1007/ 0-387-29151-2

Hardware Architectures, Networks, and Operating Systems

Analysis of QoS and QoE Metrics of IPTV Multicast Video Traffic on a LAN TestBed Santiago Pérez(B) , Higinio Facchini , Alejandro Dantiacq, Pablo Varela , Fabián Hidalgo, Bruno Roberti , María Stefanoni , and Matilde Césari CeReCoN – Department of Electronics – Regional Mendoza, National Technological University, Rodríguez 273, M5502AJE Mendoza, Argentina [email protected]

Abstract. Analog television systems have been around for over 70 years now. Over this period, viewers have witnessed several improvements, including the transition from black and white to color television. In the last few years, the industry has undergone a profound transition, migrating from conventional television to a new digital era. Indeed, digital television has become the most significant advance in television technology, providing users with multiple options, increased flexibility and an enhanced interactive visual experience. Internet Protocol television (IPTV) constitutes a means to carry a stream of video content over a network using an Internet protocol (IP). The ultimate goal of IPTV is offering a completely personalized experience, ensuring Quality of Service (QoS) and QoE (Quality of Experience) within the organization, including LAN networks of a television channel or traditional LAN networks. This research study analyzes the behavior of IPTV traffic in an experimental LAN with controlled traffic, and is the continuation of a previous experimental study discussed in a paper presented at CACIC 2022. Different codecs are used for comparison purposes, using detailed quantitative results of QoS metrics as well as a basis to establish indicative QoE values. The findings reported in this paper offer guidance on suitable software and network topology configurations for managing similar networks, in addition to providing detailed values for simulation analysts. Keywords: IPTV · Multicast traffic · Codecs · QoS · QoE

1 Introduction In general, IPTV is a term applicable to the delivery of traditional television content, such as movies and on-demand video, over a private network. From a service provider perspective, IPTV covers the acquisition, processing and safe delivery of video content over an IP-based network infrastructure. From a user perspective, IPTV looks and operates like a standard pay-per-view TV subscription service. For these reasons, most TV operators have upgraded their existing networks and implemented advanced digital platforms, in an attempt to migrate their traditional analog service subscribers to more sophisticated digital services. © The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 193–208, 2023. https://doi.org/10.1007/978-3-031-34147-2_13

194

S. Pérez et al.

The official definition of IPTV, as approved by the International Telecommunication Union IPTV Focus Group (ITU-T FG IPTV) is as follows: IPTV is defined as “multimedia services such as television/video/audio/text/graphics/data delivered over IP based networks managed to provide the required level of quality of service and experience, security, interactivity and reliability.” When discussing IPTV audiovisual format transmission, receiving devices include tablets, notebooks, smartphones, PCs, TV sets, etc. At this point, it is worth differentiating this service from other online options, such as free Internet channels or YouTube-like channels, where videos can be downloaded and played with no quality guarantee. This paper describes an experimental study on multicast IPTV video traffic on an actual laboratory LAN network used as a testbed, emulating an IPTV LAN network in a TV channel or LAN campus. An experimental, controlled traffic, wired-client network topology was used, utilizing FFmpeg Server software as video server and WireShark as traffic analyzer. IPTV video traffic was encoded in H.264, H.265, VP8 and Theora, so as to compare and understand the impact of different codecs on network traffic QoS and QoE. The experiments were run using a video trailer of the movie Star Trek. This paper builds upon previous experimental studies performed on wired Ethernet and Wi-Fi networks for general video (non-IPTV) traffic using H261, H263 and H264 codecs in IPv4. The main contributions of this study include: i)Quantitative results emerging from experimental studies on an actual laboratory LAN network, so as to assess QoS and QoE behavior for IPTV traffic and different codecs; ii) The conclusions emerging from the experimental setup, which can serve as reference to simulation analysts when determining IPTV traffic simulator settings; and iii) The definition of a new topology, methodology and a variety of experimental sub-scenarios —depending on the codec— applicable when assessing such elements or other complementary aspects of IPTV video streaming and the relevant QoS and QoE. The rest of this paper is structured as follows: Sect. 2 (Protocols and Codecs) describes the main features of these components as per this experimental study, Sect. 3 (Scenarios and Experimental Resources) offers a description of the topology and hardware and software devices, Sect. 4 (Results) provides the quantitative data obtained from the QoS and QoE metrics. Finally, Sect. 5 discusses the main conclusions emerging from this work.

2 Protocols and Codecs Research groups continue working towards understanding traffic behavior in data networks and the behavior of traffic generated or received by network nodes (servers, end workstations and active devices), in an attempt to improve their performance and throughput. Insufficient knowledge about this topic may lead to oversimplified conclusions or interpretations, planning errors and poor simulations, ultimately resulting in lack of stability in the infrastructure. This study on IPTV traffic is part of the Data Network Traffic Engineering Theory. Network Traffic Theory applies probability theory to the solution of issues related to planning, service assessment, operation and maintenance of communication systems.

Analysis of QoS and QoE Metrics

195

A number of earlier research papers and publications have been taken into account for this study. Unfortunately, experimental studies on IPTV have often failed to exhibit topologies that are standardized or harmonized for the scenarios under study, resulting in discrepancies in the methodology, video(s), or video codecs being used. This situation hinders the comparison and contrast of measurements and conclusions of contemporary studies and/or studies conducted over time by the same or different authors. The rest of this section briefly describes the main features of the tools, protocols and codecs used. 2.1 Video Streaming A broad range of video streaming options are available in networks, each of which may display different sets of behavior. Video traffic may be point-to-point, multicast or broadcast. Additionally, videos may be precoded (stored) or they may be coded in real time (for example, while an interactive videophone communication or video conference ensues). Video channels may be static or dynamic, and require a packet-based or a circuit-based switching system. Additionally, channels may withstand a constant or a variable bit rate speed. They may have also reserved a number of resources in advance or they may simply be offering best-effort capacity. Clearly, a few basic issues are at play here, since only best-effort delivery is generally offered, which means there are no guarantees regarding bandwidth, jitter or potential packet losses. Therefore, a key goal in IPTV video streaming involves designing a reliable system that delivers high quality video and takes into account Traffic Engineering, QoS and QoE. 2.2 IP Multicast IP multicast is defined as “a bandwidth-conserving technology that reduces traffic by delivering a single stream of information simultaneously” to dozens, hundreds or thousands of businesses and homes. Some of the advantages of multicast content streaming solutions include: • Scalability: Bandwidth requirements are no longer proportional to the number of receivers. • Performance: Having each source process a single flow of data will be always more efficient than having one receiver process each flow. • Lower capital expenditure: Due to the less tight specs of the network elements necessary to provide the service. Routers rely on multicast protocols that form distribution trees to deliver multicast content, ensuring highly efficient delivery of data to multiple receivers. They are responsible for replicating and distributing the multicast content to all the receivers within a multicast group. IP uses PIM-SM, PIM-SSM or other protocols. For this study in particular, PIM-SM (Protocol Independent Multicast – Sparse Mode) was used.

196

S. Pérez et al.

2.3 Video Codec Figure 1 shows a simplified visual representation of the TCP/IP stack, describing the suite of protocols that enables IPTV traffic transfer. The communication process begins at the encoding layer, where the uncompressed analog or digital signal becomes compressed, and an elementary stream is output from the encoder. An elementary stream can be defined as a continuous digital signal in real time. Video encoding refers to the process of converting a video with no format into a digital format that is compatible with multiple devices. In order to reduce the size of a video to a more manageable one, content distributors use video compression technology known as codec. This is done by means of sophisticated lossy compression methods that do away with unnecessary data. A codec operates on the video twice: at the source, to compress it, and prior to playing the video, to decompress it. In this case, for the IPTV experimentation, a balanced mix of established and newer standards was selected. The video codecs that were used in this study are listed and described below: • H.264/MPEG-4 AVC: A video compression standard promoted jointly by the ITU and the ISO, offering significant advances in terms of compression efficiency, which result in half or lower bit rate when compared to MPEG-2 and MPEG-4 Simple Profile. • H.265/ MPEG-H Part 2/ High Efficiency Video Coding (HEVC): A video compression format following H.264/MPEG-4 AVC, developed jointly by the ISO/IEC Moving Picture Experts Group (MPEG) and ITU-T Video Coding Experts Group (VCEG), corresponding to ISO/IEC CD 23008-2 High Efficiency Video Coding.

Fig. 1. IPTV protocol stack.

Analysis of QoS and QoE Metrics

197

This standard may be used to deliver higher quality, low bit-rate video while requiring the same bit rate. It is compatible with ultra-high-definition television and 8192 × 4320 display resolution. • VP8: A video codec by On2 Technologies, released on September 13, 2008. On May 19, 2010, Google, having acquired On2 Technologies back in 2009, released VP8 as an open-source codec (under a BSD-like license). • Theora: A free video compression format developed by the Xiph.Org Foundation as part of the Ogg project. It derives from VP3 codec. In 2010, Google began funding part of the Ogg Theora Vorbis project. Theora stands for a general-purpose video codec requiring low CPU usage.

3 Scenarios and Experimental Resources Within the scientific/technology community, different lines of research are devoted to studying IPTV and non-IPTV video traffic based on experimental studies on actual networks showing their behavior in each case [1–14]. Among them, our own contributions from previous studies on video traffic in various networks [9–14] and IPTV networks [12], which is now enhanced with new results and a more detailed discussion. These studies involve capturing traffic in current and/or synthetic video traffic scenarios. Unfortunately, research studies covering IPTV LAN for TV channels, or traditional LAN networks in particular, often fail to exhibit harmonized, standardized experimental scenarios in terms of the number and type of codecs used, the videos analyzed, etc. This situation, combined with other aspects, makes it difficult to compare across contemporary studies and/or studies conducted in the past. This has been the main motivation to propose a new scenario and, consequently, a new experimental methodology for capturing IPTV video traffic. 3.1 Network Topology The selected topology entails having one computer functioning as video streaming server, and desktop computers (PCs) as clients, all connected at the endpoints of a mixed network made up of routers and switches with different types of links interconnecting them. Links are of the FastEthernet type, with a data transmission rate of 100 Mbps. For data transmission between routers R1 to R6, the OSPFv2 routing protocol was configured. Additionally, PIM Sparse Mode (PIM-SM) was set up for these routers. Existing redundant links were used to arrive at an approximation of an actual network, but the routing protocol was configured so that the traffic between the server and each client would always follow a single path. The network topology has been represented in Fig. 2: i) As server: One desktop computer feauturing Intel Core I5 processor, 8 GB RAM and Linux Ubuntu; ii) As clients: Desktop computers featuring AMD Athlon(tm) II X2 250 3 GHz processor, 4 GB RAM and 64-bit Windows 10; iii) Routers R1, R2, R3 and R4 were Cisco 2811 models, while R5 and R6 were resolved with Cisco WS-CS3750 multilayer switches; and iv) Finally, the routers were connected to the PCs by means of Cisco Layer 2 Catalyst Model WS-2950–24 switches.

198

S. Pérez et al.

Fig. 2. Network topology.

FFmpeg software was used as a streaming server [15]. FFmpeg is a cross-platform tool to record, convert and edit audio and video. The framework consists of a component library, the elements of which interact with the application using ffmpeg commands in order to complete streaming processes properly. 3.2 Video and Video Sniffer At this stage, a video was used, which had been encoded using alternatively the codecs listed above. The video material was a trailer of the movie Star Trek [16], 2 min and 11 s long (Fig. 3). Table 1 compares the features of each codec for this video.

Fig. 3. Screenshot of the Star Trek movie trailer 1.

Analysis of QoS and QoE Metrics

199

Wireshark [17] was used to measure and capture traffic. This software includes several features intended to analyze each data packet while also evaluating as a whole the set of packets of the video transmission. For the purposes of this experimental study, several network traffic parameters were evaluated, such as delay, the number of packets transmitted, etc. Based on this experimental scenario, a series of tests were performed, taking into consideration the following: a) The video file encoded in each of the 4 formats listed above was configured alternatively on the streaming server. b) Prior to being measured, all equipment items in the topology were synchronized by means of an NTP local server. c) From the server, the video file was then sent in its specific codec to the network, using a multicast configuration. d) Afterwards, the video format was rotated to the other three video codecs, as described in step c) above. During each test, traffic captures were performed on the server and on each client node using the Wireshark sniffer software. The packets were filtered by RTCP or UDP packet type (Fig. 4). For video transfer purposes, 59,644, 54,202, 46,502 and 61,986 frames were needed for H.264, H.265, Theora and VP8 codecs, respectively. Captures were exported from Wireshark.pcap files to.csv files (Fig. 5). A.csv file is basically a text file that stores captures as frame vectors, which are then analyzed in Excel or using a special-purpose program (in this case, using the Python programming language). Table 1. Video Properties – Star Trek movie trailer. Video 1

H.264

H.265

Theora

VP8

Format

MPEG-4

MPEG-4

Ogg

WebM v2

File size

79.9 MiB

72.3 MiB

83.3 MiB

78.6 MiB

Length

2 min 11 s

2 min 11 s

2 min 11 s

2 min 11 s

Bit rate mode

Variable

Variable

Variable

Variable

Bit rate

5,109 kb/s

4,620 kb/s

5,329 kb/s

5,028 kb/s

Video Format

AVC

HEVC

Theora

VP8

Bit rate

5,011 kb/s

4,514 kb/s

5,010 kb/s

4,721 kb/s

Width [in pixels]

1,280 pixels

1,280 pixels

1,280 pixels

1,280 pixels

Height [in pixels]

528 pixels

528 pixels

528 pixels

528 pixels

Aspect ratio

2.4:1

2.4:1

2.4:1

2.4:1

Frame rate mode

constant

constant

constant

constant (continued)

200

S. Pérez et al. Table 1. (continued)

Video 1

H.264

H.265

Theora

VP8

Frame rate [in fps]

23.976 fps

23.976 fps

23.976 fps

23.976 fps

Bits/(pixel*frame)

0.309

0.279

0.309

0.291

Audio Format

AAC LC

AAC LC

Vorbis

Vorbis

Bit rate mode

Variable

constant

Variable

Variable

Bit rate

98.7 kb/s

99.7 kb/s

98.7 kb/s

98.7 kb/s

Maximum bit rate

167 kb/s

167 kb/s

167 kb/s

167 kb/s

Channel

2 channels

2 channels

2 channels

2 channels

Sampling rate

44.1 kHz

44.1 kHz

44.1 kHz

44.1 kHz

Track size

1.54 MiB (2%)

1.56 MiB (2%)

1.54 MiB (2%)

1.54 MiB (2%)

Fig. 4. Packet filtering on Wireshark.

4 Test Results 4.1 QoS Analysis The QoS of specific network traffic in a given network topology and architecture can be considered based on the behavior of certain characteristic network parameters. Standardized QoS parameters are delay, jitter and packet loss. Reference values for these network metrics are 100 ms, 30 ms and 0.1%, respectively.

Analysis of QoS and QoE Metrics

201

Fig. 5. Wireshark capture file being converted to a CSV file.

When suggesting instances of comparison in the sub-scenarios under study, the following QoS critical or verification points were established: • • • • • •

Average delay, Maximum delay, Minimum delay, Average jitter, Maximum jitter, Minimum jitter.

The delay metrics for each codec have been depicted for comparison purposes in Fig. 6. As made evident by the chart, the values meet QoS requirements by a wide margin. Additionally, within the 1 to 2 ms range, the codecs behave clearly different from one another, except for H.264 and H.265. These two codecs have an average delay of around 2 ms, while Theora’s is close to 1.5 ms. Finally, VP8 delays are around 1 ms. Similarly, Fig. 7 shows the behavior of the different codecs under study with respect to jitter metrics. The values meet QoS requirements by a wide margin. Within the -0.010 to + 0.020 ms range, the codecs reveal clearly different behaviors for this measurement. Each codec creates a response in the Cartesian coordinate system which can be represented as a triangle. However, the codecs vary in the base width and height of each triangle, thus implying different responses in the bandwidth of possible jitter values and the level of repetition at which most of these values are concentrated.

202

S. Pérez et al.

In the laboratory LAN network, which allowed for controlled traffic analysis, no frame losses were detected. The traffic flow during the testbed only involved IPTV. There was no interference from other traffic such as VoIP, non-IPTV video, background or best effort. The only traffic present, with negligible weight, involved the basic flows needed to keep the network operating, with the specific functionalities mentioned earlier in this study (routing, PIM, etc.).

Fig. 6. Overlapping codec behavior for delay.

4.2 QoE Analysis On their own, QoS processes are not entirely adequate to deliver guaranteed performance, since they fail to consider user perception about network behavior. This is how Quality of Experience (QoE) emerged as a discipline. From a theoretical standpoint, QoE is the user’s degree of satisfaction or dissatisfaction with an application or service. It results from the ability to comply with user expectations with regards to the use/enjoyment of an application or service, in light of the user’s personality and current mood. In practical terms, key findings from QoE-related projects show that, for many services, there are multiple QoS parameters contributing to users’ overall perception of quality. This situation has resulted in the emergence of a layered approach to QoE/QoS, in which network sizing strategies are governed by user requirements. This layered approach to QoE/QoS does not ignore the QoS aspect of the network: on the contrary, it complements the perspectives at the user and service levels, as shown in Fig. 8. It should be noticed that because the domains of QoE and QoS overlap somewhat, there is a considerable volume of information exchange/feedback between the frameworks.

Analysis of QoS and QoE Metrics

203

Fig. 7. Overlapping codec behavior for jitter.

This discussion suggests that the effect of QoE might be attributable to the application layer or to a combination of the network and application layers only. Even though tradeoffs between network quality and network capacity could start by QoS (at the level of the application layer, given network capacity considerations), it is an understanding of user requirements at the service level (i.e., in terms of QoE measurements) that will help better select the QoS parameters at the application level which will then be assigned to the QoS parameters at the network level. Some working scenarios aim at controlling QoE by relying on QoS parameters as actuators. In order to evaluate or measure QoE as perceived by the user, three methods have been proposed: (i) subjective methods, (ii) objective methods and (iii) indirect methods. Subjective methods involve having people evaluate video quality in a controlled environment, by means of polling mechanisms. Objective mechanisms are algorithms which rely on a full, partial or unused reference signal to measure video quality. Finally, indirect methods resort to mathematical modeling to evaluate the experience associated to the video. Such mathematical model is generated taking into account the variation in QoS measurements.

204

S. Pérez et al.

Bearing in mind the above, the network QoE was then evaluated using an indirect method, which served as an initial approximation. (Based on these data, future research work will resume this study and enhance its findings by using subjective methods to arrive at QoE results.) The mathematical model proposed in [8] was applied, using the following expression: QoE = 1/(Delay + K ∗ Jitter) ∗ e∧ (Lost of packets)

(1)

In this expression, K helps balance the impact of jitter with respect to delay so as to calculate user QoE. None of the parameters used in this expression can be negative. K was assigned a value of 2 during the evaluation.

Fig. 8. Relationship between QoS and QoE domains for a QoE/QoS approach.

Figure 9 shows a comparison of QoE for each of the codecs under study, based on delay and using average and maximum jitter values as parameters, in each case. As made evident by the figure, within the 1 to 2 ms range, the codecs behave clearly different from one another, except for H.264 and H.265. The response of these two codecs is worse in terms of QoE. VP8 reveals better behavior, while the response by Theora can be described as intermediate.

Analysis of QoS and QoE Metrics

205

Fig. 9. Comparison of QoE based on delay, for average and maximum jitter values applicable to all 4 codecs.

Conversely, Fig. 10 shows QoE for each of the codecs analyzed, based on jitter and using average and maximum delay values as parameters, in each case. Within the -0.10 to +0.15 ms range, the codecs display different behaviors, except for H.264 and H.265. The response of these two codecs is worse in terms of QoE. Once again, VP8 reveals better behavior, while the response by Theora can be described as intermediate in all cases.

206

S. Pérez et al.

Fig. 10. Comparison of QoE based on jitter, for average and maximum delay values applicable to all 4 codecs.

5 Conclusions The scopes of the QoS and QoE of IPTV traffic were analyzed thoroughly on an experimental network. To that end, an actual network topology of controlled traffic was used, which included a server and IPTV video clients, a Star Trek movie trailer, and 4 subscenarios or specific cases for each of the following 4 codecs: H.264, H.265, Theora and VP8. In all cases, a sniffer software was used to capture IPTV traffic. The experiment revealed the following: • In the experimental network intended for IPTV traffic, delay metrics meet QoS requirements by a wide margin, while delay shows clearly differentiated behavior among the codecs, except for that of H.264 and H.265. These two codecs have an average delay of around 2 ms, while Theora’s is close to 1.5 ms. Finally, VP8 delays are around 1 ms. • Jitter metrics also meet QoS requirements with ease, behaving differently depending on the codec being used. When values are represented, in repetition, based on jitter data, each codec creates a specific response, the graphic representation of which forms a triangle. Codec response varies in the base width and height of these triangles. Codec H.264 (Theora) shows the best (worst) overall response.

Analysis of QoS and QoE Metrics

207

• When representing the adopted QoE expression, using delay (jitter) as independent variable, and jitter (delay) as parameter, codecs H.264 and H.265 have the worst behavior. VP8, however, has the best behavior, while the response by Theora can be described as intermediate. • Neither the network topology nor the equipment type exercise significant impact, since their behavior is virtually identical for clients located at different network nodes. The experience harnessed by the studies conducted on QoS and QoE of IPTV traffic on a LAN network using different codecs has opened the door to a series of alternative mechanisms to further explore this line of research, in order to continue making progress in refining QoE results, including a few considerations about user subjectivity. QoE for multimedia content such as IPTV has also been defined in the ETSI (European Telecommunications Standards Institute) Standard TR 102 479.2 by the Telecommunications and Internet converged Services and Protocols for Advanced Networking (TISPAN). The MOS (Mean Opinion Score) refers to a measure that has been used in telephone networks for decades to obtain network quality information from a user perspective. Initially, and according to Recommendation T P.800 by the ITU, MOS was a subjective measurement, as audience members would sit in a “quiet” room and rate the quality of a phone call based on their own perception. It should be noted that MOS provides a numerical indication of the quality perceived by the user, which is issued after the multimedia content has been compressed and/or transmitted. In the future, the goal is to include an evaluation of user expectations in terms of QoE, using the same methodology and experimental scenario as applied in this paper. Of course, the subjective component may vary among users. These conclusions may serve as reference material for following research analyzing similar contexts. Furthermore, IPTV traffic designers, analysts, planners and simulators may rely on the results from this case study to improve the implementation of their own tests and projects. Naturally, it is not possible to ensure the same type of behavior when using other video types or codec types different from those used in this experiment, or when traffic is carried over a network different from IEEE 802.3. Nevertheless, simulation analysts may use the metrics obtained experimentally in this paper as a guide to the network demands exercised by video conferences, movies, and so on, as well as their characteristics and features. Designers, planners and network administrators, on their part, with a keener interest in bandwidth data, may use the Star Trek movie trailer as reference data.

References 1. Driscoll, G.: Next Generation IPTV Services and Technologies, 1st edn. Publishing House: Wiley-Interscience, Canada (2018) 2. Lloret, J., Canovas, A., Rodrigues, J.J.P.C., Lin, K.: A network algorithm for 3D/2D IPTV distribution using WIMAX and WLAN technologies. Multimed. Tools Appl. 67, 7–30 (2013) 3. Valencia, J., Muñoz, W., Golondrino, G.: Análisis de QoS para IPTV en un entorno de redes definidas por software. Revista Ingenierías Univer, Medellín, Colombia (2019) 4. Cuellar, J., Arciniegas, J., Ortiz, J.: Modelo para la medición de QoE en IPTV. Publishing House: Universidad Ecesi, Colombia (2018)

208

S. Pérez et al.

5. Herranz, J., Mauri, L.: Estudio de la variación de QoE en Televisión IP cuando varían los parámetros de QoS, Master’s Thesis, Universidad Politecnica de Valencia, Gandia, Spain (2014) 6. Cuellar, J., Acosta, S., Arciniegas, J.: QoE/QoS Mapping Models to measure Quality of Experience to IPTV Service, Conference Paper, Publication: ResearchGate, Oct 2018 7. Baltoglou, G., Karapistoli, E., Chatzimisios, P.: IPTV QoS and QoE Measurements in Wired and Networks, Publication: Globecom. IEEE, Apr 2013 8. Solbes, A., Mauri, D., Gironés, D.: Diseño y Desarrollo de un Sistema de Gestión Inteligente integrado de servicios de IPTV estándar, estereoscópico y HD basado en QoE, Thesis work, Universidad Politecnica de Valencia, Gandia, Spain, Sep 2013 9. Pérez, S., et al.: Estudio experimental de tráfico de video en redes IPv6 multicast IEEE 802.11ac, In: Congreso Argentino de Ciencias de la Computación, CACIC 2019, Minutes Book, pp. 847–856. Rio Cuarto, Córdoba, Argentina (2019). ISBN: 978-987-688-377-1 10. Facchini, H., Perez, S., Hidalgo, F., Varela, P.: Análisis, simulación y estudio experimental del comportamiento de métricas de QoS y QoE de streamings de video multicast IPTV, WICC 2020, Santa Cruz, Argentina, May 2020 11. Perez, S., Salomón, G., Facchini, H.: Comparación del comportamiento de los códecs de video en el entorno WI-FI IEEE 802.11ac, Argencon 2020, Chaco, Argentina, Dec 2020 12. Pérez, S., et al.: Estudio Experimental del Comportamiento de Métricas de QoS y QoE de Streamings de Video Multicast IPTV, In: Congreso Argentino de Ciencias de la Computación, CACIC 2022, Editorial de la Universidad Nacional de La Rioja, pp. 479–488. La Rioja, Argentina (2022). ISBN: 978-987-1364-31-2 13. Pérez, S., Campos, J., Facchini, H., Dantiacq, A.: Experimental study of unicast and multicast video traffic using WAN test bed. https://ieeexplore.ieee.org/document/7585260. Last accessed 18 Jan 2020 14. Pérez, S., Marrone, L., Facchini, H., Hidalgo, F.: Experimental study of multicast and unicast video traffic in WAN links. IEEE Latin Am. Trans. 15(10), 1847–1855 (2017). ISSN: 15480992 15. FFmpeg: https://www.ffmpeg.org/. Last accessed 18 Jan 2023 16. Star Trek Video: https://www.youtube.com/watch?v=g5lWao2gVpc. Last accessed 18 Jan 2023 17. Wireshark Foundation: https://www.wireshark.org/. Last accessed 18 Jan 2023

Innovation in Software Systems

A Query-By-Example Approach to Compose SPARQL Queries in the GF Framework for Ontology-Based Data Access Sergio Alejandro Gómez1,2(B)

and Pablo Rubén Fillottrani1,2

1 Laboratorio de I+D en Ingeniería de Software y Sistemas de Información (LISSI), Departamento de Ciencias e Ingeniería de la Computación, Universidad Nacional del Sur, San Andrés 800, Bahía Blanca, Argentina {sag,prf}@cs.uns.edu.ar 2 Comisión de Investigaciones Científicas de la Provincia de Buenos Aires (CIC-PBA), Calle 526 entre 10 y 11, La Plata, Argentina https://lissi.cs.uns.edu.ar/

Abstract. The gap between legacy data sources and semantic web technologies can be bridged with the Ontology-Based Data Access (OBDA) methodology by providing protocols and tools for translating old data into ontologies. Querying modern ontologies in OWL/RDF files and understood as networks of objects having describing properties and interlinked by relations requires writing SPARQL queries, where it is essential to have a technical proficiency not usually in the hands of lay users. For studying this problem, we developed a prototype tool called GF to capable of executing arbitrary SPARQL queries posed against OWL/RDF ontologies obtained by OBDA from H2 relational databases as well as Excel and CSV spreadsheets. The tool allows to visually specify a subset of SPARQL selection and construction queries using a Query-ByExample approach. Our research shows that, given an OWL/RDF ontology obtained from any suitable data source, our implementation can express an important proper subset of queries and translate them into executable SPARQL queries. Keywords: Ontologies · Ontology-Based Data Access Knowledge Representation

1

· SPARQL ·

Introduction

The Semantic Web (SW) is an interpretation of the web whose data resources have precise meaning defined in terms of conceptualizations known as ontologies allowing software agents to reason about such data thus permitting to elicit implicit knowledge hidden in the data [3]. Ontology-Based Data Access (OBDA) is a discipline concerned with bridging the gap between legacy data c The Author(s), under exclusive license to Springer Nature Switzerland AG 2023  P. Pesado (Ed.): CACIC 2022, CCIS 1778, pp. 211–226, 2023. https://doi.org/10.1007/978-3-031-34147-2_14

212

S. A. Gómez and P. R. Fillottrani

sources and SW technologies by providing protocols and tools for expressing old data into ontologies [4,11]. Querying ontologies provides many additional benefits to those offered by querying relational data such as allowing the usage of open-world semantics in contrast to closed-world semantics. Automated reasoning with ontologies allows to make explicit implicit conclusions hidden in the non-trivial subclass and composition relations that describe the underlying application domain modeled by the queried ontologies. One of the advantages of OBDA is that old, legacy data can be then combined with new more modern ontological data. Legacy data include tabular data as relational database, Excel spreadsheets and CSV text files. Modern ontological data in contrast is represented as networks of objects interlinked by relations and properties and stored as OWL/RDF text files distributed in the SW. Querying modern ontologies requires writing SPARQL queries [9], an activity that have as requisite a user with technical proficiency that quite normally is not possessed by lay users. In this work, we extend a prototype for OBDA called GF [7] that we have been developing in the last years to include the functionality of executing arbitrary SPARQL queries posed against OWL/RDF ontologies obtained by OBDA from H2 relational databases as well as Excel and CSV spreadsheets. Also to help naive users with less technical programming skills to perform queries on such ontologies, we introduce a wizard for expressing a subset of SPARQL queries visually based on a Query-By-Example (QBE) approach [12]. Our solution provides a concrete way of writing SPARQL queries over legacy data without requiring the user to know explicitly SPARQL syntax. For reproducibility of the results reported here, an executable file along with the files of the examples presented in this paper and its results can be checked online (see http://cs.uns.edu.ar/~sag/ gf-v4.3.2). This article consolidates and extends the results presented in [6]. We extend the discussion about SPARQL selection queries including additional operators, its relation with knowledge graphs and, additionally, we introduce the feature of how to build construction queries within the system. In [6], we presented how to visually codify a very specific subset of queries and categorize its cases as selection queries as queries over a single class, queries over a simple hierarchy of classes, totalization queries, and queries over associations Here we discuss more in detail optional queries and besides we present how to codify selection queries using the IN and NOT IN operators. Additionally, we explain the feature of building construction queries, where, besides specifying a graph pattern for the conditions the input data have to comply to, the user has to define the structure of the triples to be constructed. We explain how this is done in our system. The rest of the work is structured as follows. In Sect. 2, we review the subset of SPARQL selection queries that our wizard can generate visually. In Sect. 3, we present the wizard to build the selection queries discussed previously. In Sect. 4, we extend the wizard to be able to build SPARQL construction queries in a visual manner. In Sect. 5, we review related work. Finally, in Sect. 6, we conclude and foresee future work.

2

Selection Queries in SPARQL

SPARQL [9] is the standard query language and protocol for Linked Open Data and RDF databases that can efficiently extract information hidden in non-uniform data

A QBE Approach to Compose SPARQL Queries in GF for OBDA

213

and stored in various formats and sources, such as the web or RDF triple-stores. The distributed nature of SW data, unlike relational databases, helps users to write queries based on what they want to know instead of how the data is organized. In contrast to the SQL query language for relational databases, SPARQL queries are not constrained to working within one database – federated queries can access multiple data stores (or endpoints) because SPARQL is also an HTTP-based transport protocol, where any endpoint can be accessed via a standardized transport layer. RDF results can be returned in several data-interchange formats and RDF entities, classes, and properties are identified by IRIs such as , which are difficult to remember even knowing SPARQL and the underlying structure of the data source. As mentioned in the introduction, we propose a wizard for visually composing SPARQL queries posed against a data source expressed as an OWL/RDF ontology. We now present the subset of queries that we solve with our implementation. We present a running example with which we present some prototypical queries and in Sect. 3 we show how these queries can be solved by using the wizard that we defined. We present a relational database schema for which the GF system produces an ontology automatically. Then we show some SPARQL queries posed against the ontology. We will see that writing those queries from scratch present an important challenge even for experienced users and that the proposed wizard can help in easing such task by allowing the composition of queries by a Query-By-Example methodology (i.e., visually and abstracting from some of the inner details of the query structure and the queried dataset). Example 1. In Fig. 1, we define the schema of a very simple relational database and show how its translation to an OWL Description Logic (DL)1 ontology should be and then propose some iconic SPARQL queries. There are two tables: Person and Phone. A person has a unique identifier, a name, a weight in kilograms, a sex that is false if the person is female and true if the person is male, also a person has a birth date. A phone has a unique identifier, a number, a price, and its owner. There is an implicit one-to-many relation from Person to Phone, meaning that a person can have 0, 1, or more phones and a phone can belong to 0 or at most 1 person. Notice that in this work, we have added extra functionality to the direct mapping specification programmed in previous versions of GF (see [7] and references therein for details) in order to simulate the natural joins between tables and be able to retrieve that characteristic from SPARQL. Thus, the person now knows his phones and vice versa.

Fig. 1. Relational schema and instance for tables Person and Phone 1

We see a DL ontology as a mathematical conceptualization of an equivalent OWL/RDF file, which is understood as the serialization of such ontology [2].

214

S. A. Gómez and P. R. Fillottrani

Example 2 (Continues Example 1). In Fig. 2, the UML design of the classes Person and Phone can be seen. In Fig. 3, the instances of classes Person and Phone are shown. There are three people, two males named John and Paul, and one female of name Mary. John has two phones (viz., 1 and 2), Paul has only one (viz., 3) but Mary has none. The class HeavyYoungMan is defined as a subclass of Person according to the SQL filter: select "personID" from "Person" where "sex"=true and "birthDate">=’2001-01-01’ and "weight">=100.0.

Fig. 2. UML class diagram for people and their phones obtained via OBDA from Fig. 1

Fig. 3. Assertional knowledge about people and their phones for UML diagram in Fig. 2 obtained from the relational instance in Fig. 1

We now explore several paradigmatic query cases in SPARQL. The choice of the particular syntax of some queries is due to that they are presented in the exact way that they are composed by our tool employing the visual specification that we present in Sect. 3. We solve a very specific subset of queries and categorize its cases as selection queries and then construction queries. In the class of selection queries we deal with queries over a single class, queries over a simple hierarchy of classes, totalization queruies, queries over associations, queries using the IN and NOT IN operators, and queries with optional data. Example 3 (Continues Example 2). We start with a selection query having several conditions over a single class: Select the portion of the data that comprise all the females that were born in 2001 that weigh less than 70 kilos, and her name starts with an M , contains an r, and ends with a y. When it is relevant, in all queries, we ask the query processor to show at most 10 results starting with the first result. The graph pattern that a user have to devise is shown in Fig. 5. We have to search for the x that are members of the class Person and have a sex called isMale that equals to false, a weight less than 70, and a birth date bd whose year is 2001. The text of the SPARQL

A QBE Approach to Compose SPARQL Queries in GF for OBDA

PREFIX PREFIX

215

r d f : x s d :

SELECT ? i d ? name ? i s M a l e ? bd ? w e i g h t WHERE { ? x r d f : t y p e . ? x ? i d . ? x ? name . ? x ? i s M a l e . ? x ? bd . ? x ? bd . ? x ? w e i g h t . ? x ? name . ? x ? name . FILTER ( s t r s t a r t s ( s t r ( ? name ) , ’M ’ ) && ? i s M a l e = f a l s e && ? bd >= ’ 2001−01−01T00 : 0 0 : 0 0 ’ ^^ x s d : d a t e T i m e && ? bd = 1 0 0 ) } L I M I T 10 OFFSET 0

’ 555 ’ , " i " )

Listing 1.5. SPARQL query for finding all the heavy men named John that have a phone containing 555 in its number and with a price of at least 200 dollars

218

PREFIX PREFIX

S. A. Gómez and P. R. Fillottrani r d f : x s d :

SELECT ( AVG ( ? p h o n e P r i c e ) AS ? a v e r a g e P r i c e ) WHERE { ? p h o n e r d f : t y p e . ? p h o n e ? p h o n e P r i c e . ? p h o n e ? phoneOwner . ? phoneOwner r d f : t y p e . ? phoneOwner ? o w n e r s W e i g h t ? phoneOwner ? o w n e r s W e i g h t FILTER ( ? o w n e r s W e i g h t >= 110 && ? o w n e r s W e i g h t