Modelling and Development of Intelligent Systems: Dana Simian Laura Florentina Stoica
Modelling and Development of Intelligent Systems: Dana Simian Laura Florentina Stoica
Modelling and Development of Intelligent Systems: Dana Simian Laura Florentina Stoica
123
Editors
Dana Simian Laura Florentina Stoica
Lucian Blaga University of Sibiu Lucian Blaga University of Sibiu
Sibiu, Romania Sibiu, Romania
This Springer imprint is published by the registered company Springer Nature Switzerland AG
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
This volume contains selected, refereed papers, presented at the 6th International
Conference on Modelling and Development of Intelligent Systems (MDIS 2019),
which was held during October 3–5, 2019, in Sibiu, Romania. The conference was
organized by the Research Center in Informatics and Information Technology (ITI) and
the Department of Mathematics and Informatics from the Faculty of Sciences, Lucian
Blaga University of Sibiu (LBUS), Romania. This edition of the conference was
partially supported by the HPI Knowledge Transfer Institute at LBUS.
The topic of the MDIS 2019 conference aligned with a research area that is currently
of major interest. Intelligent systems development is an area that has developed and
diversified significantly in recent years. The Recommendation on Artificial Intelligence
(AI) – the first intergovernmental standard on AI – was adopted by the Organization for
Economic Cooperation and Development (OECD) Council at Ministerial level on
May 22, 2019, and Romania is in the process of elaborating the first AI strategy,
according to this recommendation. In this context, the importance of international
forums allowing the exchange of ideas in all problems concerning AI is increasing at
global level.
The purpose of MDIS 2019 was to bring together scientists, researchers, academics,
IT specialists, and students to present and discuss original results on current theoretical
and practical problems in fields related to modelling and development of intelligent
systems. Original contributions ranging from concepts and theoretical developments to
advanced technologies and innovative applications were presented. Specific topics of
interest included, but were not restricted to, evolutionary algorithms, evolutionary
computing, genetic algorithms and their applications, data mining, machine learning,
intelligent systems for decision support, robotics, knowledge based systems, compu-
tational and conceptual models, pattern recognition, e-learning, swarm intelligence,
metaheuristics and applications, hybrid computation for artificial vision, modelling and
optimization of dynamic systems, adaptive systems, multiagent systems, and mathe-
matical models for development of intelligent systems.
The invited plenary speakers and their lectures were:
– Lyubomyr Demkiv, “Intelligent Real-Time Control of Ground Robots”
– George Eleftherakis, “Using Primitive Brains to Achieve Emergent Smart
Solutions”
– Milan Tuba, “Swarm Intelligence Applied to Medical Image Analysis”
All submitted papers underwent a thorough double-blind peer review. Each paper
was reviewed by at least three independent reviewers, chosen based on their qualifi-
cations and field of expertise.
This volume contains 13 selected papers submitted by authors from 12 countries.
vi Preface
We thank all the participants for their interesting talks and discussions. We also
thank the Scientific Committee members and all the other reviewers for their help in
reviewing the submitted papers and for their contributions to the scientific success
of the conference and to the quality of this proceedings volume.
General Chair
Dana Simian Lucian Blaga University of Sibiu, Romania
Scientific Committee
Kiril Alexiev Bulgarian Academy of Sciences, Bulgaria
Alina Bărbulescu Ovidius University of Constanţa, Romania
Lasse Berntzen Buskerud and Vestfold University College, Norway
Charul Bhatnagar Institute of Engineering and Technology - GLA
University, India
Florian Boian Babeş-Bolyai University, Romania
Peter Braun University of Applied Sciences Würzburg-Schweinfurt,
Germany
Manuel Campos Martinez University of Murcia, Spain
Steve Cassidy Macquarie University, Australia
Dan Cristea Alexandru Ioan Cuza University, Romania
Gabriela Czibula Babeş-Bolyai University, Romania
Daniela Dănciulescu University of Craiova, Romania
Thierry Declerck German Research Center for Artificial Intelligence,
Germany
Lyubomyr Demkiv Lviv National Polytechnic University, Ukraine
Alexiei Dingli University of Malta, Malta
Oleksandr Dorokhov Kharkiv National University of Economics, Ukraine
George Eleftherakis International Faculty of the University of Sheffield,
Greece
Ralf Fabian Lucian Blaga University of Sibiu, Romania
Stefka Fidanova Bulgarian Academy of Sciences, Bulgaria
Ulrich Fiedler Bern University of Applied Science, Switzerland
Martin Fränzle Carl von Ossietzky University of Oldenburg, Germany
Amir Gandomi Michigan State University, USA
Dejan Gjorgjevikj Ss. Cyril and Methodius University in Skopje,
Republic of Macedonia
Andrina Granić University of Split, Croatia
Katalina Grigorova University of Ruse, Bulgaria
Masafumi Hagiwara Keio University, Japan
Axel Hahn Carl von Ossietzky University of Oldenburg, Germany
Raka Jovanovic Hamad bin Khalifa University, Qatar
Saleema JS Christ University, India
Adnan Khashman European Centre for Research and Academic Affairs,
Cyprus
viii Organization
Lyubomyr Demkiv
Abstract. The motion strategy for a ground robot significantly depends on the
type of the terrain. Response time for tire-terrain interaction is crucial factor for
the mobility of the robot. However, agile control of the robot requires not only
the fast-responding controller, but also a state observer that is capable to provide
necessary information about sensor data to the controller. Application of hybrid
control strategies are beneficial for the mobility of the robot and will be dis-
cussed during the presentation.
Brief Biography of the Speaker: Lyubomyr Demkiv received his PhD in 2006 in
Numerical Mathematics and ScD in 2019 in Control Engineering. Since 2006, he is
Associate Professor at Lviv Polytechnic National University. Since 2018, he is with
SoftServe Inc. where he presently works as Robotics Lead. His research field is
intelligent control of dynamical systems.
Plenary Lecture 2
Using Primitive Brains to Achieve Emergent
Smart Solutions
George Eleftherakis
Abstract. Either for or against the validity of Kurzweil’s law, it is a fact that
technology accelerates at an astonishing pace achieving breathtaking results in
any kind of human activity. The Internet of Things, the Cloud, Fog and Edge
computing, the daily increasing visions for smarter systems following the
advancements in machine learning, and many more technological innovations
lead to more demanding requirements than in previous decades for emergent
applications of extreme complexity. A promising solution to deal with such
complexity is to employ systems that exhibit self* properties, composed by
simple agents that communicate and interact following simple protocols
achieving desirable emergent properties that allow smart solutions in dynamic
environments of extreme complexity. Nature, through millions of years of
evolution, has many systems like that to exhibit. Studying systems of agents
with primitive brains that demonstrate remarkable self* properties that emerge
and are not explicitly engineered could prove of great value regardless of the
required effort. Imitating similar behaviors in artificial systems could offer smart
solutions to problems exhibiting high-level complexity that seemed unsolvable,
or are solved under very restricting and concrete conditions. This presentation
will present and discuss experiences studying ants, large-bodied animals, bees,
hornets, focusing on the latest study of frogs and how their mating strategies
could potentially lead to smart solutions in acoustic scene analysis field, disaster
management, and many other complex dynamic systems.
Milan Tuba1,2
1
Vice-Rector for International Relations, Singidunum University,
Belgrade, Serbia
2
Head of the Department for Mathematical Sciences,
State University of Novi Paza, Novi Pazar, Serbia
[email protected]
Brief Biography of the Speaker: Milan Tuba is the Vice-Rector for International
Relations at Singidunum University, Belgrade, and Head of the Department for
Mathematical Sciences at State University of Novi Pazar. He received B. S. in
Mathematics, M. S. in Mathematics, M. S. in Computer Science, M. Ph. in Computer
Science, Ph. D. in Computer Science from University of Belgrade and New York
University. From 1983 to 1994 he was in the USA, first as a graduate student and
teaching and research assistant at Vanderbilt University in Nashville and Courant
Institute of Mathematical Sciences, New York University, and later as Assistant
Professor of Electrical Engineering at Cooper Union School of Engineering, New
York. During that time he was the founder and director of Microprocessor Lab and
VLSI Lab, leader of scientific projects and theses supervisor. From 1994 he was
xx M. Tuba
Adaptive Systems
Conceptual Modelling
Data Mining
Machine Learning
1 Introduction
As learning is an essential human process, it has attracted a lot of research
interest for many decades. Having access to education, which is a process that
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 3–17, 2020.
https://doi.org/10.1007/978-3-030-39237-6_1
4 U. C. Apoki et al.
two, or three parameters might not achieve true satisfaction for the learner. How-
ever, creating learning paths for all possible affecting parameters would result
in an exponential number of possibilities as more parameters are included. A
solution to this will be taking into account as many affecting parameters, but
selecting the most important ones in each learning scenario, according to the
user’s needs and available learning resources.
In this context, this paper proposes a model of an adaptive learning system
that can assemble learning resources (such as text, video, and audio files) in a
learning platform, encompassed in a general curriculum, and adapt it to specific
preferences and needs of learners as the learning scenario requires. The rest of
this paper is structured as follows: Sect. 2 discusses the main aspects of adaptive
e-learning systems; Sect. 3 presents a state-of-the-art of adaptive educational
systems; Sect. 4 proposes a model of an adaptive learning system which creates
personalised curricula for users based on their preferences, characteristics, and
goals; finally, conclusions and future work come in Sect. 5.
1
learning goals, used in this context (and hereafter), represents Bloom’s Taxonomy of
educational objectives in the cognitive domain, which include knowledge, compre-
hension, application, analysis, and synthesis.
6 U. C. Apoki et al.
Learner Model. The learner model extracts and stores information (character-
istics, history, and interactivity) which is specific to each user. The characteristics
of learners have been widely considered as can be seen by the various parame-
ters which have been used to adapt e-learning systems from the theoretical and
empirical studies presented in Sect. 3. The characteristics which are chosen for
adaptation are dependent on available content and design of the system. Thus,
the goal will be to collect significant information which can be used to provide
a different experience for each user, as not all features can be incorporated in
each learning scenario [13].
When modelling learners, different approaches can be taken. A first approach
is to create a static model of the user with characteristics which are considered
to be stable [11]. These include information like educational history of learner,
learning style, and cognitive style. Another approach is modelling the user with
characteristics which are ‘unstable’ or change often with time (dynamic). These
include information such as learner’s level of knowledge, learning goals, and
emotional states (as discussed in [14]). Learner models can also combine both
static and dynamic characteristics. This creates a model which is dynamically
updated as the learner interacts with the system and proceeds in a curriculum.
Learner models can also be designed using machine learning approaches because
of the complexities involved in the dynamic relationships between learner char-
acteristics [15]. Some techniques usually employed include k-Nearest Neighbours
(k-NN) [16], neural networks [6,17], decision network [17], and fuzzy logic [14].
Domain Model. The targets of adaptation usually form the domain model,
which is a characterisation of the knowledge which is to be instructed, and the
relationships between the knowledge elements in the domain.
8 U. C. Apoki et al.
Fig. 2. An LO segment
knowledge in the domain model, the rules, strategies, and theories of the peda-
gogical model [9].
Adaptation Path. After the questions of what the cause of adaptation is and
what is to be adapted are answered, the adaptation path provides the rules and
methods for adapting the target to the preferences of the source. When develop-
ing the rules of adaptation, content, time, or method are dimensions which are
considered [11]. As regards content, attributes such as form, detail, semantic den-
sity, display, support, etc., are explored. The factor of time determines whether
adaptation is applied statically (at the beginning of the course) or dynamically
(as the course progress and current information is retrieved from user). Finally,
‘method’ regulates who has control over adaptation, and to what level [11]; adap-
tation could be controlled by the instructor/tutor, or by the learner, or there
could be a form of shared control between instructor and learner.
3 Literature Survey
The following ideas summarise the evolution of learning and its transition from
traditional forms to adaptable e-learning systems.
There have been several systems and models described in the literature to
achieve personalised content and curriculum in e-learning. Many of these models
and systems are usually centred on just a single type of personalisation, with
very rare considerations of interactions between more than 2 or 3 sources of
personalisation [6]. Currently, most adaptation models have been centred around
learning styles and learner’s level of knowledge. However, to create a robust
adaptive system, more features need to be taken into consideration to provide a
more satisfying experience.
In the following paragraphs, we’ll briefly analyse a few models and systems
which achieve personalisation with multi-parameters and pedagogical agents.
A model is proposed in [6] which generates individual learning paths for stu-
dents based on multiple parameters with machine learning algorithms. Users are
modelled with static and dynamic information regarding personal details, user
interests, performance results, and log data. The log data provides information to
model users based on a self-directed or tutor-directed approach. Learning paths
are generated through SPARQL queries. A Query Results Management (QRM)
component which supports querying the RDF database, stores the results in
a proper format for the machine learning algorithm. Successful learning paths
are stored for future use by a Machine Learning Management (MLM) compo-
nent. Users who have similar features and in similar learning scenarios can be
suggested with successful learning paths.
In [7] an architecture of a two-layer adaptive system is described and imple-
mented. The two layers ELP1 and ELP2 allow for the specification and combina-
tion of multiple parameters for personalisation. ELP2 (E-learning personalisation
2) is responsible for specifying strategies for personalisation according to user
needs. Here, multiple parameters (such as level of knowledge, Felder-Silverman
learning style classification, Honey-Mumford learning styles, media preferences,
etc.) can be selected and combined from the set of possible factors that can affect
learning. Each course is represented by different concepts, and learning objects
which are connected to these concepts are grouped into categories according
to divergent characteristics. The most influencing parameters for each course
are subsequently chosen. ELP1 (E-learning Personalisation 1) is responsible for
applying the combined parameters and strategies which were selected. ELP1 +
ELP2 personalisation is achieved through web services.
A context-aware system for personalised learning is proposed in [10]. In addi-
tion to the learner, domain, and adaptation model, the system has a context
module with sensors for getting the attributes of the learner’s state and device.
The system uses this information in addition to the user’s level of knowledge,
learning style (Felder-Silverman Model), history of interactions with the system,
behaviour, and learning progress to provide personalised content. Learning con-
tent in the domain model is arranged in a hierarchical structure of disciplines,
subjects, courses, chapters, and learning objects.
A multi-agent system (MAS) model is proposed in [20] capable of creat-
ing personalised learning paths according to learner preferences and needs,
while monitoring and giving feedback to students in real-time. The architecture
Model of WASPEC 11
4 Proposed Model
For prototyping the system model, the architecture is composed of (in addition
to the basic components described in Sect. 2) an application module and a session
monitor.
Learner Model. This stores information about the user, which includes per-
sonal information and other features which can be used for personalisation. The
information would is stored using an RDF (Resource Description Framework)
database [22] which makes it easy for updating user information, keeping track
of learning process, and semantic reasoning between user data and the domain
model. The initial profiling of the users would include language, learning goals,
12 U. C. Apoki et al.
level of knowledge, learning style, and media preferences. The options of lan-
guage will be determined by the available learning resources. Learning goals
can knowledge, comprehension, or application. Level of knowledge will have the
categories of beginner, intermediate, and advanced. For learning style classifi-
cation, we adopt the Felder-Silverman Model [23] which has the dimensions of
active/reflective, sensing/intuitive, visual/verbal, and sequential/global. Media
preferences will be either text, image, video, audio, and multimedia.
The primary properties of these selected features (which describe the learn-
ing object) should be of relevance with respect to the learning objectives, and
have the potential to be automatically extracted from the learning resources.
The learning objects created at the end of the transformation should, therefore,
be characterised by a list of features for each type which also align with the
corresponding features of the learning resource from which it was created.
The knowledge base can, hence, be organised in an ontology (a hierarchy of
concepts and learning objectives). For upward extensibility of the ontology, a
learning object representing a concept, C, can be added, which has features that
characterise the concepts below it. Each learning object can then be segmented
based on topics, concepts, or learning objectives. For each object O, of type T,
there are a finite set of related segments SiO .
Session Monitor. This component keeps track of the interactions between the
learner and the system. This information is used to update the learner model
after every learning session and also used (with the rules of adaptation and
instructional strategy) to load the next session for the learner [4]. Log data about
learner’s actions, progress, and errors after assessment can be subsequently used
to determine successful paths for other users with similar characteristics through
machine learning techniques.
The next step involves modelling extracted preferences and features of the
learner model based on predetermined weights.
Therefore, a specific user, U, can be expressed by a finite set of paired ele-
ments, f and w, where f represents a user feature, and w the corresponding weight
(salience) of the user feature in the configuration of that particular user, U.
14 U. C. Apoki et al.
In the next step of the adaptation process, the digital learning resources are
transformed to learning objects with semantic annotation. The transformation
of the learning resources is necessary for reuse, easy handling by the system, and
semantic mapping between user features and learning objects.
We are currently working with Moodle [27], which is an open-source learn-
ing management system. Moodle, by default, is not meant for personalised
courses, but has several options for extendibility, and one of such is web ser-
vices, which offers a robust solution for interoperability between different appli-
cations. Although Moodle stores its data in a relational database, a platform such
as D2RQ [28] offers possibilities of assessing such databases as read-only RDF
graphs. This technology, hence, allows for semantic queries to be written, tested,
and executed using SPARQL [29], which is an RDF query language. Protégé
[30], an open source ontology editor also provides a framework for integration of
external components and declaration of semantic rules (Fig. 4).
For a given learning path for a student, the learning objects which are char-
acterised by features, FT in (1), are ranked with respect to the features, FU ,
obtained from the user. A selection (which forms the personalised curriculum)
for the specific user, P CU , is then made by the system of the most relevant
objects required to achieve the learning objective. The selection, P CU , should
be organised and presented in an efficient way for the user to derive the best
gain possible. For a user to successfully learn about a concept, C, it is imperative
that he/she should know everything below C in the ontology.
As mentioned previously, learner features will be given predetermined weights
as regards their importance in the personalisation process. We attribute language
(L) a weight of 5, learning goal (LG) 4, level of knowledge (LoK) 3, learning style
(LS) 2, and media preference (MP) 1.
Therefore, each user can be expressed according to (3) and (4) as:
FU = (L, 0.33), (LG, 0.27), (LoK, 0.2), (LS, 0.13), (M P, 0.07) (5)
Model of WASPEC 15
References
1. UNESCO Global Education Monitoring Report: Education for people and planet:
Creating Sustainable Futures for All, Paris, France (2016)
2. Wiles, J.: Leading Curriculum Development, p. 2. Corwin Press, Thousand Oaks
(2008)
3. Fischer, G.: User modeling in human-computer interaction. User Model. User
Adapt. Interact. 11, 65–86 (2001). https://doi.org/10.1023/A:1011145532042
4. Klašnja-Milićević, A., Vesin, B., Ivanović, M., Budimac, Z., Jain, L.C.: E-Learning
Systems: Intelligent Techniques for Personalization. Springer, Switzerland (2017).
https://doi.org/10.1007/978-3-319-41163-7
5. Ennouamani, S., Mahani, Z.: An overview of adaptive e-learning systems. In: 2017
Eighth International Conference on Intelligent Computing and Information Sys-
tems (ICICIS), pp. 342–347. IEEE (2017). https://doi.org/10.1109/INTELCIS.
2017.8260060
6. Chrysoulas, C., Fasli, M.: Building an adaptive e-learning system. In: Proceedings
of the 9th International Conference on Computer Supported Education, pp. 375–
382. SCITEPRESS - Science and Technology Publications (2017). https://doi.org/
10.5220/0006326103750382
7. Essalmi, F., Ayed, L.J.B., Jemni, M., Kinshuk, Graf, S.: A fully personaliza-
tion strategy of E-learning scenarios. Comput. Hum. Behav. 26, 581–591 (2010).
https://doi.org/10.1016/j.chb.2009.12.010
8. Boticario, J.G., Santos, O.C., Van Rosmalen, P.M.: Issues in developing standard-
based adaptive learning management systems. Science (80), 2–5 (2005)
9. Phobun, P., Vicheanpanya, J.: Adaptive intelligent tutoring systems for e-learning
systems. Procedia Soc. Behav. Sci. 2, 4064–4069 (2010). https://doi.org/10.1016/
j.sbspro.2010.03.641
10. Ennouamani, S., Mahani, Z.: Designing a practical learner model for adaptive and
context-aware mobile learning systems. IJCSNS Int. J. Comput. Sci. Netw. Secur.
18, 84–93 (2018)
11. Vandewaetere, M., Desmet, P., Clarebout, G.: The contribution of learner char-
acteristics in the development of computer-based adaptive learning environments.
Comput. Hum. Behav. 27, 118–130 (2011). https://doi.org/10.1016/j.chb.2010.07.
038
12. Sampson, D., Karagiannidis, C., Kinshuk, C.: Personalised learning: educational,
technological and standardisation perspective. Interact. Educ. Multimed. 4, 24–39
(2002)
13. Brusilovsky, P., Millán, E.: User models for adaptive hypermedia and adaptive edu-
cational systems. In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive
Web. LNCS, vol. 4321, pp. 3–53. Springer, Heidelberg (2007). https://doi.org/10.
1007/978-3-540-72079-9 1
14. Hamada, M., Hassan, M.: An enhanced learning style index: implementation and
integration into an intelligent and adaptive e-learning system. Eurasia J. Math.
Sci. Technol. Educ. 13, 4449–4470 (2017). https://doi.org/10.12973/eurasia.2017.
00940a
15. Al-Hmouz, A., Shen, J., Yan, J., Al-Hmouz, R.: Enhanced learner model for adap-
tive mobile learning. In: Proceedings of the 12th International Conference on Infor-
mation Integration and Web-based Applications and Services - iiWAS 2010, pp.
783–786. ACM Press, New York (2010). https://doi.org/10.1145/1967486.1967614
Model of WASPEC 17
16. Chang, Y.C., Kao, W.Y., Chu, C.P., Chiu, C.H.: A learning style classification
mechanism for e-learning. Comput. Educ. 53, 273–285 (2009). https://doi.org/10.
1016/j.compedu.2009.02.008
17. Red, E.R., Borlongan, H.G.S., Briagas, T.T., Mendoza, M.J.M.: Classification of
Students Performance in a Learning Management System Using their eLearn-
ing Readiness Attributes. In: 2015 International Conference on e-Commerce, e-
Administration, e-Society, e-Education, and e-Technology (e-CASE and e-Tech
2015), pp. 199–211 (2015)
18. Learning object standard - EduTech Wiki. http://edutechwiki.unige.ch/en/
Learning object standard
19. Guevara, C., Aguilar, J., González-Eras, A.: The model of adaptive learning objects
for virtual environments instanced by the competencies. Adv. Sci. Technol. Eng.
Syst. J. 2, 345–355 (2017). https://doi.org/10.25046/aj020344
20. Hammami, S., Mathkour, H.: Adaptive e-learning system based on agents and
object Petri nets (AELS-A/OPN). Comput. Appl. Eng. Educ. 23, 170–190 (2015).
https://doi.org/10.1002/cae.21587
21. Serçe, F.C., Alpaslan, F.N., Jain, L.C.: Adaptive intelligent learning system
for online learning environments. In: The Handbook on Reasoning-Based Intel-
ligent Systems, pp. 353–387. World Scientific (2013). https://doi.org/10.1142/
9789814329484 0014
22. Resource Description Framework (RDF) - W3C Semantic Web. https://www.w3.
org/RDF/
23. Felder, R.M., Silverman, L.K.: Learning and teaching styles in engineering educa-
tion. Eng. Educ. 78, 674–681 (1988)
24. Institute of Electrical and Electronics Engineers, IEEE Computer Society. Learning
Technology Standards Committee, IEEE-SA Standards Board: IEEE Standard for
Learning Object Metadata. Institute of Electrical and Electronics Engineers (2002)
25. Bellifemine, F., Caire, G., Trucco, T., Rimassa, G.: JADE programmer’s guide
(2010)
26. Ennouamani, S., Akharraz, L., Mahani, Z.: Integrating ICT in education: an adap-
tive learning system based on users’ context in mobile environments. In: Farhaoui,
Y., Moussaid, L. (eds.) ICBDSDE 2018. SBD, vol. 53, pp. 15–19. Springer, Cham
(2019). https://doi.org/10.1007/978-3-030-12048-1 3
27. Moodle. https://moodle.org/
28. D2RQ, Accessing Relational Databases as Virtual RDF Graphs. http://d2rq.org/
29. SPARQL Query Language for RDF, W3C. https://www.w3.org/TR/rdf-sparql-
query/
30. Protege, Stanford University. https://protege.stanford.edu/
From Digital Learning Resources to
Adaptive Learning Objects: An Overview
1 Introduction
Over the last few decades, learning systems which are computer-based have
become web-based to ensure a wider reach to users. As part of this evolution
of global access to quality learning resources, a whole industry has been built
around e-learning systems to enforce reusability, interchangeability of learning
materials, and a path for proprietors to protect their intellectual properties.
However, to successfully achieve this aim of global reach to education, which,
according to a United Nations Educational, Scientific, and Cultural Organiza-
tion (UNESCO) Report, is key to reducing disadvantage, ending poverty, and
lessening disparity [1], an educator has to consider factors beyond the features
of the learning device [2]. This gives rise to the paradigm of personalised learn-
ing, which involves adapting the learning process/experience to suit user needs.
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 18–32, 2020.
https://doi.org/10.1007/978-3-030-39237-6_2
From Digital Learning Resources to Adaptive Learning Objects 19
and relationships between the elements [8,13]. The pedagogical model receives the
information from the learner model, which it uses for adaptation. It describes the
instructional strategies, the pedagogical theories, and the rules of adaptation.
Learning is, for the most part, an intricate process as it has to take a host of
affecting factors into consideration, even for a particular individual, in different
learning scenarios. However, adaptive e-learning strive to accomplish a singular
purpose, which is the absorption of learning content to the maximum by the
22 U. C. Apoki et al.
learner [17]. As stated previously, the learning content is one of the most tar-
geted forms of adaptation. Hence, it is imperative for the success of AEHS that
learning content is highly flexible in its presentation and ability to respond to
user individualities and essential needs [18]. It is a bad solution to just copy
learning materials that proved to be efficient for learning to a group of learners
to another group in different contexts. For this reason, designers and creators of
online content spend considerable time and effort in the design and transforma-
tion of learning content used in e-learning systems.
We will refer to all digital learning content, either raw or processed, elemen-
tary or aggregated, which provide information to a learner as digital learning
resources. Although, there is no standard definition of what a learning resource
is, for purposes of this study, a learning resource is basically any tool or material
added in the context of a course of curriculum that adds significant value to the
teaching and learning experience in order to achieve a particular goal [19,20].
Digital learning resources could include text, audio, graphical images, photos,
videos, simulations, animations, learning objects, programmed learning modules,
etc.
Learning objects have been a recurrent theme in e-learning for a long time.
It was originated from the idea to solve the challenge of non-reusable open and
distance-learning (ODL) content from an object-oriented programming approach
[2,21]. What constitutes a learning object is largely debatable by the scientific
community. However, a learning object can be seen as:
Although there are disparities in how learning objects are defined, there
seems to be some form of consensus in defining the properties in the design of
learning objects. Hence, a learning object is not just a piece of text, a graphic,
audio or video file; these are used in the creation of learning objects. It is neither
a course curriculum on a subject; rather, LOs are aggregated to courses. The
important properties of ideal LOs from these definitions are: reusability, modu-
larity, interoperability, portability, and an educational goal. In [26], the authors
differentiated between a reusable learning object (RLO) from a shareable learn-
ing object (SLO). They defined an RLO as having the basic properties of having
educationally sound content, with a clear goal, and being able to be used on
a learning platform. Furthermore, an SLO is an RLO, with metadata sufficient
From Digital Learning Resources to Adaptive Learning Objects 23
enough to interface with other learning platforms. We can summarise the main
differences between digital learning resources and learning objects in Table 1.
provides the structure of how learning content should be packaged to enable inte-
gration into a learning platform [28]. SCORM Run Time Environment (SCORM
RTE) describes the possible operations of learning objects when they have been
integrated into an LMS, while SCORM Sequence and Navigation (SCORM SN)
provides rules for the sequencing and navigation of learning content for users in
an LMS [2,31,32].
From a pedagogical point of view, information about individual or group
learners are assembled in an IMS Learner Information Package (IMS LIP) [31].
Also, a model for specifying how assessments should be represented and reported
are described by the IMS Question and Test Interoperability (IMS QTI) [31].
Learning objects have been previously considered to be static content [2]; how-
ever, one of the relatively recent property of LOs are its potentials for personal-
isation [6] which has generated a lot of research interest in the last two decades.
This is also because of the possibility of extending the standards for designing
LOs. An adaptive learning object (ALO) is a specialisation of a LO which is
derived by adapting the learning content to specific features and different con-
texts to achieve a personalised and more effective teaching-learning experience.
To delve further into the concept of adaptive learning objects, we’ll look at the
following aspects: what is adapted in learning objects, how it is adapted, and
the components needed to achieve adaptation.
Profile Blackboard Agent and the Learning Blackboard Agent to present learn-
ing content suited to a learner’s preferences. The system utilises object Petri
nets and an AI approach of a Blackboard System [50].
MALO (Model of Adaptation of Learning objects) [33], which is based on
the micro-adaptive approach uses updated level of knowledge for each learner in
addition to competencies/skills in achieving ALOs. The model is built by extend-
ing the LOM standard with an additional ‘competence’ specification. MALO
basically consists of a learning object, units (small blocks of concepts which
compose an LO), rules, and adaptation metadata. Two rules are defined, which
are adaptation (semantics, presentation, organisation, and transformation) and
conversion (composition and decomposition), for the creation of an ALO. Adap-
tation begins by ascertaining the competence of a learner and providing learning
content to achieve a learning objective, which is the desired competence.
The authors in [51] propose an automatic generation of ALO for users by util-
ising the strengths of XML and Relational Databases (RDB). This is achieved
by mapping the XML document of the course (with a Data Mapper) into an
RDB, running SQL queries (with a Query Mapper) to find relationships between
learner preferences and learning objects and reconstructing the SQL result (with
a Relational to XMap Mapper) which contains the ALO. They define four lev-
els of aggregation which include courses, units, learning objects, and concepts.
Concepts are information objects which are composed of raw media elements
(text, audio, video, etc.). Learning objects, which are aggregated from informa-
tion objects, are assembled to form units, and which subsequently, collected,
form courses.
References
1. UNESCO Global Education Monitoring Report: Education for people and planet:
Creating Sustainable Futures for All, Paris, France, p. 73 (2016)
2. Garcı́a-Valdez, J.M., Rodrı́guez-Dı́az, A., Castañón-Puga, M., Cristóbal-Salas, A.:
Adaptive learning objects. In: Proceedings of the International Conference on Arti-
ficial Intelligence ICAI04, pp. 105–109 (2004)
3. Wright, J.: Getting Personal: the role of personalization in online learning. http://
www.insticc.org/portal/NewsDetails/TabId/246/ArtMID/1130/ArticleID/794/
Getting-Personal-The-role-of-personalization-in-online-learning.aspx. Accessed
03 Apr 2019
4. Tseng, S.-S., Su, J., Hwang, G.-J., Hwang, G.-H., Tsai, C.-C., Tsai, C.-J.: An
object-oriented course framework for developing adaptive learning systems. Educ.
Technol. Soc. 11, 171–191 (2008)
5. Andaloussi, K.S., Capus, L., Berrada, I.: Adaptive educational hypermedia sys-
tems: current developments and challenges. In: Proceedings of the 2nd Interna-
tional Conference on Big Data, Cloud and Applications - BDCA 2017, pp. 1–8.
ACM Press, New York (2017). https://doi.org/10.1145/3090354.3090448
6. Shute, V.J., Zapata-Rivera, D.: Adaptive educational systems. In: Durlach, P.J.,
Lesgold, A.M. (eds.) Adaptive Technologies for Training and Education, pp.
7–27. Cambridge University Press, Cambridge (2012). https://doi.org/10.1017/
CBO9781139049580.004
7. Medina-Medina, N., Garcia-Cabrera, L., Torres-Carbonell, J.J., Parets-Llorca, J.:
Evolution in adaptive hypermedia systems. In: Proceedings of the International
Workshop on Principles of Software Evolution - IWPSE 2002, p. 34. ACM Press,
New York (2002). https://doi.org/10.1145/512035.512044
8. Vandewaetere, M., Desmet, P., Clarebout, G.: The contribution of learner char-
acteristics in the development of computer-based adaptive learning environments.
Comput. Hum. Behav. 27, 118–130 (2011). https://doi.org/10.1016/j.chb.2010.07.
038
9. Brusilovsky, P.: Adaptive hypermedia. User Model. User Adapt. Interact. 11, 87–
110 (2001). https://doi.org/10.1023/A:1011143116306
10. Brusilovsky, P.: Methods and techniques of adaptive hypermedia. User Model. User
Adapt. Interact. 6, 87–129 (1996). https://doi.org/10.1007/BF00143964
11. Henze, N., Nejdl, W.: Logically characterizing adaptive educational hypermedia
systems. In: International Workshop on Adaptive Hypermedia and Adaptive Web-
based Systems (AH 2003), pp. 20–24 (2003)
12. Sampson, D., Karagiannidis, C., Kinshuk, C.: Personalised learning: educational,
technological and standardisation perspective. Interact. Educ. Multimed. 4, 24–39
(2002)
13. Klašnja-Milićević, A., Vesin, B., Ivanović, M., Budimac, Z., Jain, L.C.: E-Learning
Systems: Intelligent Techniques for Personalization. Springer, Switzerland (2017).
https://doi.org/10.1007/978-3-319-41163-7
14. Ennouamani, S., Mahani, Z.: An overview of adaptive e-learning systems. In: 2017
Eighth International Conference on Intelligent Computing and Information Sys-
tems (ICICIS), pp. 342–347. IEEE (2017). https://doi.org/10.1109/INTELCIS.
2017.8260060
15. Reategui, E., Boff, E., Campbell, J.A.: Personalization in an interactive learn-
ing environment through a virtual character. Comput. Educ. 51, 530–544 (2008).
https://doi.org/10.1016/j.compedu.2007.05.018
From Digital Learning Resources to Adaptive Learning Objects 31
16. Beldagli, B., Adiguzel, T.: Illustrating an ideal adaptive e-learning: a conceptual
framework. Procedia Soc. Behav. Sci. 2, 5755–5761 (2010). https://doi.org/10.
1016/j.sbspro.2010.03.939
17. Terzieva, T., Rahnev, A.: Basic stages in developing an adaptive e-learning sce-
nario. Int. J. Innov. Sci. Eng. Technol. 5, 50–54 (2018)
18. Vesin, B., Ivanović, M.: Modern educational tools. In: Proceedings of PRIM2004,
16th Conference on Applied Mathematics, Budva, Montenegro, pp. 293–302 (2004)
19. What do we mean by “digital learning resources”? https://flexiblelearning.
auckland.ac.nz/learning technologies online/6/1/html/course files/1 1.html
20. Association of American Publishers: What Are Learning Resources?—
AAP. https://publishers.org/our-markets/prek-12-learning/what-are-learning-
resources
21. Norman, S., Porter, D.: Designing Learning Objects for Online Learning: A Topical,
Start-Up Guide to Distance Education Practice and Delivery. Commonwealth of
Learning, Vancouver, BC, Canada (2007)
22. Wiley, D.A. (ed.): The Instructional Use of Learning Objects. Agency for Instruc-
tional Technology, Association for Educational Communications & Technology,
Bloomington, Indiana (2002)
23. Barker, P.: What is IEEE Learning Object Metadata/IMS Learning Resource
Metadata? Cetis Standards Briefings Series 1 (2005)
24. Learning Technology Standards Committee (IEEE): The Learning Object Meta-
data standard—IEEE Learning Technology Standards Committee. https://www.
ieeeltsc.org/working-groups/wg12LOM/lomDescription
25. Pitkanen, S.H., Silander, P.: Criteria for pedagogical reusability of learning objects
enabling adaptation and individualised learning processes, pp. 246–250 (2004).
https://doi.org/10.1109/icalt.2004.1357412
26. Singh, R.G., Bernard, M., Gardler, R.: Creating sharable learning objects from
existing digital course content. In: Proceedings of the 2004 Workshop on Com-
puter Architecture Education Held in Conjunction with the 31st International
Symposium on Computer Architecture - WCAE 2004, p. 8. ACM Press, New York
(2004). https://doi.org/10.1145/1275571.1275582
27. IMS Global Learning Consortium. http://www.imsglobal.org/
28. ADL Initiative. https://www.adlnet.gov/
29. Ariadne Project EU—Foundation. https://www.ariadne-eu.org/
30. Miller, S.J.: Metadata for Digital Collections: A How-To-Do-It Manual, p. 56. ALA
Neal-Schuman, Chicago (2011)
31. Learning object standard - EduTech Wiki. http://edutechwiki.unige.ch/en/
Learning object standard
32. IMS Content Packaging - EduTech Wiki. http://edutechwiki.unige.ch/en/IMS
Content Packaging
33. Guevara, C., Aguilar, J., González-Eras, A.: The model of adaptive learning objects
for virtual environments instanced by the competencies. Adv. Sci. Technol. Eng.
Syst. J. 2, 345–355 (2017). https://doi.org/10.25046/aj020344
34. Ciolacu, M., Beer, R.: Adaptive user interface for higher education based on web
technology. In: 2016 IEEE 22nd International Symposium for Design and Technol-
ogy in Electronic Packaging, SIITME 2016, pp. 300–303 (2016). https://doi.org/
10.1109/SIITME.2016.7777299
35. Marković, S., Jovanović, Z., Jovanović, N., Jevremović, A., Popović, R.: Adap-
tive distance learning and testing system. Comput. Appl. Eng. Educ. 21, E2–E13
(2010). https://doi.org/10.1002/cae.20510
32 U. C. Apoki et al.
36. Essalmi, F., Ayed, L.J.B., Jemni, M.: A multi-parameters personalization approach
of learning scenarios. In: Seventh IEEE International Conference on Advanced
Learning Technologies (ICALT 2007), pp. 90–91. IEEE (2007). https://doi.org/10.
1109/ICALT.2007.22
37. Essalmi, F., Ayed, L.J.B., Jemni, M., Kinshuk, Graf, S.: A fully personaliza-
tion strategy of E-learning scenarios. Comput. Hum. Behav. 26, 581–591 (2010).
https://doi.org/10.1016/j.chb.2009.12.010
38. Thalmann, S.: Adaptation criteria for the personalised delivery of learning mate-
rials: a multi-stage empirical investigation. Australas. J. Educ. Technol. 30, 45–60
(2014). https://doi.org/10.14742/ajet.235
39. Felder, R.M., Silverman, L.K.: Learning and teaching styles in engineering educa-
tion. Eng. Educ. 78(7), 674–681 (1988)
40. Honey, P., Mumford, A.: A manual of learning styles. In: Learning styles. Engi-
neering Subject Centre. Peter Honey, Maidenhead (1986)
41. Rufer, R., Adams, R.H.: Adapting three-dimensional-virtual world to reach diverse
learners in an MBA program. In: Handbook of Research on Practices and Outcomes
in Virtual Worlds and Environments, pp. 606–619 (2011). https://doi.org/10.4018/
978-1-60960-762-3.ch033
42. Keller, J.M.: Development and use of the ARCS model of motivational design. J.
Instr. Dev. 10, 2–10 (1987)
43. Ennouamani, S., Mahani, Z.: Designing a practical learner model for adaptive and
context- aware mobile learning systems. IJCSNS Int. J. Comput. Sci. Netw. Secur.
18, 84–93 (2018)
44. Ennouamani, S., Akharraz, L., Mahani, Z.: Integrating ICT in education: an adap-
tive learning system based on users’ context in mobile environments. In: Farhaoui,
Y., Moussaid, L. (eds.) ICBDSDE 2018. SBD, vol. 53, pp. 15–19. Springer, Cham
(2019). https://doi.org/10.1007/978-3-030-12048-1 3
45. Klašnja-Milićević, A., Vesin, B., Ivanović, M., Budimac, Z.: E-Learning personal-
ization based on hybrid recommendation strategy and learning style identification.
Comput. Educ. 56, 885–899 (2011). https://doi.org/10.1016/j.compedu.2010.11.
001
46. Veletsianos, G., Russell, G.S.: Pedagogical agents. In: Spector, J.M., Merrill, M.D.,
Elen, J., Bishop, M.J. (eds.) Handbook of Research on Educational Communica-
tions and Technology, pp. 759–769. Springer, New York (2014). https://doi.org/
10.1007/978-1-4614-3185-5 61
47. Battou, A., El Mezouary, A., Cherkaoui, C., Mammass, D.: Towards an adaptive
learning system based on a new learning object granularity approach. Int. J. Adv.
Comput. Sci. Appl. 2, 8–14 (2011). https://doi.org/10.14569/IJACSA.2011.020902
48. Wan, S., Niu, Z.: Adaptive learning objects assembly with compound constraints.
In: 2014 IEEE Computers, Communications and IT Applications Conference, pp.
34–39. IEEE (2014). https://doi.org/10.1109/ComComAp.2014.7017166
49. Hammami, S., Mathkour, H.: Adaptive e-learning system based on agents and
object Petri nets (AELS-A/OPN). Comput. Appl. Eng. Educ. 23, 170–190 (2015).
https://doi.org/10.1002/cae.21587
50. Hayes-Roth, B.: A blackboard architecture for control. Artif. Intell. 26, 251–321
(1985). https://doi.org/10.1016/0004-3702(85)90063-3
51. Bousalem, Z., El Guabassi, I., Cherti, I.: Toward adaptive and reusable learn-
ing content using XML dynamic labeling schemes and relational databases. In:
Ezziyyani, M. (ed.) AI2SD 2018. AISC, vol. 915, pp. 787–799. Springer, Cham
(2019). https://doi.org/10.1007/978-3-030-11928-7 71
Agile-Based Product Line Tool
Development
Abstract. The product line domain and agile software development cre-
ated a well-received product line concept with complex toolchains and the
agile development idea that fosters a rather pragmatic development style
with less documentation. Both parts have been included in two student
projects targeting the development of a configurator product line. This
paper presents requirements for configurator product lines and evaluates
the two projects towards these requirements. The positive results of the
projects lead to the proposal to broaden the support and acceptance of
special project types in the product line domain where the source code
and structure is enough to understand and maintain the project. We
even propose this to be the better solution.
1 Introduction
Product lines date back to Kang’s [7] early technical report about Feature-
Oriented Domain Analysis. The basic idea to structure the design of a system
along its features introduced a new view to software development and a new
way of designing and developing such software systems. One of the key ideas
is the interaction of software developers with users using the term “features”.
Features were introduced as elements that should be understood by both par-
ties, the users and software developers, and they describe elements customers are
willing to pay for. Additionally, a product line is modeled by its mandatory and
optional features. Of course, another economic reason for product lines is the
cost savings if the product line architecture can be reused and variants of it can
be derived by only configuring a needed product instead of developing it from
scratch. The product line design idea was of advantage for software systems [1],
and it was also adopted in several industrial projects [9]. Despite these positive
results, the complexity of setting up and maintaining product line development
environments is still high enough for the corresponding tools or toolchains to
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 33–47, 2020.
https://doi.org/10.1007/978-3-030-39237-6_3
34 D. Streitferdt et al.
examples given in this paper are of a special type, which allows the source
code to be a document itself indeed. The examples are explained and evaluated
against requirements to show that they fulfill their intended task while they are
developed according to the agile approach in a sense explained above.
In Sect. 2, the configuration aspect is described by requirements for the devel-
opment and implementation of this specific product line approach. In Sect. 3, an
overview of the product line development is given together with agile product
line approaches. As a result, the agile approach is considered a valid solution
for the product line development according to the requirements elaborated in
Sect. 2. Two implementations based on student projects are presented in Sect. 4.
These projects have been developed as part of the research work in the research
group of the first author of this paper. The students developed a lightweight
product line tool within the short timeframe of a Master’s thesis (six months).
Their research question was how would software experts support themselves with
the task of developing a product line configurator-tool if they have the freedom
to decide upon the architecture and implementation of the tool.
Finally, in Sect. 5, conclusions are drawn about the two projects in relation
to the requirements given in Sect. 2. The paper finishes with the future work
section.
2 Requirements
This list contains the requirements relevant for our configurator. Additional
requirements for feature modeling in general can be found in [13]. There, model-
ing (mandatory features, optional features, feature cardinality, attributes, feature
versions, layers, external features, binding times, resource mapping, alternative-
groups, or-groups, group cardinality, multiple groups) and constraint language
(expressiveness, representation) requirements are discussed.
from companies formerly working with large headquarters and most engi-
neers being on-site, towards smaller teams, distributed worldwide. These small
teams are organizationally composed to form engineering departments in their
companies.
The combination of both, software product lines and the agile development
approach was analyzed in [5] and further enhanced in [8]. The resulting transfor-
mation model, to transform standard projects to the agile software product line
approach, is divided into four layers, an organizational, a team, a management
and team, as well as a pure management layer. One of the proposed software
product line extensions given for the last two layers emphasizes the agile idea
of teams to organize and decide by themselves, especially about their infras-
tructure. Such infrastructure includes tools which will be organized by the team
itself. Based on our own project management experiences and many student
projects, the relation of responsibility given to the members of a development
team, and their satisfaction with their tasks is very tight. Thus, the agile develop-
ment approach will support requirements R1 and R2. In this paper, the proposal
for requirements R1 and R2 is to choose the language of the developers and let
them describe and solve the task in their language. Of course, the language of
developers is their programming language. This eliminates the learning effort for
the language. The tool management effort depends on the quality of the code,
but here we expect the self-regulation of the developers to reduce this effort
since the developer’s responsibility for his own tool directly corresponds with
the effort he needs to spend for any maintenance.
Small teams will form larger organizational engineering structures with the
responsibility but also the wish of companies to take care and maintain their
own tool set. Depending on the task given to a team, tools might not even have
to interact beyond the team scope. Such tools will be unique for this team. This
is true in many product line examples in the industry [9]. These success stories
often include home-made tools with high efficiency for the hosting team. Thus,
current development teams are given more responsibility for their own toolchain,
which now becomes a success factor for the development of product lines. Again
this is related to requirements R1 and R2 with the same argumentation as in
the previous paragraph.
The implementation of feature-oriented product lines is presented in [1] and
includes modeling but also many programming parts. It is apparent that the
coding domain has a better motivating potential for the developers than other
tasks, for example, documentation, which is in line with the agile approach.
As an example chosen for this paper, online computer configurators offer the
service of putting together a complete computer system for customers without
detailed knowledge about the compatibility of components. Here, the features
of the product line are the PC components the end-user wants and is willing to
pay for. The selection process is guided by a web tool, and any constraints are
maintained and hidden by the same tool. Finally, the customer is only able to
select his desired components. The web system validates the configuration.
38 D. Streitferdt et al.
possible when we use only the programming approach instead of complex prod-
uct line toolchains.
In the following sections, two student projects will be presented. With the
basic knowledge of the product line approach and the programming tools avail-
able, the agile and in this case, pragmatic approach was used for the development
of a configuration product line tool, relevant and usable for developers within
their team.
4 Solutions
The programming solution is a pragmatic view onto software product lines, made
for software development experts and made for the domain of configurators. Two
software architectures to model and use feature models, will be presented in this
paper, along with the analysis results of their usage.
The task given to the two master students was the development of a prod-
uct line configurator. The students were free to choose whichever example they
wanted and implement it with their approach. They were told to use the agile
development process and any communication was meant to be amongst devel-
opers, thus, extensive written documents were not needed.
Two lightweight product line tools will be presented, compared, and assessed.
They are both developed in C++ and require the skills of a software developer
for their usage. In exchange, these lightweight solutions will work on the source
code level and can be integrated into toolchains with, based on our experience,
an effort of less than three days.
The first project was developed in C++ as part of a master’s thesis by Johannes
Hein [3] and was released on github 4 . This solution is straight forward and uses
classes to build and analyze feature models.
The feature model is based on two classes, see the left side in Fig. 3. The
class Feature for the basic elements of the model and the class Dependency to
model relations between features. This class-structure represents the underlying
meta-model. By inheritance, a feature model can be developed and stored as
C++ code. The instantiation of a concrete model is the equivalent to deriving a
variant, and again a variant will be stored in a C++ code file.
Feature Class. This class is the template for all features in feature mod-
els. Concrete features are simply subclasses of Feature. The boolean attribute
selected reflects whether a feature was chosen as part of a variant of the prod-
uct line. It has the std::list attribute dependencies for each feature to store zero
to many Dependency-objects, with the helper methods getDependencies and
addDependecy.
4
https://github.com/johanneshein/feature-toolset.
40 D. Streitferdt et al.
The class layout allows us to build simple feature models as is but also to
extend the meta-model to enable more complex feature models with different
feature-types by inheriting from Feature.
Using Feature and Dependency. The variables ending on “ ptr” make use
of C++ shared pointers to ease memory handling. The usage of the two classes
Feature and Dependency is divided into the following steps.
1. Develop the feature model by creating any desired feature classes and depen-
dencies.
2. Instantiate the feature model.
3. Derive a variant by selecting the desired features.
4. Check the variant for its validity.
The first step results in the source code of the corresponding feature model
project. After this, the first part of the second step starts with the instantiation
of the features, as shown for the first three features in Listing 1.1.
Agile-Based Product Line Tool Development 41
Listing 1.2 finalizes the second step, the setup of the structure of the feature
model. By convention, the dependency has to be created first (see source line 1).
All features belonging to the dependency will be added to the dependency (see
source line 2), and then the dependency will be added to its feature (see source
line 3).
Finally, the feature model can be traversed to let the user select the desired
features by the select-method of the Feature-class what is implemented in the
service methods of the Analyzer -class in the next subsection.
Analyzer Class. The key component of the approach is the Analyzer class,
implemented as singleton. All the features and dependencies are kept in an
object of this class (see the feature and dependency attributes). The selec-
tion of a product line variant is analyzed in the traverseSPLDefinition method.
Starting with the root-feature (see determineRootFeatures), all the features will
42 D. Streitferdt et al.
selected or set values are stored in an extended version of the Feature Model
XML-file using new XML-elements and additional attributes. As in the previous
solution, constraints are implemented directly in C++ . The difference is the fully
externalized data model, present as XML-file.
The library custom constraints contains the code that will be executed while
the user is selecting features for the desired variant. For each selection, the
constraints attached to features will be executed to check whether they hold
or break the feature model, programmed as conditions in C++ evaluating to
true/false.
The library custom routines contains the code that will be executed when
a variant is selected. The execution is an additional step that was implemented
in this solution, which is not yet part of the solution presented in Subsect. 4.1.
The selection of a variant might only lead to an order process for different hard-
ware components or it might lead to a code generation process. Since these are
different tasks, routines can be attached to features to take care of anything
which needs to be done for the execution of a feature. Again the routines are
programmed in C++ for full flexibility.
44 D. Streitferdt et al.
The code for the custom constraints as well as the custom routines library
is organized in the constraints.xml and the routines.xml files, shown in
Listings 1.4 and 1.5. Both files are processed by the create custom DLL tool
Agile-Based Product Line Tool Development 45
which automatically generates the code for both libraries, custom constraints
and custom routines, and finally compiles the libraries.
successfully addressed and realized within the short timeframe of a thesis. The
results of the student projects show that the best way to address constraints is
by using a programming language with all its capabilities. The integration of
such constraints into a product line tool needs a data model hosting features
and constraints which has been developed in both projects.
Finally, C++ with its new language features, like smart pointers and the
extensive standard libraries, offers an excellent platform to develop product line
tools for small (in our case even one-man) projects from scratch and gain the
internal knowledge about the own tools used. This is a soft factor in the soft-
ware development domain, which leaves a favorable ground for good team com-
munication, and based on the communication, the team cohesion. Product line
configuration tools are located inside a development team - only developers are
building and using this tool. The simplicity of the design and the clarity of the
code allow such projects only to exist as code. With the complexity of the prod-
uct line tool domain discussed in the state-of-the-art section, the expectation of
an increased number of project types, as presented in this paper, is easily visi-
ble. To react as flexibly as needed, we propose to actively support such project
types, starting with the education of developers and computer scientists up to
industrial teams.
6 Future Work
References
1. Apel, S., Batory, D., Kästner, C., Saake, G.: Feature-Oriented SoftwareProduct
Lines. Springer (2013)
2. Galindo, J.A., Benavides, D., Trinidad, P., Gutiérrez-Fernández, A.M.,Ruiz-Cortés,
A.: Automated analysis of feature models: Quo vadis? Computing101(5), 387–433
(2019).https://doi.org/10.1007/s00607-018-0646-1
3. Hein, J.: Feature Toolset in C++. Master’s thesis, Technische Universit ät Ilmenau
(2019)
4. Hohl, P., Munch, J., Schneider, K., Stupperich, M.: Real-Life Challenges on Agile
Software Product Lines in Automotive, Lecture Notes in Computer Science, vol.
10611, pp. 28–36. Springer International Publishing Ag, Cham (2017). https://doi.
org/10.1007/978-3-319-69926-4 3
Agile-Based Product Line Tool Development 47
5. Hohl, P., Stupperich, M., Münch, J., Schneider, K.: Combining agile development
and software product lines in automotive: Challenges and recommendations. In:
2018 IEEE International Conference on Engineering, Technology and Innovation
(ICE/ITMC). pp. 1–10 (June 2018). https://doi.org/10.1109/ICE.2018.8436277
6. Hüttl, T.: Feature Model Analysis. Master’s thesis, Technische Universität Ilmenau
(2019)
7. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented
domain analysis (foda) feasibility study. Carnegie-Mellon Univ Pittsburgh Pa Soft-
ware Engineering Inst, Tech. rep. (1990)
8. Klunder, J., Hohl, P., Schneider, K.: Becoming Agile While Preserving Software
Product Lines An Agile Transformation Model For Large Companies. Proceedings
of the 2018 International Conference on Software and System Process, Assoc. Com-
puting Machinery, New York (2018). https://doi.org/10.1145/3202710.3203146
9. van der Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in
Action:The Best Industrial Practice in Product Line Engineering. Springer (2007)
10. Marques, M., Simmonds, J., Rossel, P.O., Bastarrica, M.C.: Software product line
evolution: A systematic literature review. Information and Software Technology
105, 190–208 (2019). https://doi.org/10.1016/j.infsof.2018.08.014
11. Navarro, J.C., Chavarriaga, J.: Using Microsoft Solver Foundation to Analyse Fea-
ture Models and Configurations. 8th Euro American Conference on Telematics and
Information Systems, Ieee, New York (2016)
12. Santos Jr., A., Lucena Jr., V.: Scrumpl - software product line engineering with
scrum. In: Proceedings of the Fifth International Conference on Evaluation of Novel
Approaches to Software Engineering - Volume 1: ENASE, pp. 239–244. INSTICC,
SciTePress (2010). https://doi.org/10.5220/0003038302390244
13. Seidl, C., Winkelmann, T., Schaefer, I.: A software product line of featuremodeling
notations and cross-tree constraint languages. Modellierung 2016(2016)
Conceptual Modelling
Conceptual Model Engineering
for Industrial Safety Inspection Based
on Spreadsheet Data Analysis
Matrosov Institute for System Dynamics and Control Theory, Siberian Branch
of the Russian Academy of Sciences, 134, Lermontov st., Irkutsk 664033, Russia
[email protected]
1 Introduction
Conceptual models are the foundation for many modern knowledge-based sys-
tems, as well as a theoretical basis for conducting more in-depth scientific
research on the nature of domain concepts and relationships between them.
These models in the form of concept and mind maps, UML class and entity rela-
tion diagrams and others are actively used for the knowledge base engineering
at the acquisition and structuring stages. The conceptual modeling results, on
the one hand, contain special knowledge that can be used for automated source
codes generation, on the other hand, they are a convenient and understandable
way for representation of the domain-specific knowledge.
2 Related Works
Spreadsheets are a common way for representing information, and they are
widely used in documents and web in HTML, PDF, EXCEL, CSV formats. A
big volume and structure properties of such spreadsheets make them a valuable
source in data science and business intelligence applications. However, they are
Conceptual Model Engineering for ISI Based on Spreadsheet Data Analysis 53
3 The Methodology
We propose to use the TANGO approach [23] as a methodological basis and
qualitatively redefine the main stages to support conceptual model engineer-
ing based on the analysis and transformation of spreadsheet data from the ISI
reports. Despite some ideological similarity between our approach and [23], it is
necessary to highlight its novelty, such as: the CSV files processing; an ability
to handle any spreadsheet layouts (due to the use of CRL); focus on the design-
ing conceptual models describing the ISI tasks; integration with knowledge base
design systems (PKBD).
Fig. 1. Diagram of the workflow for analysis and transformation of spreadsheet data
from ISI reports
56 N. O. Dorodnykh et al.
In our case, all tables can be separated into two types by their layout forms.
Form 1. The figure below illustrates an arbitrary table (left) as an example
of the “Form 1” being used in ISI reports. In the figure (right), you can also see
a corresponding relational table in the canonicalized form which is generated as
a result of the table transformation.
Fig. 2. Scheme of the “Form 1” table recognition and transforming them to the canon-
icalized form
The tables of this form extracted from ISI reports satisfy the following
assumptions:
1. There is a corner cell located on the 1st column and 1st row. The bottom
border of this corner cell is also the bottom border of the head part of a table.
Its right border is also the right border of the stub part of the table.
2. Any cell located in the head part can contain only one “column” label (e.g.
h1, h2,..., h9 in the figure above).
3. The labels originated from the head part can be read as paths of parent-child
relationships (e.g. h2|h3 or h8|h9 in the figure above). The cell of a child label
is nested by columns in the cell of the corresponding parent label (e.g. h4 is
the child of h2).
4. Any path of column labels belongs to the undefined category HEAD.
5. Any cell located in the stub part of a table can contain only one “row” label
(e.g. s1, s2, ..., s5 in the figure above).
6. The labels originated from the stub part can be read as paths of parent-child
relationships (e.g. s3|s4 or s3|s5 in the figure above). The cell of a child label
Conceptual Model Engineering for ISI Based on Spreadsheet Data Analysis 57
is nested by rows in the cell of the corresponding parent label (e.g. h4 is the
child of h2). Moreover, only two consecutive columns constitute the stub part.
7. Any path of raw labels belongs to the named category defined by a value of
the corner cell (e.g. S in the figure above).
8. Any cell located in the body part of a table (i.e. under the head and right the
stub) can contain only one entry (e.g. d1, d2,..., d17 in the figure above). A
merged cell can be considered as a set of tiles split by rows (e.g. d16 in the
figure above). Each tile can be considered as a separate cell with a duplicate
of entry presented in the corresponding merged cell.
9. Each entry is addressed by one path of column labels and one path of row
labels (e.g. d17 is addressed by two paths of labels: h8|h9 and s3|s5).
The assumptions listed above allowed us to develop two rulesets for trans-
forming tables for both arbitrary forms to the canonicalized form.
CRL transformation rules were developed for dedicated layouts (see Fig. 2).
For example, for “Form 1” :
1. Generate and categorize “column” labels from cells located in the head part
of a table.
2. Associate child “column” labels with parent ones.
3. Generate “row” labels from cells located in the stub part of a table.
4. Associate child “row” labels with parent ones.
5. Split merged cells located in the body part into tiles.
6. Generate entries from cells located in the body part.
7. Associate entries with “column” and “row” labels.
Fig. 3. Scheme of the “Form 2” table recognition and transforming them to the canon-
icalized form
This form is a simple list of pairs, where keys (labels) are placed in the left
column (e.g. l1,..., l7 in the figure above) and their values (entries) are placed in
the right column (e.g. e1,..., e7 in the figure above).
58 N. O. Dorodnykh et al.
Fig. 4. Generating conceptual model fragments for the “Form 1” table (structures 1
and 2)
Fig. 5. Generating conceptual model fragments for the “Form 1” table (structure 3)
Fig. 6. Generating conceptual model fragments for the “Form 1” table (structure 4)
1. Classes with equal names are merged (a common list of attributes is formed).
2. When the names of a class and attribute are equal, the attribute of the same
name is removed; the corresponding relationship between classes is created.
Manual merging and separation operations are performed by the user using
PKBD.
Step 5. Loading conceptual model. The obtained complete conceptual
model can be used for the knowledge base source codes generation in the CLIPS
(C Language Integrated Production System) format. This step is an important
task, but it is not a purpose of this paper. More information about this problem
can be found in [2].
Steps 3–5 are implemented as an extension module for the software of proto-
typing rule-based expert systems – Personal Knowledge Base Designer (PKBD)
[2]. PKBD provides serializing conceptual model fragments in different formats,
in particular, in the form of UML class diagrams. The obtained class dia-
gram fragments are presented and stored in XMI (XML Metadata Interchange)
format.
3.2 Example
Verification of the approach proposed was carried out on the data set formed
by the analysis of the ISI petrochemical facilities reports. The data set includes
216 spreadsheets extracted from six reports. TabbyXL successfully processed all
tables from this data set. TabbyXL experiment results on precision and recall
for other data sets, in particular, TANGO [23] are presented in [4].
PKBD was used to transform canonical tables. 92 classes and 20 relationships
were allocated. Resulted fragments (classes and relationships) were validated
Conceptual Model Engineering for ISI Based on Spreadsheet Data Analysis 61
by experts and compared with models obtained earlier [24] when performing
research projects with the Irkutsk research and design institute of chemical and
petrochemical engineering (IrkutskNIIHimmash). 15 classes from the extracted
set were used for further processing.
A qualitative comparison of approaches was also carried out (Table 1).
The results obtained show the prospects of using our approach to support
the conceptual modeling for prototyping knowledge bases, developing software
and ontologies [1–3].
The scientific novelty of the approach proposed is its universality: TabbyXL
provides analysis and interpretation of arbitrary tables by using user-defined
properties of their layout, style, and text content; PKBD provides transformation
of obtained canonical tables into conceptual model fragments in the form of UML
class diagrams and its aggregation into a complete domain model. The resulting
domain model can be then transformed into the CLIPS format. These features
provide an opportunity to transfer the approach proposed to another subject
domain.
62 N. O. Dorodnykh et al.
References
1. Berman, A.F., Nikolaichuk, O.A., Yurin, A.Y., Kuznetsov, K.A.: Support of
decision-making based on a production approach in the performance of an indus-
trial safety review. Chem. Petrol. Eng. 50(11–12), 730–738 (2015). https://doi.
org/10.1007/s10556-015-9970-x
2. Yurin, A.Y., Dorodnykh, N.O., Nikolaychuk, O.A., Grishenko, M.A.: Prototyping
rule-based expert systems with the aid of model transformations. J. Comput. Sci.
14(5), 680–698 (2018). https://doi.org/10.3844/jcssp.2018.680.698
3. TabbyXL wiki. https://github.com/tabbydoc/tabbyxl/wiki/Industrial-Safety-
Inspection. Accessed 13 Sept 2019
4. Shigarov, A.O., Mikhailov, A.A.: Rule-based spreadsheet data transformation from
arbitrary to relational tables. Inf. Syst. 71, 123–136 (2017). https://doi.org/10.
1016/j.is.2017.08.004
5. Mauro, N., Esposito, F., Ferilli, S.: Finding critical cells in web tables with SRL:
trying to uncover the devil’s tease. In: 12th International Conference on Document
Analysis and Recognition, pp. 882–886 (2013). https://doi.org/10.1109/ICDAR.
2013.180
64 N. O. Dorodnykh et al.
6. Adelfio, M., Samet, H.: Schema extraction for tabular data on the web. VLDB
Endowment 6(6), 421–432 (2013). https://doi.org/10.14778/2536336.2536343
7. Chen, Z., Cafarella, M.: Integrating spreadsheet data via accurate and low-effort
extraction. In: 20th ACM SIGKDD International Conference Knowledge Discovery
and Data Mining, pp. 1126–1135 (2014). https://doi.org/10.1145/2623330.2623617
8. Embley, D.W., Krishnamoorthy, M.S., Nagy, G., Seth, S.: Converting heteroge-
neous statistical tables on the web to searchable databases. IJDAR 19(2), 119–138
(2016). https://doi.org/10.1007/s10032-016-0259-1
9. Rastan, R., Paik, H., Shepherd, J., Haller, A.: Automated table understanding
using stub patterns. In: Navathe, S.B., Wu, W., Shekhar, S., Du, X., Wang, X.S.,
Xiong, H. (eds.) DASFAA 2016. LNCS, vol. 9642, pp. 533–548. Springer, Cham
(2016). https://doi.org/10.1007/978-3-319-32025-0 33
10. Goto, K., Ohta, Yu., Inakoshi, H., Yugami, N.: Extraction algorithms for hierarchi-
cal header structures from spreadsheets. In: Workshops of the EDBT/ICDT 2016
Joint Conference, vol. 1558, pp. 1–6 (2016)
11. Nagy, G., Seth, S.: Table headers: An entrance to the data mine. In: 23rd Interna-
tional Conference Pattern Recognition, pp. 4065–4070 (2016). https://doi.org/10.
1109/ICPR.2016.7900270
12. Koci, E., Thiele, M., Romero, O., Lehner, W.: A machine learning approach for
layout inference in spreadsheets. In: Proceedings of 8th International Joint Confer-
ence Knowledge Discovery, Knowledge Engineering and Knowledge Management,
pp. 77–88 (2016). https://doi.org/10.5220/0006052200770088
13. de Vos, M., Wielemaker, J., Rijgersberg, H., Schreiber, G., Wielinga, B., Top, J.:
Combining information on structure and content to automatically annotate natural
science spreadsheets. Int. J. Hum.-Comput. Stud. 130, 63–76 (2017). https://doi.
org/10.1016/j.ijhcs.2017.02.006
14. Kandel, S., Paepcke, A., Hellerstein, J., Heer, J.: Wrangler: interactive visual spec-
ification of data transformation scripts. In: SIGCHI Conference on Human Fac-
tors in Computing Systems, 3363–3372 (2011). https://doi.org/10.1145/1978942.
1979444
15. Hung, V., Benatallah, B., Saint-Paul, R.: Spreadsheet-based complex data trans-
formation. In: 20th ACM International Conference on Information and Knowledge
Management, pp. 1749–1754 (2011). https://doi.org/10.1145/2063576.2063829
16. Harris, W., Gulwani, S.: Spreadsheet table transformations from examples. ACM
SIGPLAN Notices 46(6), 317–328 (2011). https://doi.org/10.1145/1993316.
1993536
17. Astrakhantsev, N., Turdakov, D., Vassilieva, N.: Semi-automatic data extraction
from tables. In: Proceedings 15th All-Russian Conference Digital Libraries, pp.
14–20 (2013)
18. Barowy, D.W., Gulwani, S., Hart, T., Zorn, B.: FlashRelate: extracting relational
data from semi-structured spreadsheets using examples. ACM SIGPLAN Notices
50(6), 218–228 (2015). https://doi.org/10.1145/2813885.2737952
19. Cunha, J., Erwig, M., Mendes, M., Saraiva, J.: Model inference for spread-
sheets. Autom. Softw. Eng. 23, 361–392 (2016). https://doi.org/10.1007/s10515-
014-0167-x
20. Jin, Z., Anderson, M.R., Cafarella, M., Jagadish, H.V.: Foofah: Transforming data
by example. In: ACM International Conference Management of Data, pp. 683–698
(2017). https://doi.org/10.1145/3035918.3064034
Conceptual Model Engineering for ISI Based on Spreadsheet Data Analysis 65
21. Hermans, F., Pinzger, M., van Deursen, A.: Automatically extracting class
diagrams from spreadsheets. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS,
vol. 6183, pp. 52–75. Springer, Heidelberg (2010). https://doi.org/10.1007/978-
3-642-14107-2 4
22. Amalfitano, D., Fasolino, A.R., Tramontana, P., De Simone, V., Di Mare, G.,
Scala, S.: A reverse engineering process for inferring data models from spreadsheet-
based information systems: an automotive industrial experience. In: Helfert, M.,
Holzinger, A., Belo, O., Francalanci, C. (eds.) DATA 2014. CCIS, vol. 178, pp.
136–153. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25936-9 9
23. Tijerino, Y.A., Embley, D.W., Lonsdale, D.W., Ding, Y., Nagy, G.: Towards ontol-
ogy generation from tables. World Wide Web Internet Web Inf. Syst. 8(8), 261–285
(2005). https://doi.org/10.1007/s11280-005-0360-8
24. Yurin A.Y., Dorodnykh N.O., Nikolaychuk O.A., Berman A.F., Pavlov A.I.: ISI
models, mendeley data, v1 (2019). https://doi.org/10.17632/f9h2t766tk.1
Data Mining
Nonlinearity Estimation of Digital Signals
Kiril Alexiev(B)
1 Introduction
In a seminal article in 2004 Simon Haykin defined the main problems in signal
processing for the 21-st century. He stated that the main difference in signal pro-
cessing will be in the processing of non-linear, non-Gaussian and non-stationary
signals [1]. Other scientists also spoke for the curse of the three “non”. How-
ever, it is clear that the modern signal processing is concerned about these three
“non”. Why do these problems attract the attention of the specialists in the sig-
nal processing? This is primarily due to the fact that in real life, the systems we
observe, evaluate, or control are most likely nonlinear, non-Gaussian, and non-
stationary. Therefore, solving these types of problems is possible through the use
of new methods and algorithms whose implementation is feasible, thanks to the
constantly increasing power of the modern computers. To solve the problems,
mentioned above, it is required to be designed:
– Correct mathematical model of the observed dynamic process or dynamic
system;
– Correct statistical description of the received signals and the noise;
– Reflect the changes in statistics over time.
This article is limited only to considering primarily nonlinearities in the
behavior of the observed system or process. The task of estimating nonlinearities
can be interpreted in various ways.
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 69–80, 2020.
https://doi.org/10.1007/978-3-030-39237-6_5
70 K. Alexiev
yu = η(ξu , θ) + u , u = 1, . . . , n, (1)
where yu is a set of observations, η(ξu , θ) is the set of corresponding theoretical
mean values, u is random error vector. We are looking for θ parameters which
simultaneously satisfy two conditions:
n
S(θ) = {yu − η(ξu , θ)}2 (2)
u=1
The proposed confidence regions are defined for a set of values of θ, holding
the difference S(θ) − S(θ̃) less than a value. Desoer and Wang proposed the con-
cept of nonlinearity measure in 1980 [11]. According this article, the nonlinearity
measure of a nonlinear function N over u ∈ V with respect to a bounded time
interval [0, T ] is the non-negative real number defined by:
where L is the best linear approximation of N over V . The best linear approxi-
mation L of a nonlinear function N minimizes the mean square error:
1 τ
lim [Nu (t) − Lu (t)]2 dt. (4)
τ →∞ τ 0
|Nu − Lu |T
δT (N, V ) = inf sup (5)
u∈V |u|T
In 1980 Bates and Watts developed new measures of nonlinearity based on
the geometric concept of curvature - the maximum curvature measure [12]. A
quantitative measure of nonlinearity was proposed in 1993 in the next form [13]:
xn
x1
[f (x) − ax − b]2 dx
L= (6)
xn − x1
Here the parameters a and b must be chosen in order to minimize L. The val-
ues x1 and xn determine the interval of the argument change. Tugnait proposed
a novel approach for linearity testing of stationary time series. It was based on
data power spectrum estimate [14]. Similar approach is proposed in [17]. Frank
72 K. Alexiev
|Nu − Lu |T
δT (N, V ) = inf sup (7)
u∈V |Lu |T
In [18] a wonderful overview of the methods from correlation analysis, har-
monic analysis and higher order spectrum analysis for nonlinearity estimation
was written. Each described method has been analyzed for its advantages and
disadvantages. The authors proposed also modifications of the known metrics
and some new indices were introduced. Their analysis begins with cross correla-
tion function in frequency with Haber metrics [19]:
|φyu (jω)|2
N LI1 = 1 − max . (8)
ω φuu (jω)φyy (jω)
Here φ.. (jω) are the auto- and cross-spectral densities associated with the
system input/output data. The measure has to be zero for linear system. The
corresponding measure in time domain is [19]:
N −1
[ r=0 φyu (r)]2
N LI4 = 1 − N −1 N −1 . (9)
r=0 φuu (r) r=0 φyy (r)
Particularly valuable in their analysis is that they explore different
approaches to noise vulnerability.
Smith used the mutual information in measuring of the total dependence
[20]. In a recent paper Liu and Li considered especially measuring the degree of
nonlinearity for estimation [21]. They proposed a more general definition of the
measure of the signal nonlinearity, based on the distance between the nonlinear
function and linearity. They formulated the minimization task as follows:
min E[||g(x, v) − (Ax + b)||22 ] + min E[||w||22 ] − 2E[g(x, v) w] . (10)
A,b ψ(w,v)
The signal has also two additional segments - the first part of signal before
the first found peak and the last one - after the last peak which are also monotone
functions. The nonlinearity will be estimated on every segment.
These basics are embedded in the newly proposed nonlinearity estimation
algorithm.
The basic processing steps of the proposed algorithm are shown on Fig. 1.
The first step of the algorithm consists of preliminary denoising and resam-
pling. The importance of this step arises when the noise in the system is stronger.
If the noise level is high enough the extrema detection algorithm may detect
74 K. Alexiev
2. Extrema detection
3. Segmentation
much more signal extrema. Something more, the algorithm could not localize
accurately the signal extrema. In order to assure correct detection of the fast
system changes, the electronic designers select suitable signal sampling rate,
guaranteeing a full representation of the observed system (Nyquist - Kotelnikov
theorem states that for a particular signal, the sampling rate must be no less
than twice the frequency of the composite in the highest frequency band). If the
fast processes predominate, it is possible that some segments may contain not
big enough number of measurements. In these cases, a resampling is required.
It is realized with two different interpolating functions depending on the type of
signal being processed. For a typical analogous signal the spline approximation
is used. For a pulse train signal the linear interpolation is more suitable to be
applied.
On the second step an extrema detection algorithm finds the signal extrema.
All maxima and minima are selected and ordered. The first and the last signal
measurements are added to them. All these points are marked on the signal.
Based on extrema points the segments are determined on the third step.
The next three steps are repeated for every detected segment.
On the fourth step a linear interpolation is realized. We have already pos-
tulated that the function corresponding to the measurements in each segment
is monotonic. To maintain smooth transitions from one segment to another and
in order to preserve function continuity, the linear interpolation is not based on
linear regression analysis. A simplified method is used to draw a straight line
through the end points of the segment. As a result of this interpolation, the
transition points between the segments are saved and the computational cost
is significantly reduced. Naturally, this is at the expense of deterioration the
interpolation quality (the interpolation error increases).
On the fifth step the signal in each segment is detrended by subtracting the
corresponding interpolated values from the signal measurements. As a result,
the detrended segment signal has null values in its first and last points.
Nonlinearity Estimation of Digital Signals 75
The last step is devoted on error estimation. Two different measures are
used for error estimation. The first one is based on Eq. (3). We are looking for
maximum deviation of the detrended signal on the segment. This metric is an
absolute one and it does not depend on the length of the segment. The second
measure is based on Eq. (7). It is normalized to the length of the segment and
shows the deviation of the error per unit length of the segment.
The received error measure compares with a threshold. If it surpasses the
threshold, the error signal goes to the step two for extrema detection. If the
error is small enough, the algorithm finishes its work for this segment.
-5
0 1 2 3 4 5 6 7
These steps are shown on Fig. 2. On the last graph on this figure the non-
linearity estimate is visualized with blue ink (points) above the signal (with red
ink). The results are received using 12 bits ADC (analog-to-digital converter),
limiting the maximal interpolation accuracy. The qualitative description of the
nonlinearity measure is given by the density of points above the signal. On these
parts of signal, where the points are rare, the nonlinearity is low. The parts of
signal with dense set of points have bigger nonlinearity. The quantitative nonlin-
earity measures can be expressed by the distances between neighboring points,
their density for a chosen part of the signal, etc.
The idea of the proposed algorithm is similar in some sense to the so called
polylines simplification algorithms. These algorithms approximate a curve by
line segments. They use different approaches and heuristics in order to minimize
the number of linear segments while maintaining a given level of approximation
accuracy. The most popular between them are the algorithm like Ramer-Douglas-
Peucker, Visvalingam-Whyatt, Reumann-Witkam, Zhao-Saalfeld, Opheim sim-
plification algorithm, Lang simplification algorithm, etc. [22]. The newly
76 K. Alexiev
4 MATLAB Realization
The recursive procedure detects the signal extrema. In the set of signal
extrema the first and the last signal measurements are also included. Then the
signal is segmented. In a cycle for each segment a linear interpolation is fulfilled.
The signal points are compared with the interpolated ones and an estimate of
interpolation error is received. If the interpolation error is smaller than a thresh-
old, the segment is regarded linear and its processing finishes. If the error is
greater than the threshold, the procedure calls itself in order to treat this seg-
ment further. When the procedure finishes its work it collects the border points.
Their density on the signal serves as indicator for nonlinearity of the observed
signal.
Nonlinearity Estimation of Digital Signals 77
5 Experimental Results
The new algorithm is applied to several demonstrative signals of diverse types
(Fig. 5). The first signal is a sine function. The segments’ boundary points, used
for linear approximation are placed on signal curve and additionally are depicted
on the top of drawing because they play role of nonlinearity indicator. The
density points out the local function nonlinearity. The density grows up near to
the extrema and diminishes on the signal slopes. It is important to note, that
the density depends on the approximation accuracy. On the cited drawing the
chosen accuracy (very low) enhances the visualization of different densities.
On the next demonstrative example a pulse train is analyzed. This function
is continuous, but not differentiable. Due to its linearity the segments’ boundary
points are placed only on the transition points from one state of the signal to
another. Something more, due to the bigger approximation error difference (sum)
in neighboring segments, it is very easy to detect the non differentiable points.
In this way the system model and the filtering algorithms could be prevented
from divergence.
The last example concerns processing of real ECG signal. The ECG signal
characterizes with both type of features - smooth parts and sharp peaks. This
sophisticated example demonstrates the capabilities of the proposed nonlinearity
estimator. The nonlinearity indicator successfully outlines the largest nonlinear-
ities, as well as the segments with smooth behavior.
78 K. Alexiev
10
9
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
10
9
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
Fig. 6. Demonstration examples - sine, pulse train, ECG signal, second threshold
Summarizing the results of the demonstration examples, we can say that the
proposed algorithm successfully handles different types of signals when evalu-
ating their nonlinearity. It gives a local estimate of the nonlinearity at a given
point of the signal or an interval estimate of nonlinearity.
The next Fig. 6 displays the results from the same examples, when the second
threshold is applied. A careful comparison of the results of the last two figures
shows that the application of the second threshold leads to more precisely repro-
duction of the nonlinearities.
Nonlinearity Estimation of Digital Signals 79
6 Conclusions
In this article a new algorithm for nonlinearity estimation is proposed. Four basic
assumptions are used in developing:
References
1. Haykin, S.: Signal processing in a nonlinear, nongaussian, and nonstationary world.
In: Chollet, G., Esposito, A., Faundez-Zanuy, M., Marinaro, M. (eds.) NN 2004.
LNCS (LNAI), vol. 3445, pp. 43–53. Springer, Heidelberg (2005). https://doi.org/
10.1007/11520153 3
2. http://www.17centurymaths.com/contents/taylorscontents.html
3. Xiong, X.Y.Z., Jiang, L.J., Schutt-Aine, J.E., Chew, W.C.: Volterra series-
based time-domain macromodeling of nonlinear circuits. IEEE Trans. Compon.
Packag. Manuf. Technol. 7(1), 39–49 (2017). https://doi.org/10.1109/TCPMT.
2016.2627601
4. Roweis, S.T., Ghahramani, Z.: Learning nonlinear dynamical system using
the expectation-maximization algorithm. In Haykin, S. (ed.) Kalman Filter-
ing and Neural Networks, First published: 01 October 2001. Wiley, Hobo-
ken (2001). https://doi.org/10.1002/0471221546.ch6, https://cs.nyu.edu/∼roweis/
papers/nlds.pdf
5. Bar-Shalom, Y., Forthmann, T.: Tracking and Data Association. Academic Press,
San Diego (1988)
6. Bar-Shalom, Y. (ed.): Multitarget-Multisensor Tracking: Advanced Applications.
Norwood, Chicago (1990)
7. Bar-Shalom, Y., Li, X.R.: Multitarget-Multisensor Tracking: Principles and Tech-
niques. Artech House, Boston (1993)
80 K. Alexiev
1 Introduction
A 2013 report from the Pew Research Center shows that 73% of US people use
the Internet, and 71% of them use the Internet to search health information [9].
It is a common activity for consumers to use the World Wide Web as a source
for health information and general search engines are popularly used with this
goal.
However, despite the popularity of consumer health search in daily activity
and its topic interest in the Information Retrieval (IR) research community, the
development of search technologies remain challenging in the area of Consumer
Health Information Retrieval (CHIR) [10]. The methodologies and techniques
applied are still far from being effective in addressing complex consumer health
queries [10,35]. Access mechanisms for factual health information search have
developed greatly and it is easy to get an answer to ‘what is gout?’ or ‘what
are the symptoms of gout?’; nevertheless, for complex health searches (like
‘does daily aspirin therapy prevent heart attack?’), which do not have
a single definitive answer, it is still indefinable.
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 81–93, 2020.
https://doi.org/10.1007/978-3-030-39237-6_6
82 H. Yang and T. Gonçalves
During the past years, Learning to Rank (L2R) techniques, which apply
machine learning methods on ranking problems, have been successfully used to
improve retrieval of Web pages [5,15,27]. Likewise, L2R has also been studied
in the context of consumer health search. This approach has been recently used
to promote understandability in medical health queries [19] and to train models
using syntactic and semantic features [25].
Creating a feature list is an important task in applying the L2R approach.
Traditionally, explored potential features are defined and combined to create a
feature list which is used to train a L2R model afterwards. A vast amount of
research has been done into crafting new features, but this is a costly job in
Learning to Rank. Compared with this research line that aims to find new good
features, little work has been done on studying how to make good use of the
explored features (like, for instance, the classification of features based on field
information).
Since a document field (e.g.: title, H1 or body) contributes differently to the
document, we assume that:
– Raw combination of features extracted from different fields into one single
feature list will make the features blur;
– An aggregated model over a set of pre-trained field-based models (a field-base
model is a model trained using single field features) is more effective than a
model trained with all features from different fields.
2 Related Work
In this section, previous work on Learning to Rank in health search domain are
first reviewed; then, the rank aggregation techniques are discussed.
Aggregation on Learning to Rank for CHIR 83
not quite clear and more research work is needed to prove its usefulness in this
specific IR area.
Our research is based on traditional L2R and the judgments are still heavily
depending on explicit medical experts.
2
Sort-based combination is also known as rank-based combination in the literature.
Aggregation on Learning to Rank for CHIR 85
Following this work, Lee [14] further observed that CombMNZ worked best
among all these combination techniques, then CombSUM; CombMIN and Comb-
MAX perform the worst. Vogt and Cottrell [30] thoroughly analyzed these meth-
ods by Fox and Shaw [8] using a linear combination model for information
retrieval systems; in their work, the linear combination model combined results
from multiple IR systems and a weighted sum of scores was used.
Later these strategies were extended and applied in meta-search aiming
to combine the ranking lists from multiple search engines. Montague and
Aslam [18] empirically stated that they improved the performance of meta-
search algorithms using CombMNZ and CombSUM. They improved these strate-
gies by using more statistics than max and min in the normalization scheme.
Manmatha and Feng [17] used a model of score distributions for combining
results from various search engines to produce a meta-search engine.
Work by Xia et al. [34] adopted CombSUM CombMNZ and CombANZ in
their work for cross-language bug localization, where their methods combined
the top-100 files from each ranked lists into one list. Kuzi et al. [13] proposed
to use combination strategies on fusion-based term scoring. Resulting term lists
were fused and CombSUM, CombMNZ and CombMAX were mainly used in
their work. These techniques were used for words selecting and applied on word
embedding based query expansion application. The experiments tested on the
TREC dataset proved the effectiveness of using these techniques in word scoring
and selecting.
Vogt and Cottrell [29,30] pointed out that aggregation allowed a significant
reduction in the number of features and enumerated three beneficial effects of
combining multiple models:
– The Skimming Effect. Skim means only top-ranked items are selected.
Documents are represented by different retrieval methods and thus retrieve
different relevant items. A combination model taking the top-ranked items
from each of the retrieval approaches can increase recall as well as precision.
– The Chorus Effect. A number of retrieval approaches suggest that an item
is relevant to a query provides stronger evidence for relevance than that of a
single approach. A combination model can explore this effect when ranking
documents in the intersection of the retrieved lists higher.
– The Dark Horse Effect. Compared to other retrieval approaches, a retrieval
approach may produce effective estimates of relevance for some documents.
3 Proposal
To prove the assumptions put forward in Sect. 1, we propose a two-stage L2R
framework where aggregation is applied on a set of L2R models:
– During the first stage, the defined features are grouped and a set of field-based
L2R models is generated; each model is trained using single field features.
Meanwhile, following the traditional way, one L2R model is trained using all
features together;
86 H. Yang and T. Gonçalves
– During the second stage, the scores obtained from the pre-trained field-based
models are aggregated employing various aggregation strategies.
Table 2. Ids of the features extracted and grouped for L2R processing.
3
These are the texts that do not belong to Title or H1.
4
We regard the full text as one field information as well.
Aggregation on Learning to Rank for CHIR 87
4 Experiments
This section presents the experiments done. It introduces the used data collec-
tions and the chosen experimental setup and describes the baselines and the
developed rankers.
CLEF’2018 Collection. his collection was generated following the same pro-
cedure as CLEF’2016−2017 collection. It contains 5,535,120 web pages obtained
from the CommonCrawl7 as the dataset, 50 medical queries issued by the general
public and gathered from Health on the Net (HON) search engine8 and 18,763
topic-documents pairs for the assessment.
5
https://www.reddit.com/r/AskDocs/.
6
http://lemurproject.org/clueweb12/.
7
http://commoncrawl.org.
8
https://www.hon.ch/.
88 H. Yang and T. Gonçalves
We used the learning to rank framework provided in Terrier 4.29 with Jforest and
LambdaMART [16]. All rankers were trained and tuned with a separate valida-
tion set from CLEF’2016−2017 collection and tested on CLEF’2018 collection.
The Okapi BM25 weighting model was used with all the parameters set to default
values. All queries were pre-processed by lower-casing characters, removing stop
words and applying stemming with the Porter Stemmer. The default stop word
list available in the Terrier platform was used.
The performance measures adopted in this work include three important
and classically used ones in IR: mean average precision (MAP), the normalized
discounted cumulative gain at the top 10 retrieved documents (NDCG@10) [11]
and precision at the top 10 retrieved documents (P@10).
4.3 Baselines
Six baselines were built using three state-of-the-art information retrieval models
in the Terrier platform: DirichletLM, TF-IDF and BM25. We built the baselines
with and without using query expansion techniques. Pseudo relevance feedback
was used for the query expansion and the top 10 terms from the top 3 documents
in the retrieved ranked list were selected to expand the original query. The
seventh baseline BaseBing was provided by organizers of the CLEF eHealth
2016 IR task.
Table 4 describes the rankers built for our experiments. First, we trained 4 field-
based L2R rankers using CLEF’2016−2017 collection: RT , RH , RE and RF , each
trained using features from a specific field as presented in Subsect. 3.1. RA was
built following the traditional way and using all 36 features. Next, these field-
based L2R rankers were used to perform retrieval on CLEF’2018 collection and
the scores returned from these rankers were aggregated following the strategies
presented in Subsect. 3.2. Three groups of aggregated rankers were generated:
RT H , RT HE and RT HEF . Each aggregated ranker group contained 6 rankers
each using a different aggregation strategy, totalling 18 aggregated rankers.
5 Results
In this section, we first compare the performance among all built rankers and
with the baselines. Then, we analyze the effect of how different aggregation
methods vary aggregation performance.
9
http://terrier.org/.
Aggregation on Learning to Rank for CHIR 89
Ranker Description
RT L2R model trained with Title features
RH L2R model trained with H1 features
RE L2R model trained with Else features
RF L2R model trained with full doc features
RA L2R model trained with all 36 features
RT H Aggregation on RT and RH
RT HE Aggregation on RT , RH and RE
RT HEF Aggregation on RT , RH , RE and RF
rankers RT H , RT HE and RT HEF . The results were compared with the strongest
baseline TF-IDFnoqe and the baseline using same experimental setting as the
rankers (BM25qe ).
As it can be observed, and for all three evaluation measures, CombMED
and CombSUM performed the same and achieved the best scores. Considering
P@10 only, we can observe that the CombMIN strategy performed the worst,
underperforming the baseline BM25qe in all three rankers; for NDCG@10 we can
see that all rankers using these aggregation methods were able to outperform
the baseline BM25qe . Finally, for MAP measure, CombANZ and CombMNZ
performed almost the same and far worse than the baseline; CombMAX achieved
almost similar results as CombMED and CombSUM strategies.
than the L2R model using all features; this shows that feature grouping can be
an effective technique for L2R.
As a future work, it would be interesting to investigate the approach with
other data collections to test how its scalability. It would also be interesting to
include other features and test the proposed approaches with those features in
the future. For example, Header and Meta field information could be explored.
Moreover, it would also be interesting to group features using other categories
besides the fields of the document.
References
1. Abacha, A.B.: NLM NIH at TREC 2016 clinical decision support track. In: TREC
(2016)
2. Ai, Q., Bi, K., Luo, C., Guo, J., Croft, W.B.: Unbiased learning to rank with
unbiased propensity estimation. arXiv preprint arXiv:1804.05938 (2018)
3. Amati, G.: Probabilistic models for information retrieval based on divergence from
randomness. Ph.D. thesis, University of Glasgow, UK (2003)
92 H. Yang and T. Gonçalves
4. Aslam, J.A., Montague, M.: Models for metasearch. In: Proceedings of the 24th
Annual International ACM SIGIR Conference on Research and Development in
Information Retrieval, pp. 276–284. ACM (2001)
5. Chapelle, O., Chang, Y.: Yahoo! learning to rank challenge overview. In: Proceed-
ings of the Learning to Rank Challenge, pp. 1–24 (2011)
6. Deng, K., Han, S., Li, K.J., Liu, J.S.: Bayesian aggregation of order-based rank
data. J. Am. Stat. Assoc. 109(507), 1023–1039 (2014)
7. Dwork, C., Kumar, R., Naor, M., Sivakumar, D.: Rank aggregation methods for
the web. In: Proceedings of the 10th International Conference on World Wide Web,
pp. 613–622. ACM (2001)
8. Fox, E.A., Shaw, J.A.: Combination of multiple searches. NIST special publication
SP 243 (1994)
9. Fox, S., Duggan, M.: Health online 2013. Pew Internet & American Life Project,
Washington, DC (2013)
10. Goeuriot, L., Jones, G.J., Kelly, L., Müller, H., Zobel, J.: Medical information
retrieval: introduction to the special issue. Inf. Retr. J. 1(19), 1–5 (2016)
11. Järvelin, K., Kekäläinen, J.: Cumulated gain-based evaluation of IR techniques.
ACM Trans. Inf. Syst. 20(4), 422–446 (2002)
12. Jimmy, Zuccon, G., Palotti, J.: Overview of the CLEF 2018 consumer health search
task. In: Working Notes of Conference and Labs of the Evaluation (CLEF) Forum.
CEUR Workshop Proceedings (2018)
13. Kuzi, S., Shtok, A., Kurland, O.: Query expansion using word embeddings. In:
Proceedings of the 25th ACM International on Conference on Information and
Knowledge Management, pp. 1929–1932. ACM (2016)
14. Lee, J.H.: Analyses of multiple evidence combination. In: ACM SIGIR Forum, vol.
31-SI, pp. 267–276. ACM (1997)
15. Liu, T.Y., Xu, J., Qin, T., Xiong, W., Li, H.: LETOR: benchmark dataset for
research on learning to rank for information retrieval. In: Proceedings of SIGIR
2007 Workshop on Learning to Rank for Information Retrieval, vol. 310. ACM,
Amsterdam (2007)
16. Macdonald, C., Santos, R.L., Ounis, I., He, B.: About learning models with multiple
query-dependent features. ACM Trans. Inf. Syst. (TOIS) 31(3), 11 (2013)
17. Manmatha, R., Rath, T., Feng, F.: Modeling score distributions for combining
the outputs of search engines. In: Proceedings of the 24th Annual International
ACM SIGIR Conference on Research and Development in Information Retrieval,
pp. 267–275. ACM (2001)
18. Montague, M., Aslam, J.A.: Relevance score normalization for metasearch. In:
Proceedings of the Tenth International Conference on Information and Knowledge
Management, pp. 427–433. ACM (2001)
19. Palotti, J., Goeuriot, L., Zuccon, G., Hanbury, A.: Ranking health web pages with
relevance and understandability. In: Proceedings of the 39th International ACM
SIGIR Conference on Research and Development in Information Retrieval, pp.
965–968. ACM (2016)
20. Palotti, J., Rekabsaz, N.: Exploring understandability features to personalize con-
sumer health search. In: CEUR-WS, Working Notes of CLEF 2017 - Conference
and Labs of the Evaluation Forum (2018)
21. Palotti, J., et al.: CLEF 2017 task overview: the IR task at the ehealth evaluation
lab. In: Working Notes of Conference and Labs of the Evaluation (CLEF) Forum.
CEUR Workshop Proceedings (2017)
22. Roberts, K., Simpson, M.S., Voorhees, E.M., Hersh, W.R.: Overview of the TREC
2015 clinical decision support track. In: TREC (2015)
Aggregation on Learning to Rank for CHIR 93
23. Scells, H., Zuccon, G., Deacon, A., Koopman, B.: QUT ielab at CLEF ehealth
2017 technology assisted reviews track: Initial experiments with learning to rank.
In: CEUR Workshop Proceedings: Working Notes of CLEF 2017: Conference and
Labs of the Evaluation Forum. vol. 1866, Paper-98. CEUR Workshop Proceedings
(2017)
24. Jo, S.-H., Lee, K.S.: CBNU at TREC 2016 clinical decision support track. In: Text
Retrieval Conference (TREC 2016) (2016)
25. Soldaini, L., Goharian, N.: Learning to rank for consumer health search: a semantic
approach. In: Jose, J.M., et al. (eds.) ECIR 2017. LNCS, vol. 10193, pp. 640–646.
Springer, Cham (2017). https://doi.org/10.1007/978-3-319-56608-5 60
26. Song, Y., He, Y., Hu, Q., He, L., Haacke, E.M.: ECNU at 2015 ehealth task 2:
user-centred health information retrieval. In: CLEF (Working Notes) (2015)
27. Tax, N., Bockting, S., Hiemstra, D.: A cross-benchmark comparison of 87 learning
to rank methods. Inf. Process. Manage. 51(6), 757–772 (2015)
28. Thuma, E., Anderson, G., Mosweunyane, G.: UBML participation to CLEF ehealth
IR challenge 2015: Task 2. In: CLEF (Working Notes) (2015)
29. Vogt, C.C., Cottrell, G.W.: Predicting the performance of linearly combined IR
systems. In: Proceedings of the 21st Annual International ACM SIGIR Conference
on Research and Development in Information Retrieval, pp. 190–196. ACM (1998)
30. Vogt, C.C., Cottrell, G.W.: Fusion via a linear combination of scores. Inf. Retrieval
1(3), 151–173 (1999)
31. Wang, H., Langley, R., Kim, S., McCord-Snook, E., Wang, H.: Efficient exploration
of gradient space for online learning to rank. arXiv preprint arXiv:1805.07317
(2018)
32. Wang, R., Lu, W., Ren, K.: WHUIRgroup at the CLEF 2016 ehealth lab task 3.
In: CLEF (Working Notes), pp. 193–197 (2016)
33. Wang, X., Bendersky, M., Metzler, D., Najork, M.: Learning to rank with selection
bias in personal search. In: Proceedings of the 39th International ACM SIGIR
Conference on Research and Development in Information Retrieval, pp. 115–124.
ACM (2016)
34. Xia, X., Lo, D., Wang, X., Zhang, C., Wang, X.: Cross-language bug localization.
In: Proceedings of the 22nd International Conference on Program Comprehension,
pp. 275–278. ACM (2014)
35. Yang, H., Goncalves, T.: Promoting understandability in consumer health informa-
tion search. In: Jose, J.M., et al. (eds.) ECIR 2017. LNCS, vol. 10193, pp. 727–734.
Springer, Cham (2017). https://doi.org/10.1007/978-3-319-56608-5 72
36. Zuccon, G., et al.: The IR task at the CLEF ehealth evaluation lab 2016: user-
centred health information retrieval. In: CLEF 2016-Conference and Labs of the
Evaluation Forum, vol. 1609, pp. 15–27 (2016)
Intelligent Systems for Decision Support
Intelligent System for Generation
and Evaluation of e-Learning Tests Using
Integer Programming
1 Introduction
The assessment as a tool for feedback about the acquired students’ knowledge
related to learning objectives plays the central role in the teaching and learning pro-
cess. The students’ knowledge can be evaluated considering theoretical knowledge and
practical skills [1]. The most common way to assess theoretically the learners’ progress
is via tests. Tests as a tool of verifying knowledge and subsequent evaluation are often
used not only in traditional training but also in various forms of e-learning. The new
e-learning challenges require the incorporation of modern technologies into business
intelligence tools to improve product quality and user satisfaction. Therefore, the cur-
rent trends in e-learning are focused not only on the e-learning content but they also
integrate some modules for code training [2] and different tools for testing the acquired
knowledge [3, 4].
It is shown that the students who use the tests have better performance compared
with those who do not use them and the result is 85.7% vs. 77.8% for the students who
used the tests [5]. The advance of ICT makes possible to use different types of questions
that could be easily checked and then evaluated, e.g. questions of multiple-choice type,
true-false questions, short-answer, essay, and questions provided by test banks [6]. Since
true-false questions provide 50% chance of guessing the right answer, multiple choice
ones are often preferred. The usage of alternatives through multiple choice questions has
some benefits for the learner. These tests give the opportunity to learn new information
from the test: for example, if the learner does not know the answer to the question and
cannot generate the exact answer but is able to justify the path to the knowledge-based
answer for other alternatives [7].
Apart from the traditional form of questions, the game-based quizzes have recently
become more interesting and popular. Gamification in e-learning provides better learning
experience and better learning environment, instant feedback and can be applied for most
learning needs. These advantages are proved by the results from peer and self-assessment
in the Moodle e-learning environment [8, 9]. It is shown that usage of JavaScript and
AJAX could successful implements distributed computing due to modern web browsers’
advantages [10]. To get feedback about the e-learning outcome a web-based examination
system is proposed [11]. In addition, another system for e-learning and online exam
management and evaluation is proposed [12]. It allows to automatically assessing essays
semantically, using pair-wise approach.
In contrast to the other approaches that are focused on the generation of the questions
[13], the proposed intelligent system emphasizes on the optimal selection of questions for
generation of tests with different level of complexity. A predefined number of questions
to choose from are needed to compose the tests. There are different models to imple-
ment such question selection. For example, the problem of test construction is formally
represented as an optimization problem with an objective function that could maximize
the amount of information in the test or minimize the amount of items in a test [14].
Due to the nature of the selection problems, the integer programming approach seems
to be the most suitable. The selection of questions for assembling the tests could be
viewed also as a multi-objective problem [15]. Independently from the type of questions
that will compose the test, each question should have predetermined level of difficulty.
The determination of the intervals for assessment the tests levels of difficulty is set by
the instructor who prepares the test taking into account the purpose of the test [16].
Considering this the current paper aims to propose an intelligent system for generation
and evaluation of e-learning tests using integer programming. The core of this system is
the formulation of mathematical models for generation of tests with more questions but
with lower degree of difficulty and for generation of tests with fewer questions but with
higher degree of difficulty.
The rest of this paper is structured as follows. In the next section, an algorithm
of an intelligent system for generation and evaluation of e-learning tests is presented.
The formulation of mathematical models based on integer programming for generating
and evaluating e-learning tests is described in Sect. 3. The case studies of the proposed
Intelligent System for Generation and Evaluation of e-Learning Tests 99
models are then presented in Sect. 4. Section 5 provides a comparative analysis for the
described models. Finally, the paper ends with concluding remarks in Sect. 6.
The proposed algorithm of intelligent system for generating and evaluating e-learning
tests with different levels of complexity is illustrated in Fig. 1.
Fig. 1. Algorithm of intelligent system for generating and evaluating e-learning tests.
In order to generate e-learning tests, the requirement is the existence of already formu-
lated questions. The type of questions – multiple-choice questions, true-false questions,
short-answer questions, etc. does not matter. There is a requirement for a questions set
and each of the questions should be evaluated toward its level of difficulty. When these
100 D. Borissova and D. Keremedchiev
two requirements are satisfied, the proposed intelligent system could be applied to gen-
erate and put in sequent order questions for an e-learning test used for evaluation. The set
of questions and their difficulty could be prepared in advance in a separate module. The
determination of the questions levels of difficulty is set by the instructor who prepares
the test [15].
Depending on the particular area of interest, each user should choose from the set of
different question databases within the interested domain/s. If the question data-bases
domains are already known, the intelligent system could start. The second stage of this
system allows generating the tests with different level of complexity. This can be done by
selection of the level of test complexity. Several levels of complexity could be formed that
correspond to different degrees of test difficulty. The six-point marking system seems
to be suitable for the purposes of knowledge assessment as a result of e-learning. There
are no obstacles to differentiating as many levels of the generated tests as needed.
The next important stage of this algorithm is the formulation of a mathematical model
for selection of questions that will compose the particular tests. This mathematical model
should guarantee that the selected questions will not be repeated within the generated
test. This means that the special case of 0–1 integer linear programming technique could
be best fitted. Once the questions that compose the test level are known, the user can
give his answers.
After the answers are given the system checks how many questions are answered
correctly. The next stage is to determine the scores for the test depending on the number
of obtained correct answers of the questions. The sum of the scores of the correct answers
is calculated by taking into account the questions difficulty determined in the first stage
of the proposed algorithm and correct answers. Then verification is needed to check
whether the correct answers calculated score sum matches the required score number
for the selected test level. If this is the case the algorithm ends, but if this is not the case
verification should be done. This verification checks whether the obtained scores from
the test are within acceptable range for another level of test complexity. If this is the
case the algorithm ends with a proposal for corresponding evaluation. When this is not
the case, the algorithm of the proposed intelligent system allows the user to select a new
test with less complexity and to make another test. This scenario is possible only when
the given time for testing is not over.
The proposed algorithm of intelligent system could be used in self-testing, training
and final exam modes. The self-testing mode does not require sending the evaluation to
the tutor or lecturer and the user can test his knowledge as many times as he needs. The
final exam mode sets predetermined time limits for making the test and the evaluation
is saved and sent by e-mail.
The input data for the mathematical model formulation for generating and evaluating
e-learning tests are shown in Table 1.
The predefined question set concerning the particular domain is denoted by Q ∈ {q1 ,
q2 ;…, qM }. This set consists of M number of different questions. Each question has its
Intelligent System for Generation and Evaluation of e-Learning Tests 101
Set of questions Questions difficulty Binary decision variables Levels of tests complexity
q1 d1 x1
… … …
qi di xi L 1 , L 2 , …, L K
… … …
qM dM xM
own degree of difficulty, which takes values in the range 1 ≤ d i ≤ N where the lowest
degree of difficulty of the questions is 1 and the value corresponding to the highest degree
of difficulty is expressed by N. It should be noted that there is no relation between the
total number of questions (Q) and degrees of difficulty.
3.1 Mathematical Model for Selection of Fewer Questions with Higher Degree
of Difficulty
Taking into account the described above input data the following generalized integer lin-
ear programming optimization model for selection of questions in generating e-learning
tests is formulated:
m
minimize xi = K k (1)
i=1
subject to
m
xi di = L k (2)
i=1
L k ≤ L kmax (3)
L k ≥ L kmin (4)
xi ∈ {0, 1} (5)
The objective function (1) aims to identify as few questions as possible considering
their difficulty, while satisfying the particular test level. The Eq. (2) determines the test
level complexity as the sum of the selected questions by decision variables (xi ) and
their corresponding difficulties (d i ). The restrictions (3) and (4) define the lower L kmin
and upper L kmax limit for the score number needed to form the chosen degree of test
complexity. The k-th index in these boundaries denotes the levels of tests complexity.
The binary integer variables xi expressed by the Eq. (5) is used to determine the questions
that will compose the particular test. The usage of the binary variables guarantees that
the questions within the generated test will not be repeated.
The formulated above optimization model expresses a special case of 0–1 integer
linear programming where the variables (x i ) are restricted to integers and are unknown.
102 D. Borissova and D. Keremedchiev
3.2 Mathematical Model for Selection of More Questions with Less Degree
of Difficulty
If as many as possible questions are needed to compose the test, the proposed above
mathematical model (1)–(5) should be modified. In this case the correct mathematical
model will have the following maximizing objective function:
m
maximize xi = K k (6)
i=1
subject to (2)–(5).
The mathematical formulation with objective function (6) subject to (2)–(5) will
determine as many questions as possible taking into account the levels of test complexity.
The main idea of this scenario is to select a greater number of questions, but with less
degree of difficulty.
The usage of the model (1)–(5) will generate the tests with fewer questions with
more difficulty, while the second model (6) subject to (2)–(5) will generate the tests
with more questions with less difficulty. Both models can be applied to test the students’
acquired knowledge in accordance to the required level of test complexity.
4 Numerical Application
To demonstrate the applicability of the proposed algorithm of an intelligent system for
generating and evaluating e-learning tests, a case study is used. The numerical application
of the proposed two optimization models is illustrated by the use of a limited number of
questions equal to 40. The range for their degree of difficulty is between 1 and 10 (i.e.
1 ≤ d i ≤ 10), where the greater means higher level of difficulty. The used input data
concerning the question difficulty and obtained results for binary integer variables (x i )
for three different levels for test complexity are shown in Table 2.
Table 2. Set of questions, their difficulties and determined values for decision variables.
Table 2. (continued)
The overall score for all questions in this excerpt is equal to 270. The numerical
testing is performed at three different levels of complexity of the tests with predefined
upper and lower boundaries for each test level. The number of the selected questions
and corresponding scores for each test level using both formulated optimization models
with minimization and maximization functions are shown in Table 3.
Levels of tests Levels of tests Levels of tests Levels of tests Levels of tests
complexity complexity complexity complexity complexity
Minimization
L1 200 185 190 23
L2 184 170 170 20
L3 169 155 156 18
Maximization
L1 200 185 192 32
L2 184 170 183 31
L3 169 155 167 29
5 Result Analysis
The proposed mathematical models based on integer programming allow generating
and evaluating e-learning tests with different level of complexity. The first model with
objective function (1) subject to (2)–(5) can be used when fewer questions have to be
determined but with higher degree of difficulty, while the second one with objective
function (6) subject to (2)–(5) is intended to determine as many questions as possible
but with less degree of difficulty.
The comparisons between generated tests under three levels of complexity for both
models are shown in Fig. 2.
Fig. 2. Comparison between generated tests by minimization and maximization model (a)
selected number of questions and corresponding score in case minimization; (b) selected number
of questions and corresponding score in case of maximization
It could be noted that the obtained scores for the generated tests are close to the lower
boundary for each test level. For example, in case of a test with L1 level, the scores are
190, while the lower boundary is set 185. For level L2 of the generated test, the scores
are 170 and the lower boundary is also 170, and for a test with L3 level the scores are
156 with lower boundary of 155.
The usage of the second model with an objective function (6) is also tested for
three different cases of test generation. The aim of this model is to determine as many
questions as possible with lower degree of difficulty. The obtained results for this model
for different cases of test complexity are illustrated in Fig. 2b.
For the highest level (L1) the determined number of questions is 32, while the sum of
their difficulties is close to those in the first model and the score is equal to 192. When a
test from the medium level (L2) is generated, the optimization task solution determines
31 questions and 183 scores for them. The results for the generation of a test with lower
level of difficulty (L3) show that the test is composed of 21 questions with scores from
their difficulties 167.
The numerical application of the second model with objective function (6) subject
to (2)–(5) shows that the obtained scores for the generated tests are close to the upper
boundary for each test level. For example, when generating a test with level L2 the scores
are 183 with upper boundary 184, and for a test with L3 level the scores are 167 with
upper boundary 169. The scores of 192 for the test with L1 level are in the middle of the
lower and the upper boundaries.
In this section the applicability of the developed and tested prototype of the intelligent
system for generation of tests with deferent degree of complexity is described. The
106 D. Borissova and D. Keremedchiev
main interface of this web-based system involves: (1) the possibility to select different
domain area; (2) the level of test complexity; (3) selection of questions difficulties. The
developed prototype was tested in self-testing regime and the second regime for official
exam is under development.
The demo version of the system was tested in a web programming course. The sys-
tem is realized to generate tests with four degrees of complexity that correspond to level
L1 for excellent and to level L4 for satisfied evaluation. Nevertheless, the developed
system integrates the proposed two integer programming models that allow generation
Fig. 3. Selected questions for test with level L3 of complexity with less number of questions but
more difficulty
Intelligent System for Generation and Evaluation of e-Learning Tests 107
Fig. 4. Generated test of level L3 complexity with more questions number but less difficulty
108 D. Borissova and D. Keremedchiev
of tests with fewer questions but with a higher degree of difficulty and generation of
tests with more questions but with a lower degree of difficulty.
The obtained results for the generated test under level L3 of complexity and the
selected number of questions using model (1) subject to (2)–(5) in a web programming
course are presented in Fig. 3.
The number of selected questions is equal to 18 and the sum of their difficulties
corresponds to the score 156 accordingly to the input data given in Table 2.
When using the second model the test is generated by selection of more questions
but with a lower degree of difficulty. This scenario is shown in Fig. 4.
It should be noted that the obtained results are highly dependable on predetermined
difficulties for each question. That is why the determination of these difficulties is
assigned to the relevant specialists.
Both of the proposed models can be extended with additional restrictions for more
precise application of different user preferences.
Once the questions composing the required test level are visualized the users can
select the answers.
For all of the generated tests there is a limited time when the users can point the
answers. If the user finishes the test within this time, he/she can check the result for
the test level. Activating the button “check” sends the answers to the server machine to
check the correctness of the for answers and the result is shown in a pop-up window.
When the time is over, the system does not permit the user to answer more questions.
The system automatically sends the given answers to the server, checks them and shows
the obtained result. The results can be of type “successfully passed test” for the selected
level of complexity or “score for lower level”.
The business logic concerning the verification of the correct answers is imple-
mented server-side using Node.js. This functionality proves the applicability of the
pro-posed algorithm for generation of tests with different level of complexity based
on the formulated two models of type 0–1 integer programming.
6 Conclusions
The current article describes an intelligent system for generation and evaluation of e-tests
for the purposes of e-learning. The main purpose of the proposed intelligent system is
the formulation of mathematical optimization models according to the need to select a
different number of questions a big or a small one to compose the tests. The first model
aims to minimize the number of questions by the determination of fewer questions but
with a higher degree of difficulty. The second model aims to maximize the number of
questions by the determination of more questions with a lower degree of difficulty. Both
models could be used to implement the tests with different level of complexity.
The numerical application of the first model shows that the obtained scores for the
generated tests are close to the lower boundary for each test level. The results from
the second model demonstrate the opposite situation where the obtained scores for the
generated tests are close to the upper boundary for each test level.
Regardless of the chosen model for selection of questions for the generated tests
the time for answering is the same. Thus, the proposed intelligent system provides the
Intelligent System for Generation and Evaluation of e-Learning Tests 109
flexibility in generation of tests with different level of complexity. It also gives the user
the possibility to choose what type of questions to answer – a smaller number but with
higher level of difficulty or a bigger number but with a lower level of difficulty. It could
be implemented in a Learning Management System or used as a separate tool for the
e-learning and e-testing purposes.
References
1. Borissova, D., Keremedchiev, D.: Group decision making in evaluation and ranking of students
by extended simple multi-attribute rating technique. Cybern. Inf. Technol. 18(3), 45–56 (2019)
2. Mustakerov, I., Borissova, D.: A framework for development of e-learning system for com-
puter programming: application in the C programming language. J. e-Learn. Knowl. Soc.
13(2), 89–101 (2017)
3. Mustakerov, I., Borissova, D.: A conceptual approach for development of educational web-
based e-testing system. Expert Syst. Appl. 38(11), 14060–14064 (2011)
4. Marinova, G., Guliashki, V., Chikov, O.: Concept of online assisted platform for technologies
and management in communications OPTIMEK. Int. J. Bus. Technol. 3(1) (2014). https://
doi.org/10.33107/ijbte.2014.3.1.02
5. Hennig, S., Staatz, C., Bond, J.A., Leung, D., Singleton, J.: Quizzing for success: evaluation
of the impact of feedback quizzes on the experiences and academic performance of under-
graduate students in two clinical pharmacokinetics courses. Curr. Pharm. Teach. Learn. 11,
742–749 (2019). https://doi.org/10.1016/j.cptl.2019.03.014
6. ClassMarker. https://www.classmarker.com/. Accessed 30 Aug 2019
7. Marsh, E.J., Cantor, A.D.: Learning from the test: dos and don’ts for using multiple-choice
tests. In: McDaniel, M., Frey, R., Fitzpatrick, S., Roediger, H.L. (eds.) Integrating Cogni-
tive Science with Innovative Teaching in STEM Disciplines (2014). https://doi.org/10.7936/
k7z60kzk
8. Tuparov, G., Keremedchiev, D., Tuparova, D., Stoyanova, M.: Gamification and educational
computer games in open source learning management systems as a part of assessment. In:
17th International Conference Information Technology Based Higher Education and Training
(ITHET), pp. 1–5. IEEE (2018)
9. Paunova-Hubenova, E., Terzieva, V., Dimitrov, S., Boneva, Y.: Integration of game-based
teaching in Bulgarian schools state of art. In: Ciussi, M. (ed.) 12th European Conference on
Game-Based Learning, ECGBL 2018, pp. 516–525 (2018)
10. Balabanov, T., Keremedchiev, D., Goranov, I.: Web distributed computing for evolutionary
training of artificial neural networks. In: International Conference InfoTech-2016, pp. 210–
216 (2016)
11. Ma, J., Liu, Q.: The design and development of web-based examination system. In: Wang,
Y. (ed.) Education Management, Education Theory and Education Application. Advances in
Intelligent and Soft Computing, vol. 109, pp. 117–121. Springer, Heidelberg (2011). https://
doi.org/10.1007/978-3-642-24772-9_17
12. Tashu, T.M., Esclamado, J.P., Horvath, T.: Intelligent on-line exam management and eval-
uation system. In: Coy, A., Hayashi, Y., Chang, M. (eds.) ITS 2019. LNCS, vol. 11528,
pp. 105–111. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-22244-4_14
13. Stancheva, N., Stoyanova-Doycheva, A., Stoyanov, S., Popchev, I., Ivanova, V.: A model
for generation of test questions. Comptes rendus de l’Academie bulgare des Sciences 70(5),
619–630 (2017)
14. Veldkamp, B.P.: Computerized test construction. In: Wright, J.D. (ed.) The International
Encyclopedia of Social and Behavioral Sciences, 2nd edn, pp. 510–514. Elsevier, Amsterdam
(2015)
110 D. Borissova and D. Keremedchiev
15. Veldkamp, B.P.: Multiple objective test assembly problems. J. Educ. Meas. 36(3), 253–266
(1999)
16. Kubiszyn, T., Borich, G.D.: Educational Testing and Measurement: Classroom Application
and Practise. Harper Collins Publishers, New York (1990)
Developed Framework Based on Cognitive
Computing to Support Personal Data Protection
Under the GDPR
Abstract. The General Data Protection Regulation (GDPR) has entered into force
in the European Union (EU) since 25 May 2018 in order to satisfy present difficul-
ties related to private information protection. This regulation involves significant
structural for companies, but also stricter requirements for personal data collec-
tion, management, and protection. In this context, companies need to create smart
solutions to allow them to comply with the GDPR and build a feeling of confidence
in order to map all their personal data. In these conditions, cognitive computing
could be able to assist companies extract, protect and anonymize sensitive struc-
tured and unstructured data. Therefore, this article proposes a framework that can
serve as an approach or guidance for companies that use cognitive computing
methods to meet GDPR requirements. The goal of this work is to examine the
smart system as a data processing and data protection solution to contribute to
GDPR compliance.
1 Introduction
More than ever before, the use of data is increasing rapidly in all areas of our daily
lives. To harmonize data protection and preserve data privacy [1] across the EU, the new
General Data Protection Regulation (GDPR) was introduced in May 2018. The GDPR,
which replaced the Data Protection Directive 95/46/EC (see [2] and [3]), introduces a
number of changes that require significant efforts from companies that explore personal
data, to comply.
From an IT point of perspective, all specifications cover the entire solution, including
apps, platforms, and infrastructure, particularly if some companies deal on a direct or
indirect basis with personal data. Consequently, compliance with this regulation will cer-
tainly have a significant effect on the processes of information management [4], includ-
ing identification and categorization of data, data encryption, data masking, information
tracking, data security and protection, and compliance and reporting audits.
© Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 111–130, 2020.
https://doi.org/10.1007/978-3-030-39237-6_8
112 S. Sedkaoui and D. Simian
Companies cannot achieve compliance by using only specific products. They must
stop the personal data of clients from being lost, altered or disseminated. A reposi-
tory that defines the mapping between each sensitive data element and the respective
anonymization rule will need to be maintained and updated (see Sect. 4 for the definition
of anonymization). They also need to discover new ways of managing the data gathered
by mailing lists, online forms, etc. That’s why today’s technologies need to be powerful
and smart.
It is clear that many technological solutions that enable GDPR compliance can
be adopted. With the increasing demand for a new technology generation to better IT
security, cognitive technology might be a good solution for achieving comprehensive
GDPR compliance.
Applied to massive volumes of data, cognitive computing can enable companies to
process data faster and make better decisions. It is also increasingly used in risk man-
agement, to analyze often ambiguous and sensitive data, and to identify risk indicators.
Cognitive computing technology provides a better mapping for data security and data
protection.
As a result, this study attempts to investigate the dynamism of such technology by
developing an approach through which smart systems can assist companies to guaran-
tee compliance with the new requirements for their private data management and data
protection procedures. The main research objective can be formulated as follows:
How can cognitive computing help companies to comply with the Data Protection
Regulation (GDPR) and improve the collection, processing and use of personal data?
Through this research question and to create the foundations of a framework, we
intended to identify where cognitive technology can contribute to the GDPR compliance
process. More precisely, we set out to identify and define those personal data require-
ments in the GDPR, whose fulfillment could be simplified, using cognitive computing
technology.
Therefore, the main contribution of this work is the creation of a framework that com-
bines cognitive computing approaches and methods to enable companies to attain effec-
tiveness and protect sensitive data in the GRDP context. The aim of the proposed frame-
work is to demonstrate cognitive computing capacities and possibilities for companies
to ensure personal data protection under GDPR.
This framework will be developed through the integration of autonomic and cognitive
systems, based on a systematic review and assessment of the key elements implemented
by the GDPR. The review and meta-analysis of the GDPR literature and the various
concepts associated with this research enable us to define changes in personal data, data
management, and their technological context. We embraced this meta-analysis approach
in order to achieve a comprehensive description of the GDPR requirements that could be
of concern to our research. Also, consideration should be given to a number of challenges
including data complexity, management of the resulting heterogeneous data, as well as
system scalability.
The remainder of this article is structured as follows. Section 2 covers the literature
review related to this research by identifying the several changes implemented by the
GDPR and outlining a short data protection history. Section 3 handles the associated
works that played an important part in the development of the proposed framework.
Developed Framework Based on Cognitive Computing 113
Section 4 provides an overview and describes the framework design and the adopted
methodology. Section 5 presents a brief discussion to provide the needed support and
background to develop the proposed framework as well as the role of cognitive computing
in maintaining compliance. Section 6 concludes with implications, practical impacts, and
limitations of the current study for further research directions.
2 Literature Review
Before discussing how computing technology can be applied to support compliance with
the GDPR, a brief overview of data protection and the GDPR requirements, is needed.
This section outlines a historical background related to data protection in the developing
IT context. It also discusses the main changes of the GDPR that companies must take into
consideration when they develop their business strategies. This section is constructed
with the intent to provide comprehension of the context of this research.
Advanced technology and smart devices have become an important part of our daily
activities. The number of internet users is similarly rising across the globe thanks to the
ubiquitous smartphone and supporting networks [5]. In large part, the rapid evolution of
the use of advanced technologies and smart devices is to be attributed to the exponential
growth of datafication [6].
Increasingly large amounts of personal data are being stored and transmitted in
and through smart devices. This would include the fact that breaches of personal data
are common, often cross-border and rarely efficiently sanctioned in the IT context [7].
Consequently, personal data protection has become a field of interest to almost all sectors,
services, and technologies. But, what personal data means?
It presents information that can be directly or indirectly related to an individual
identified ([3] and [8]). It can be a name, a photo, blood type, IP address, a phone
number, a mailing address, a voice recording, a social security number, email, religion,
etc.
Table 1. Sensitive data by sector
Depending on the business sector, some contents represent real pools of sensitive
data. Some examples of contents are shown in Table 1. Some of them are sensitive as
they relate to information that may give rise, for example, to discrimination.
The use of personal data by companies creates various societal benefits, both for the
businesses and for individuals. But, it is evident that this usage poses also some challenges
related to personal data protection. This presents serious data protection ramifications as
such data is regarded as particularly sensitive when stored in systems that keep electronic
records. It is, therefore, clear that its storage, processing, and analysis can be at the heart
of the business model [9].
All concerns and risks must be considered carefully taking into account the provisions
of several regulations, such as the GDPR. Some of the main risks include [10]:
In smart environments, it is the hyper-connected active user who creates and produces
huge amounts of data [11]. Furthermore, the personal data on which GDPR can be
applied are highly unstructured (text, documents, images, etc.), and companies are now
struggling with managing and protecting it ([12] and [13]).
In this context, advanced technology raises a number of concerns from a data protec-
tion perspective. It introduces basic questions about its ethical, social and legal effects,
thus posing new issues to data protection and privacy. Also, the form of automatic com-
munication between smart devices makes it difficult to apply fundamental transparency
and fairness principles.
Along with the increasing use of smart technology, data uses are typically associated
with stringent security requirements and privacy sensitivities, especially in the case of
the internet of things (IoT) applications that involve the collection and processing of
personal data [13].
In addition, advanced technology and smart devices pose challenges to personal data
protection in view of the different sources from which data is gathered. Another important
point, related to the use of large scale cloud infrastructure with a diversity of software
platforms, spread across large networks of computers, increases the entire system’s
attack surface as well. Also, manipulation and loss of equality have been identified as
two major issues that new technologies cause personal data protection.
So, the story of using personal information is, therefore, is the technology story
itself. Personal data protection is, therefore, emerging as an area of significant interest in
recent years as many countries adopt data protection regulations in order to protect data
because data is an organization’s most valuable asset. In this context, companies must
develop new approaches to upgrade their business strategies and make them compliant
with these regulations.
Developed Framework Based on Cognitive Computing 115
The reform of the European legislation seemed necessary in view of its dilapidated state,
revealed by the digital explosion, the emergence of new uses and the introduction of new
economic models. The main idea comes from the European Commission’s finding that
the legislation, which entered into force in 1995, needed to be updated to deal with
technological developments [14].
Then, the GDPR is the new European framework for the processing and circulation
of personal data [15], elements on which companies rely to offer their services and
products. It also concerns the harmonization of the European legal panorama on the
privacy of personal data. The definitions of the key concepts of GDPR (data processing
and personal data protection) are developed in a broadly flexible and adaptable manner
so that they can be applied to the technological context ([16] and [8]).
GDPR gives more authority to people, clients, and staff over their data and less
power to organizations collecting, using, and monetizing such data. The goal of GDPR
is to better adapt users’ rights to the growing digital context and, in particular, to the
development of big data e-commerce and connected devices, and more mainly based on
personal data collection and processing.
It should also be noted that sensitive data are described in the GDPR as personal
information revealing political views, religious or philosophical beliefs, racial or ethnic
origin, and trade union membership. The GDPR’s general provisions include new def-
initions for pseudonymization, sensitive personal data types, data protection policies,
and data breach [13].
It also includes a recognition of a right and the reassuring of personal data in case
of invasion of privacy, the right to the data portability, to be able to pass from a net-
work social to another, from one ISP to another or from one streaming site to another,
etc., without losing information, as well as the right to be informed in case of data
piracy. Globally, Table 2 summarizes and explains the main individuals’ rights and the
company’s responsibilities under the GDPR.
Globally, the GDPR changes how personal data is defined. Therefore, it contains
important rights for users regarding the processing of their personal data [11]. It presents
some significant new concepts linked to personal data processing; pseudonymization,
data minimization, transparency, and consent of minors.
In this case, any entity handling personal data concerning Europeans must com-
ply with the regulations [17]. Giants like Google, Facebook, Amazon or Uber must,
therefore, take into account the GDPR requirements in their strategies and activities
(providing goods and services in EU). Any company is concerned by the GDPR since it
stores personal data (name, address, date of birth, location, IP, etc.).
Therefore, companies must comply with the GDPR because data breaches will result
in higher penalties: up to 4% of annual turnover or 20 million euros [14]. View the expo-
nential volume of unstructured data that companies handle every day, the implementation
of this regulation is not an easy task.
According to the regulation, the identification of personal data must be carried out
by an automated extraction process. In this context, companies must develop their com-
pliance culture and update their technology solutions. In order to guarantee compliance
116 S. Sedkaoui and D. Simian
with the GDPR, cognitive computing which understands data types (structured and
unstructured) can assist map personal information.
The GDPR requirements arose out of global developments with regard to data protection
regulation in order to enhance privacy regulation and to prescribe data protection prac-
tices. Under GDPR it is important to eliminate the possibility of personal data usage in
unjustifiable and intrusive ways. In accordance with GDPR articles, companies should
ensure that all personal data is identified, this requires a system able to manage data secu-
rity and ensure the protection of sensitive data. As such, companies can use cognitive
computing to adhere to the regulation.
Cognitive computing is the simulation within a computer model of the human thought
system (see [18] and [19]). The advent of the cognitive computing era is driven by the
exponential growth in data, specifically unstructured data. This technology is based on
Developed Framework Based on Cognitive Computing 117
machine learning systems using data mining, pattern recognition and the processing of
natural language to replicate how the human brain works [20].
The best-known cognitive systems are Apple Siri, Amazon Echo, IBM Watson, and
others that combine deep learning, natural language processing (NLP) and machine
learning (ML) algorithms to process information [21].
Such systems use algorithms of Machine Learning. Cognitive computing systems
gain understanding from the data they collect and process on an ongoing basis. The
system refines the way it looks for patterns and how it processes data so that new problems
can be anticipated and possible solutions can be modeled. What makes it different is
the fact that this technology is dynamic, which means that cognitive computing is built
to change and will continue to change dependent on the ingestion of more data and the
capability to identify patterns and linkages between elements [22].
This technology can be of paramount importance for companies. Its most promising
feature lies in its ability to manage large quantities of data [23]. This technology can boost
companies’ decision-making processes. Cognitive computing can assist companies to
map GDPR using capacities such as cognitive metadata harvesting, personal reporting,
data integration, implementation of policies, and lineage tracking [24].
Cognitive computing can process smartly and automatically unstructured content,
and continuously analyzing the company’s data flow [25]. It identifies, categorizes and
can even anonymize/pseudonymize the personal data. Cognitive systems can also help
in generating specific reports allowing managers to quickly take corrective actions to
the existing processes. This analysis step is crucial in the process of processing personal
data and therefore for compliance with GDPR.
To support GDPR compliance, cognitive computing supports data protection with
accurate and instant reporting as the regulation recommends. This technology offers to
the company:
making a user data inventory and mapping data in their GDPR compliance measures to
protected GDPR policies is a priority initiative.
This motivates introducing cognitive computing techniques into data processing as
a technology that can help companies to ensure personal data protection to comply with
the GDPR. We noticed that researchers have paid attention to this technology, and we
selected some relevant related work that we can present in the following section.
3 Related Work
The idea to bring rights to users, under GDPR, and give them control on their personal
data, and require compliance from companies, appears as the most distinct initiative. This
idea is addressed by several researchers and mainly discussed in the business context.
However, some studies have addressed the topic related to the development of a
framework designed for personal data protection by integrating cognitive solutions,
mainly because the GDPR has been implemented since one year only. But, the following
researches remain useful and insightful and have played a significant role to develop the
framework for the current study.
In his proposal Hoepman in [28] derived eight privacy design approaches to assist IT
architects promote privacy by design early during concept creation and analysis in the
life cycle of software development. The research was elaborated when the regulation was
only a proposal. This work offers essential patterns and Privacy Enhancing Technologies
(PETs).
A technique based on a Socio-Technical Security approach was proposed in [15]
to gather and check the social aspects of GDPR and to promote the design of systems
that comply with GDPR. The proposed approach consists of a modeling language and
a reasoning framework (STS-ml). A meta-model to illustrate key relationships between
entities defined in the GDPR is proposed in [29]. The meta-model is intended to be used
by the designers of e-services for the development of adequate Privacy Level Agreements
(PLAs) that demonstrate compliance to the GDPR.
In addition, in [30], Furey and Blue gave speculation on privacy issues related to
the capacity of Voice Command Devices (VCDs) to collect information related to an
individual’s emotional state. Their research was conducted with consideration for the
GDPR.
The authors in [31] identified the impact of the PET adoption after the Personal
Data Protection Act (PDPA) enforcement on employee work performance, introduced
in Malaysia in 2010 and which aims to regulate commercial usage of personal data. They
suggest that a holistic evaluation of business process compliance to privacy regulations
would include techniques to measure PET adoption among employees and compliance
to restructured business processes.
It is also essential to take into consideration studies that focus on the design of
information systems with regard to compliance with regulations that are not related
to the protection of sensitive data. In this context, a meta-design technique has been
implemented by [4], which integrates regulations in the design and information systems
implementation. This technique offers a set of high-level guidelines for the selection of
suitable regulatory compliance measures and the handling of security concepts.
Developed Framework Based on Cognitive Computing 119
Furthermore, authors in [32] have suggested a generic framework for diverging cog-
nitive computing methods of deep learning into Cyber Forensics without concentrating
on GDPR.
It should be noticed also that, a web application has been developed by [33], which
provides an overview of the strength of data protection regulations over the world.
This overview categorizes regions in four categories according to the data protection
description: heavy, robust, moderate and limited.
In the above relevant mentioned works, none of them has focused on the development
of a framework meant for personal data protection and based on cognitive computing
techniques under GDPR. For this, the current study aims to propose a sustainable app-
roach to protect sensitive data by adopting a cognitive solution to ensure GDPR compli-
ance. Therefore, the next sections convey the ‘what’ or the requirements and instruments,
as well as the ‘how’ or personal data protection design under GDPR.
This section will be primarily focused on the systematic review and provide an overview
of existing literature related to the current study. Then, it describes the proposed frame-
work, using a structured scheme, containing a summary of phases and shows the
capabilities that cognitive computing can bring to guarantee conformity.
As mentioned before, the semantic review and the meta-analysis carried out, allow us to
gather the best practice related to the current study. The literature review, as described
above, provided a theoretical foundation for a deeper understanding of GDPR, cognitive
computing, and personal data. The initial search criteria to identify and select relevant
literature was deliberately diverse and with a broad scope.
Cognitive computing for GDPR compliance as a new generation technology has
limited research available; therefore the literature reviewed was not assessed or dismissed
on the basis of quality or academic focus. The first stage in the study method was the
choice of samples. The Web of Science is recommended as the preferred database site
because it offers the most valuable and high-impact collection of papers [34].
We then selected all key collection database indexes including Science Core Col-
lection Web, Current Content Connect, KCI-Korean Journal Database, etc. It should be
noticed that the literature search was carried out in June 2019 with the following key-
words according to the above literature review: “GDPR”, “regulation compliance” and
“data security”. The visualization of GDPR literature is shown in Table 3.
Among them, the publications were maximal respectively in the field of Computer
Science, Government Law, and Business Economics. It is worth noting that GDPR has
attracted less attention in some fields such as: Legal Medicine, Information science,
Health Sciences, etc.
It should be mentioned that the above review of the literature shows a lack of a
methodology framework or cognitive solutions able to guide the companies and support
their personal data protection process, under GDPR. This paper proposes a framework
120 S. Sedkaoui and D. Simian
based on the cognitive system to ensure such compliance, achieve the various objectives
and to meet the desired goal of GDPR.
This, therefore, has led the authors to think about a diverging approach introducing
cognitive computing techniques as a tool to help companies comply. We aim to derive the
framework from existing data protection laws and privacy frameworks. We, therefore,
think that this framework is useful not only in the design of sensitive data protection
schemes but also in the assessment of the effect of IT systems on privacy.
The main GDPR requirements, the most significant shift during the last two decades
data privacy legislation as per [35] is that individuals need to be informed about many
of the elements listed in Table 2. We, briefly summarize those here.
So, we have taken into consideration all these requirements, to build a framework.
This framework introduces a cognitive process to understand and frame the human-
machine interactions with respect to these aspects of GDPR in terms of data protection
and processing. But, the most important thing is to know where to start.
From our point of view, this solution, that aims to help companies ensuring com-
pliance, must take into account data protection and design by default, the security of
processing, the right to be forgotten (article 17), the responsibility of the controller,
and data protection impact assessment, while the system is under creation. These may
help companies to support the assessment of PETs that allow them to comply and to
satisfy GDPR requirements. Hence, the elaboration of the proposed framework, which
is illustrated in Fig. 1, contains the main following phases:
Phase 1: Organization and Preparation. The proposed framework starts with the
organization and the determination of the current state of the company regarding data
management and security. This phase is essential both to carry out an inventory of fix-
tures and to determine a trajectory. It helps to visualize the possible gaps, to define risks,
to determine the effectiveness of the existing information system, etc. During this phase,
data collection and storage, as well as data identification and classification, must be
updated to allow the preparation and the classification of the collected data as suggested
by GDPR requirements.
Phase 2: Privacy and Processing. When it comes to the “privacy and processing”
phase, companies must think about the methods that they must adopt to (i) derive an
overview about the definition of personal data (sensitive or not), (ii) where they will be
stored, (iii) for how long, (iv) how they will be processed and for which end; and (v) how
ensure appropriate security for these data to fulfill the GDPR. It should be mentioned,
therefore, that data requires a categorization scheme to be updated and the company
must reclassify some data types to include GDPR-compliant personal data.
Furthermore, the records of processing steps require that each controller be responsi-
ble for maintaining a record of processing operations. These records include, for example,
the processing purposes and a description of the data subject categories and personal data
categories (Article 30). Regarding controllers’ responsibilities, we notice the following
implications:
• Assess the complexity of the compliance process with regard to the company and the
information system, as well as analyzing the consequences of the regulation.
122 S. Sedkaoui and D. Simian
• Measure the GDPR compliance various axes such as the control of the life cycle of
the personal data and their treatments, the support for change, the appropriation of
the policy and the control of its application, etc.
• Identify risks and priorities and establish a trajectory based on the estimation of the
risks and priorities.
• Build a process able to monitor and maintain GDPR compliance.
Therefore, we state six key elements (or steps) in the proposed framework that
companies need to consider:
– Data collection and storage: Companies that are required to comply with the GDPR
need to maintain digital records of how they collect and store personal data. In all
instances, irrespective of how personal data are stored or collected, the protection
requirements of GDPR are met. Under GDPR, only for particular reasons, companies
obtain personal data. It became important to indicate the type of data collected as well
as the reason why such data is collected in the company’s privacy policy in order to
remain transparent with the data subjects. Therefore, consent must be freely given.
– Data identification and classification: Companies have to collect and store a minimum
amount of data and keep them up to date: the concept of “Privacy by Design”. The
data must also be kept for the shortest possible time. So it becomes important to ask
the following question: What personal data companies need to properly deliver their
product or service? Identification and classification of personal data, therefore, needs
the abilities of semantic analysis.
– Anonymization/pseudonymization: This means that the processing of personal data
or sensitive data must be carried out in such a way that it cannot be connected to
a particular data subject without using any additional data that must be separately
protected and stored.
– Encryption and data masking: It is necessary to maintain a repository containing the
mapping of the sensitive attributes associated with their processing of anonymization
or pseudonymization.
– Personal data processing: T he regulation provides the data subject the right to request
portability or erasure of personal information (Article 17) and instructs data collecting
firms to keep privacy and data protection in mind in every step along the processing
of personal data [2]. This is to say that, only personal data that are necessary for
each function of the processing are processed. The personal data collected and stored
requires specific analysis and processing tools [40].
– Audit and compliance reporting: To comply with the GDPR, companies must think
about the appropriate skills of employees. Appropriate trainings are very important
especially in data management, data security and work procedure. It is, therefore,
important that all employees adapt to the new work procedures. Also, companies
must take into consideration the shortcomings in the policy and instructions that need
to be resolved and adjusted. In addition, it must schedule periodic compliance audits.
124 S. Sedkaoui and D. Simian
For each phase and step a company must identify essential functions in the process
phase as well as in the compliance trajectory phase. Each of these functions can then be
supported or accelerated by the implementation of a technological solution (cognitive
computing).
Type: image
Name: CleintX.jpg
Date of creation: d/m/y
Sharing allowance: Yes/No
Etc.
Characters
Data
Client Data
Data Categorization Sensitive /
Object
Identification Personal
Analysis tasks
Definition
Respond
Requirements
Access, Apply
Erasure
Measures to take
Requests GDPR
Portability …
Verification
Table 4. (continued)
Businesses can use NLP, Named Entity Recognition (NER) or any other techniques,
to identify automatically personal data (name, ID number, etc.). In this case, the solution
can use machine learning algorithms to classify automatically data (sensitive or not)
according to GDPR regulation.
Businesses can use NLP, Named Entity Recognition (NER) or any other techniques,
to identify automatically personal data (name, ID number, etc.). In this case, the solution
can use machine learning algorithms to classify automatically data (sensitive or not)
according to GDPR regulation.
In addition to the security aspects and the speed of automated data protection and
assessment methods, cognitive computing makes the data gathered to be crossed with
different sources such as social networks, enabling more thorough controls to be carried
Developed Framework Based on Cognitive Computing 127
out. This would not only reduce the risk of customer identification but also concentrate
on compliance controllers’ jobs on greater value-added tasks. So, the implementation
of a cognitive solution compliance process helps to handle large amounts of data while
allowing human resources to concentrate on more complicated problems.
For example, in the banking sector, the GDPR provides a broad definition of the
data to be considered as personal and sensitive (identity, address, credit card number, IP
address, etc.) while the banking institutions have larger amounts of such important data.
The regulation also needs all private data that are considered unnecessary to be erased.
The challenge in complying with such regulation is, therefore, the quantity of data
processed and the dispersal of data between departments and systems. In fact, the manual
and accurate inventory of personal data require too much staffing in the face of terabytes
of data. To this end, cognitive computing-based solutions aimed at refining the catego-
rization of stored personal data and thus allowing banks to have a global map of the
data they hold, subject to control or usage restriction. As a consequence, these solutions
make it possible to manage sensitive data more rigorously and quickly.
When personal data are processed, cognitive computing goes further. Indeed, the
software that embeds such technology makes it possible to automatically anonymize
personal data, prohibit the entry of forbidden characters, prohibit specific data extraction,
etc. The implementation of this solution in the personal data processing would therefore
not only enable their simple organization but deeper treatment more accurate, more
secure and more compliant with the current regulation.
With the current trends in innovative technologies, there will always be a need for new
ways and methods to address various challenges. GDPR has created a new approach
to handle personal data. In many fields, cognitive computing has been used, hence the
need to integrate it into GDPR compliance. Cognitive computing has the ability to tackle
challenges related to the security and processing of personal data. This technology can
boost effectiveness, reducing workload, saving time, and reducing costs.
In this article, we reviewed the most recent studies especially in those related to
the GDPR requirements. This review showed that most studies did not build cognitive
computing-based frameworks.
In this article, the authors addressed cognitive computing approaches and their roles
in maintaining compliance with GDPR. By building a framework outlined in Sect. 4,
the authors interpreted this significance. This framework is split into three main phases:
Organization and Preparation, Privacy and Processing, and Compliance evaluation.
Steps of each phase are then discussed. This framework also illustrates how it is possible
to use cognitive computing to solve GDPR compliance challenges. It demonstrates that
by applying cognitive computing methods to data management systems, compliance can
be realized.
This framework can assist companies greatly and provide a secure, low-cost compli-
ance process for GDPR. It introduces some significant new concepts related to personal
data processing; pseudonymization, transparency, data minimization, etc. However, in
many companies, both in the private and public sectors as well as in small and medium
128 S. Sedkaoui and D. Simian
enterprises (SMEs), the proposed framework must be assessed and evaluated. It must
be supported and approved by the company’s GDPR experts as well. Obtaining many
evaluations for different companies, as a proof of concept of our proposed framework is
one of the most important directions of our further research.
Once a company agrees to use this framework, the phases and steps could be
more detailed or more collapsed in order to allow the automatization using AI and
ML techniques, according to the company’s specific and budget allocated for cognitive
computing.
More studies are also needed to enhance the proposed framework as well as spark
further debate on the role and the importance of cognitive computing techniques and
show how they can enable companies to comply.
Acknowledgement. This research was realized under the “Eugen Ionescu” fellowship program,
supported by “Agence Universitaire de Francophonie” (AUF) in Romania. The AUF team played
no role in the writing of this article, or the decision to submit it for MDIS 2019 conference.
References
1. Storr, C., Storr, P.: Internet of things: right to data from a European perspective. In: Corrales,
M., Fenwick, M., Forgó, N. (eds.) New Technology, Big Data and the Law. PLBI, pp. 65–96.
Springer, Singapore (2017). https://doi.org/10.1007/978-981-10-5038-1_4
2. Tikkinen-Piri, C., Rohunen, A., Markula, J.: EU general data protection regulation: changes
and implications for personal data collecting companies. Comput. Law Secur. Rev. 34(1),
134–153 (2018)
3. Voigt, P., von dem Bussche, A.: The EU General Data Protection Regulation (GDPR).
Springer, Cham (2017). https://doi.org/10.1007/978-3-319-57959-7
4. Becker, J., Knackstedt, R., Braeuer, S., Heddier, M.: Integrating regulatory requirements
into information systems design and implementation. In: 35th International Conference on
Information Systems “Building a Better World Through Information Systems”, ICIS 2014
(2014)
5. Sedkaoui, S., Gottinger, H-W.: The internet, data analytics and big data Chap. 8. In: Gottinger,
H.W. (eds.) Internet Economics: Models, Mechanisms and Management, pp. 144–166. eBook
Bentham Science Publishers, Sharjah (2017)
6. Mayer-Schonberger, V., Cukier, K.: Big Data: A Revolution That Will Transform How We
Live, Work and Think. Houghton Mifflin Harcourt, Boston (2013)
7. Malatras, A., Aanchez, I., Beslay, L., et al.: Pan-European personal data breaches: mapping
of current practices and recommendations to facilitate cooperation among data protection
authorities. Comput. Law Secur. Rev. 33, 458–469 (2017)
8. Tankard, C.: What the GDPR means for businesses. Netw. Secur. 6, 5–8 (2016)
9. Auwermeulen, B.V.: How to attribute the right to data probability in the Europe: a comparative
analysis of legislations. Comput. Law Secur. Rev. 33(1), 57–72 (2017)
10. Data Protection Working Party, Article 29: Opinion 8/2014 on the on Recent Developments
on the Internet of Things, WP 223, 16 September 2014
11. Mitrou, L.: Data Protection, Artificial Intelligence and Cognitive Services: Is the general data
protection regulation (GDPR) “artificial intelligence-proof”? (2019). https://query.prod.cms.
rt.microsoft.com/cms/api/am/binary/RE2PdYu
Developed Framework Based on Cognitive Computing 129
12. Rizkallah, J.: The Big (Unstructured) Data Problem (2017). https://www.forbes.com/sites/
forbestechcouncil/2017/06/05/the-big-unstructured-data-problem/#16ddb612493a
13. Sedkaoui, S.: Data Analytics and Big Data. ISTE-Wiley, London (2018)
14. General Data Protection Regulation (EU) (2016). http://data.consilium.europa.eu/doc/
document/ST-5419-2016-INIT/en/pdf
15. Robol, M., Salnitri, M., Giorgini, P.: Toward GDPR-compliant socio-technical systems: mod-
eling language and reasoning framework. In: Poels, G., Gailly, F., Serral Asensio, E., Snoeck,
M. (eds.) PoEM 2017. LNBIP, vol. 305, pp. 236–250. Springer, Cham (2017). https://doi.org/
10.1007/978-3-319-70241-4_16
16. Schwartz, P., Solove, D.: Reconciling personal information in the United States and European
Union. Calif. Law Rev. 102, 877–916 (2014)
17. Zerlang, J.: GDPR: a milestone in convergence for cybersecurity and compliance. Netw.
Secur. 6, 8–11 (2017)
18. Earley, S.: Executive roundtable series: machine learning and cognitive computing. IT Prof.
17(4), 56–60 (2015)
19. TechTarget: Cognitive Computing (2017). http://whatis.techtarget.com/definition/cognitive-
computing
20. Watson, H.: The cognitive decision-support generation. Bus. Intell. J. 22(2), 5–14 (2017)
21. Demirkan, H., Earley, S., Harmon, R.: Cognitive computing. IT professional 19(4), 16–20
(2017)
22. Hurwitz, J., Kaufman, M., Bowles, A.: Cognitive Computing and Big Data Analytics. Wiley,
Hoboken (2015)
23. Coccoli, M., Maresca, P.: Adopting cognitive computing solutions in healthcare. J. e-Learn.
Knowl. Soc. 14(1) (2018)
24. Williams, H.: IBM pushes cognitive computing & data-driven solutions ahead
of GDPR (2017). https://www.cbronline.com/internet-of-things/cognitive-computing/ibm-
pushes-cognitive-computing-data-driven-solutions-ahead-gdpr/
25. Gupta, S., Kumar, A.K., Baabdullah, A., Al-Khowaiter, W.A.A.: Big data with cognitive
computing: a review for the future. Int. J. Inf. Manage. 42, 78–89 (2018)
26. Alert Logic Report: GDPR Compliance in the EU (2017). https://www.alertlogic.com/assets/
industry-reports/EU_GDPR_Alert_Logic.pdf
27. Alert Logic Report: GDPR Compliance Report (2018). https://www.alertlogic.com/assets/
industry-reports/2018_GDPR_Compliance_Report.pdf
28. Hoepman, J.-H.: Privacy design strategies. In: Cuppens-Boulahia, N., Cuppens, F., Jajodia,
S., Abou El Kalam, A., Sans, T. (eds.) SEC 2014. IAICT, vol. 428, pp. 446–459. Springer,
Heidelberg (2014). https://doi.org/10.1007/978-3-642-55415-5_38
29. Angelopoulos, K., Diamantopoulou, V., Mouratidis, H., Pavlidis, M.: A metamodel for GDPR-
based privacy level agreements. In: ER Forum/Demos (2017)
30. Furey, E., Blue, J.: Alexa, emotions, privacy and GDPR. In: Proceedings of the 32nd
International BCS Human Computer Interaction Conference (HCI 2018), Belfast, UK (2018)
31. Gan, M.F., Chua, H.N., Wong, S.F.: Personal data protection act enforcement with PETs
adoption: an exploratory study on employees’ working process change. In: Kim, K.J., Kim,
H., Baek, N. (eds.) ICITS 2017. LNEE, vol. 450, pp. 193–202. Springer, Singapore (2018).
https://doi.org/10.1007/978-981-10-6454-8_25
32. Karie, N.-M., Kebande, V.-R., Venter, H.S.: Diverging deep learning cognitive computing
techniques into cyber forensics. Forensic Sci. Int. Synerg. 1, 61–67 (2019)
33. DLA Piper Data Protection. https://www.dlapiperdataprotection.com/
34. Falagas, M.E., Pitsouni, E.I., Malietzis, G.A., Pappas, G.: Comparison of PubMed, Scopus,
web of science, and Google scholar: strengths and weaknesses. FASEB J. 22(2), 338–342
(2008). Official Publication of the Federation of American Societies for Experimental Biology
130 S. Sedkaoui and D. Simian
Abstract. One of the major global concerns nowadays is definitely the pollution.
The effects are more and more visible as time passes, our daily activities affecting
the environment more than they should. Pollution has effects on air, water and soil.
According to the European Economic Area (EEA), air pollution is the main cause
of premature death in 41 European nations. Their studies found high levels of air
pollutants in Poland that came second on the list, topped by Turkey. Therefore, in
this article we aim to determine a model for greenhouse gas (GHG) emissions and
atmospheric pollutants in Poland based on a set of data retrieved from a European
statistics website.
1 Introduction
Although pollution is a seemingly unobservable phenomenon, the consequences are
extremely serious and difficult to overcome. The air we breathe contains 79% nitro-
gen, 20% oxygen and the remaining 1% carbon dioxide, hydrogen, methane, helium,
and others. When these toxic gases increase in proportion in the atmospheric air, pol-
lution occurs, and the effects are severe. This phenomenon can appear due to natural
causes, as volcanic eruptions, dust storms or even mist, or due to anthropogenic activities
[1, 3–8, 14].
The artificial sources of pollution are those created by humans, i.e.: the burning
of fossil fuels that throw large quantities of carbon dioxide into the atmosphere, the
industrial processes and the use of solvents in the chemical industry, agriculture, after
which many particles of used substances are dispersed in the air, etc.
Pollution falls into three categories depending on its source:
• Physical pollution, which includes noise pollution, created by land and air transport,
construction sites, industrial platforms, and radioactive pollution, due to the emission
and propagation of electromagnetic waves, the processing of radioactive minerals,
nuclear fuels and others;
• Chemical pollution, which occurs when carbon oxides, sulphur compounds, or nitro-
gen compounds (all of which come mostly from fuel combustion) are released into
the atmosphere in immense quantities;
© Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 133–145, 2020.
https://doi.org/10.1007/978-3-030-39237-6_9
134 M.-A. Badea et al.
• Biological pollution, which occurs as a result of the spread of microbial germs in the
atmosphere.
To combat these issues globally, many countries have agreed to pass laws that would
reduce certain types of pollution by introducing green energy from solar panels, wind
forests, or dams – instead of chemical plants, investing in the development of electric
motors for cars, or establishing jurisdictions for discouraging the waste from plants and
factories [1].
There are several websites where real-time data on pollution levels are displayed
for many cities around the world [11]. Analysing those data, it can be seen that in Asia
the air quality index sometimes reaches alarming levels of over 500, while in Europe it
generally does not exceed 130.
From the industrial revolution to the present days, the society has experienced
an exponential increase of the industry and implicitly of the environmental pollution.
Although the side effects have started to be visible relatively recently, the society still
does not take seriously how severe the situation is.
The gas emissions that create the greenhouse effect, the carbon dioxide, sulphates,
and all the elements eliminated in the atmosphere through various industrial procedures
lead slowly to the climate and health problems we are facing today, although they could
be avoided with the development of green energy technologies [1].
Throughout the 1960s, northern Europe experienced one of the largest deforestation
and transformation of the region into human residences, factories and especially mining
areas. This fact has altered the environment by extracting ores and releasing toxic gases
into the atmosphere through industrialization [14].
Poland, the country studied in this article, experienced an accelerated development
of the industry after the World War II, today being one of the most polluted coun-
tries in Europe [8]. Until the 1990s, carbon dioxide emissions reached alarming levels;
however they began to decline, due to the environmental protection rules implemented
and imposed by the governments of northern European countries, Germany, the Czech
Republic and Poland [20].
In the Polish power plants, 80% of the burnt fossil fuel is coal, which led to serious
diseases and premature death [19]. Another factor that determines the high level of
pollution in Poland is the infrastructure that allows people to use poor quality coal or
garbage to supply their heating systems in winters instead of using an electric heating
system which is more environmentally friendly [1].
At this moment, the policy of the Warsaw government is aimed at protecting the
mining industry in the coal sector, which has a large impact on the labour market in
the country. According to World Health Organization (WHO), the inhabitants of Poland
breathe air containing almost 30 times more carcinogenic particles than ten years ago,
and, consequently every year in Poland about 50,000 people die prematurely from poor
air quality [14, 19, 21]. Moreover, 36 of the 50 most polluted towns and cities in Europe
are in Poland [20], mostly from the mining areas of Silesia, and the southern areas
affected by deforestation. For locals in Krakow, for example, diseases such as asthma
and heart or circulatory system disorders are commonly encountered due to exposure to
high levels of air pollution [19].
Prediction of Greenhouse Series Evolution. A Case Study 135
3 Mathematical Modeling
The first stage of the study was to perform the statistical analysis of the data series,
as the computation of the basic statistics, testing data normality, homokedasticity and
autocorrelation.
Data normality was tested using the Shapiro-Wilk test [2]. The homokedasticity was
assessed by the Levene test, and autocorrelation was studied by using the autocorrelation
function [2].
The “U” Buishand test is a Bayesian procedure applied in the hypothesis that the
studied series is normal. The break absence represents the null hypothesis, H0 [9, 10].
The test is based on the following model that supposes a change in the series mean:
μ + εi , i = 1, . . . , m
Xi = (1)
μ + εi + δ, i = m + 1, . . . , N
where εi are independent and normal distributed random variables, with null expectancy
and a constant unknown variance, σ2 . The break point, m, and the parameters μ and δ
are not known.
An alternative to finding break points is the application of the Hubert test, and
the validation of these points is done with the help of Scheffe’s test at a significance
level equal to 1%. The principle is to divide our series in n segments (n > 1) such
that the calculated means of the neighbours sub-series significantly differ. To limit the
segmentation, the means of two contiguous segments must be different [16].
• Moving average;
• Simple exponential smoothing method;
• Double exponential smoothing;
• Holt-Winters method.
3.6 AR(p)
Our final step was to determine an autoregressive model (AR) and performing the
prediction using the determined model.
Autoregressive processes are memory processes, because each value is correlated
with the previous. In the case of a moving average process, each value is determined
according to the value of the current shock and one or more shocks. The order of the
moving average indicates the number of previous shocks.
The autoregressive model of order p, AR(p), is a linear process (X t ; t ∈ Z) defined
by the following formula:
p
Xt = ϕ i · X t−i + ε t , ∀ϕ q = 0, t ∈ Z, (8)
i=1
For detail on ARIMA and hybrid models, one can see [2, 15, 22].
4 Results
The normality test showed that the series is not normally distributed, but after a Box-Cox
transformation with a parameter 0.48, it becomes Gaussian. Therefore, the Buishand test
could be performed.
The results of the Levene test performed by dividing the initial series in four groups
are displayed in Fig. 2. The dispersion of the data belonging to Group 2 is quite different
Fig. 2. The result of the Levene test on the initial data series
Prediction of Greenhouse Series Evolution. A Case Study 139
compared to those of the other groups. The p-value associated to the Levene test is almost
zero, so less than 0.05, so the homoskedasticity hypothesis can be rejected.
The correlogram built to study the data autocorrelation (Fig. 3) shows high data auto-
correlation at different lags [5]. Remark the autocorrelations at the lags 1, 2, and 3 (verti-
cal bars representing the autocorrelation values, intersect the dashed curved representing
the limits of the confidence intervals).
Fig. 4. The control ellipse of Bois, in the Buishand test performed at different confidence levels
(90%, 95%, 99%)
140 M.-A. Badea et al.
Table 1. Results of the Hubert segmentation procedure. Beginning and end represent the moments
when the subseries detected begin and start. Mean and standard deviation of the subseries are
displayed in the third and fourth columns.
Therefore, for modelling purposes, the series should be divided in sub-series. But,
for forecast the future values, this is not a good idea because the pattern of the series
evolution is not entirely captured.
• KPSS test for stationarity in level: test statistics = 0.3802, p-value = 0.08569,
• KPSS test for stationarity in trend: test statistics = 0.14787, p-value = 0.04844.
Therefore, the results show that the series is stationary in level, but not stationary
in trend, at the significance level of 5%. This result confirms the visual examination of
series chart (Fig. 1). However, for a lower level of significance below 4%, the hypothesis
of stationarity in trend could not be rejected.
After performing tests for several season lengths, the seasonal decomposition didn’t give
satisfactory results. The best result obtained using an additive model, for k = 12 seasons,
can be seen in Fig. 5. However, the value for MSD is 41.184, which is quite high.
Applying the Moving Average method to the study series, with 12 terms, no improve-
ment has been notice, in terms of MSD or MAD. Diminishing the terms considered
Prediction of Greenhouse Series Evolution. A Case Study 141
Using the Double Exponential Smoothing for different level of the parameters,
the MSD corresponding to the best fitting was 22.705, with a MAD of 3.086, so no
improvement comparing to Simple Exponential Smoothing.
4.6 AR Model
To select the best ARIMA model, BIC and Schwarz criteria have been used. The best
one was obtained after taking logarithms of the data. It has the equation:
From Fig. 9 it results that the residuals are symmetrical distributed and Gaussian.
The residuals’ correlogram (Fig. 10) shows that the residual are not correlated, all the
values of the autocorrelation function being inside the confidence interval [1, 2].
The Bartlett and Levene test of homoskedasticity (Fig. 11) prove that the hypothesis
of the residuals’ homoskedasticity cannot be rejected since the p-values associated to
these tests are greater than 0.05 [1, 2].
Following the Box-Pierce test, it results that the residual series form a white noise.
Therefore, the AR(2) model proposed is correct point of view of statistics.
144 M.-A. Badea et al.
5 Conclusion
The study emphasized different methods for modelling the pollutants’ evolution in
Poland. It was shown that detecting a model in the presence of change points in a data
series is a very difficult task. After performing several tests and analysing the presented
models, we determined that the model that suited best our data set is of AR (2) type. It
was validated by statistical methods, so it can be used for forecast. In similar condition,
the model gives good forecasts for the pollution in the study region.
Do to the high variability of the pollution phenomena and the increasing trend
observed nowadays, it is important to know to model and predict the evolution of
associated data series. Other methods can be attempted, using, for instance, artificial
intelligence, such as deep learning, neural networks or genetic algorithms [4, 20].
References
1. Atkinson, R.W., Ross Anderson, H., et al.: Acute effects of particulate air pollution on res-
piratory admissions: results from APHEA 2 project. Air Pollut. Healndth 164, 1860–1866
(2001)
Prediction of Greenhouse Series Evolution. A Case Study 145
1 Introduction
Facial attributes analysis has received considerable attention in the last decade
due to its numerous implications in real-world applications, including video
surveillance systems, soft biometrics analysis, fashion and visagisme and face
image synthesis.
Video surveillance has been used to improve safety and security, especially
in crowded spaces such as airports or more recently in schools, universities and
even concert venues. Analyzing faces is useful for identifying potentially black-
listed persons. On a similar note, with the rise of online shopping a new field in
the fashion industry was developed - visagisme - which helps people select the
accessories which best fit their appearance in the comfort of their home. One
important module of any visagisme system is the automatic analysis of facial
attributes: gender, hair color, hair hairstyle, skin and eye colors etc.
The remainder of this work is organized as follows: in Sect. 2 we briefly
describe other state of the art works which tackle the problem of facial attribute
analysis. In Sect. 3 we present the outline of the proposed solution, and we detail
all the modules in Sects. 4 and 5. The conducted experiments are described in
Sect. 6 and, finally, the conclusions are presented in Sect. 7.
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 146–157, 2020.
https://doi.org/10.1007/978-3-030-39237-6_10
Analysing Facial Features Using CNNs and Computer Vision 147
Face detection
Face landmarks
Gender recognition Hair segmentation
detection
Hair geometry
Lips Eyes Skin Eyebrows Eyeglasses Female / detection
Male
Rims shape
Color recognition
detection
Hair
Lip Eye Skin Eyebrow Hair geometry
color color tone color color
Fig. 1. Solution outline. The localization modules are displayed in red, while the
attribute analysis modules are displayed in blue. (Color figure online)
localization modules are red, while the recognition modules are blue. First, we
use an off-the-shelf face machine learning library [12] to localize the face region
and extract 68 points around the most prominent features of the face, referred
to in the following as landmarks.
Next, based on the position of these landmarks we devised several modules
to localize and analyze the color of the lips, eyes, hair, skin and eyebrows. Due
to the complexity of the problem we use fully convolutional neural networks to
segment the hair pixels. Following this step, the obtained segmentation masks
were matched against some predefined hair templates to determine the geometry
of the hair. A lightweight convolutional neural network was used to extract the
gender information from face images. Finally, a separate module determined the
presence of eyeglasses and their shape.
We defined two categories of tasks based on the technology we employed:
learning based tasks and image processing based tasks. The learning based tasks
include the tasks where we made use of either machine learning classifiers such
as decision trees and support vector machines and various convolutional neural
networks. The image processing based tasks were implemented employing pat-
tern matching strategies and probabilistic algorithms. There were also tasks that
required an ensemble of technologies, which we will include in the learning based
tasks category.
Due to the complexity of the problem, the gender detection task was tackled by
employing convolutional neural networks. We opted for a lightweight network -
MobileNet [8], which replaces all the classical convolutional layers with depth-
wise convolutions and therefore it is suitable for fast classification even on mobile
Analysing Facial Features Using CNNs and Computer Vision 149
devices. The network was trained on 60.000 images from the CelebA [13] dataset,
using stochastic gradient descent optimizer and a batch size of 128 images.
Hair segmentation is more complex than the localization of other facial features:
first of all, the hair region cannot be easily estimated as modern hairstyles have
different geometries (short, asymmetrical, curly, braided etc.). Second, the color
distribution of natural hair tones is not uniform.
Our system uses a modified version of the vgg-16 neural network architecture
as in [14]. The segmentation network comprises 5 convolutional layers each one
followed by max-pooling layers. It uses ReLU as activation functions, followed
by three fully connected layers. At the end, a de-convolutional layer is added.
The network was pre-trained on the Pascal VOC dataset [4].
The network was trained on facial images of size 224 × 224. Each image, both
for training and for inference, undergoes the following pre-processing steps. First,
the image is cropped based on the face rectangle; the face region is enlarged by
a factor of 3.5 so that it comprises the hair area and only this enlarged face area
will be processed by the network. Next, the pixels intensities from this cropped
image are scaled as described in [14].
The network was trained to distinguish between two classes of pixels: hair
and non-hair, and we used Intersection over Union (IoU) as loss function: This
metric is a scale invariant, and it calculates the similarity between two finite
sets, by dividing the size of the intersection by the size of the union:
|A ∩ B|
IoU (A, B) = . (1)
|A| ∪ |B|
The network was trained on images from the Part Labels Database database
[10]. Some examples of hair segmentation masks are depicted in Fig. 2.
The next step is to estimate the hair geometry based on the segmentation
masks computed by the network. We created two sets of predefined hair tem-
plates: one for female haircuts HairF and the other one for male haircuts HairM ,
as depicted in Fig. 3. All the template images have a width equal to M W = 200
pixels and contain only the hair area (with no extra padding). The template
150 D. Borza et al.
Fig. 2. Hair segmentation samples - in each image the detected hair area is overlayed
with red. (Color figure online)
matching process takes into account the gender information: the segmentation
mask is compared only with the hair templates form HairF if the gender recog-
nition network gave a positive female prediction, and only with the templates
from HairM otherwise.
Prior to matching a mask with the predefined templates, it undergoes the fol-
lowing transformations: first, all the pixels that segmented as hair pixels and lie
within the face area (determined by the dlib landmarks) are suppressed (marked
as non-hair). Then, the hair mask is cropped to the bounding rectangle of the
largest detected hair area. This cropped image is scaled so that its width is equal
to M W S and the height dimension is scaled accordingly such that the aspect
ratio of the mask is preserved.
Finally, the processed hair mask is compared to the templates from the ade-
quate set (HairM or HairF ) using the IoU (Eq. 1) metric. The template which
gave the highest IoU is given as output by the hair geometry analysis module.
To determine the hair color, we use the method described in Sect. 5.2.
Analysing Facial Features Using CNNs and Computer Vision 151
The proposed system also determines the presence (detection) and shape of the
eyeglasses. For the detection part we trained a neural network using images
from the CelebA [13] dataset. We used a CNN classifier and not classical image
processing methods based on edge/gradient related features, because we noticed
that the gradient magnitude is quite small in the case of rimless eyeglasses.
If the network detects the presence of eyeglasses, we use a two stage algo-
rithm to determine the shape of the rims. We apply the same algorithm twice,
symmetrically, for the left and the right rim. The image and facial landmarks
used in this module are rotated such that the roll angle is zero. The first step
is to determine the geometry of the eyeglasses rims: their center and their size.
We crop the image to a region around the eyes and we perform a Canny edge
detection on this region. The edges corresponding to the eye are filtered out (this
edges can be easily determined from dlib facial landmarks). Next, we project the
Canny edge map both vertically and horizontally, and we compute the bounding
box of the rim based on the local maxima of these projections. After the region
of the eyeglasses is established, we apply Distance Transformation on the Canny
edge map.
Finally, we use a Distance Transform matching to select the shape of the eye-
glasses from a predefined dataset of eyeglasses contours. Each eyeglasses template
shape is superimposed over the Distance Transform map and the matching score
is computed as the average of all pixels Distance Map which lie underneath the
template. Prior to the matching step, the contours from the predefined dataset
are scaled (by preserving the aspect ratio), such that the width of the bound-
ing rectangle of the contour is equal to the bounding rectangle of the detected
eyeglasses.
The skin segmentation module uses both geometry and appearance information
to determine the skin pixels.
First, based on the position of the facial landmarks we estimate a region of
interest around the cheeks and the nose where only skin pixels should be present.
We select this region of interest as other regions on the face such as the chin,
forehead or cheeks are more likely to be covered by facial hair. Next, we convert
the image to HSV color-space and we use histogram back-projection to compute
a mask of the skin pixels: mask backproj.
To ensure that we don’t take any information outside the face area, we
compute the intersection of mask backproj with a mask which describes the
geometry: mask geom. This mask is generated from the position of the facial
landmarks. The entire process process in illustrated in Fig. 4.
152 D. Borza et al.
Fig. 4. Skin pixels detection module. (a) ROI around the nose and cheeks used for
histogram back-projection. (b). Mask obtained from histogram back-projection. (c).
Skin mask determined from the dlib landmarks positions. (d). Skin mask.
The proposed system analyses the color of the following facial features: the
eyes, the eyebrows, the lips, the skin and the hair. One of the most challenging
problems in color analysis is its sensitivity towards illumination changes.
We devised a statistical method to ensure stability towards illumination
changes. We computed a target brightness value for the skin pixels using images
from the Chicago face database [15]. The database contains high-resolution facial
images captured in highly controlled environments of subjects belonging to dif-
ferent ethnicities. In order to make sure the persons in these images to belong
to different ethnicities, we manually selected a subset of 300 images from this
database. We extracted the skin pixels (as described in Sect. 5.1), converted them
to HSV color space and we computed the average value of the Value channel:
AV Gh .
For each test image, we converted it to HSV color space, we set the value
channel to the precomputed target value, AV Gh , and we converted the image
back to the RGB color-space. This way we ensure that our method is robust
to brightness changes. The color analysis operates on this transformed RGB
image. To detect the dominant color from a region we compute a 3D histogram
from all the pixels within the region of interest and we select the center of the
maximal sub-cube (the sub-cube that contains the highest density of pixels) as
the prominent color of that region.
For the eyebrow segmentation part we started from the eyebrow points detected
by the dlib framework [8] and we established a rectangular region of interest,
thus approximating their position.
Next, we applied Otsu thresholding on this area to find an optimal threshold
which would highlight the eyebrow pixels (it is fair to assume the histogram of
this area has a bimodal distribution, as there are only skin and eyebrow pixels).
However, we noticed that in images captured in challenging brightness condi-
tions, some skin pixels fall within the “darker” class using Otsu thresholding.
Analysing Facial Features Using CNNs and Computer Vision 153
Therefore, we defined a maximal shape and location for the eyebrow pixels based
on the landmarks detected by dlib. In the final step, only the pixels from the
“darker” class, which fall under this ideal eyebrow mask are considered to be
eyebrow pixels. Some results of this step are illustrated in Fig. 5.
Fig. 5. Eyebrow segmentation samples. In each cell, the first image represents the
region of interest for the eyebrow localization module, while the second is the segmented
eyebrow mask.
6 Experimental Results
To evaluate the proposed solution for facial analysis we used images from several
publicly available datasets: Adience [3], Chicago Face database and CelebA. The
images we used for evaluations have not been used for training, and we used
29000 test images. The majority of images from these databases (Adience and
CelebA) were captures in unconstrained environments, so they cover large pose
variations, illumination conditions and background clutter.
The hair segmentation task was evaluated on images from Part Labels
Database (PLD) (images which have not been used at training time) and from
Analysing Facial Features Using CNNs and Computer Vision 155
In Table 2, mIoU stands for mean Intersection over Union, while pixelAcc
stands for pixel accuracy:
pixelAcc = nii / ti , (3)
i i
1 n
mIoU = ii . (4)
ncl i ti + j nij − nii
In Eq. 3, above, ncl represents the total number segmentation classes, nij is
the number of pixels of class i predicted to be in class j, and ti the total number
of pixels in ground truth segmentation of class i.
To evaluate the eyeglasses detection task, we randomly selected 5000 images
from the CelebA dataset (2500 with persons wearing glasses and 2500 with-
out glasses), which were not seen by the network at the training phase. The
network attained 99.4% classification accuracy. During our evaluation, the eye-
glasses detection module gave no false positives.
To the best of our knowledge, for all the other image processing based tasks
(color analysis) no public data is available. Therefore, we also performed an
acceptance study to see how the proposed system behaves on real world data.
We developed a mobile application, which takes a picture using the front camera
of the device and extracts the facial attributes using the proposed system.
The system was tested by more than 15 subjects in different scenarios: indoor,
outdoor, in the car, day-time, night-time etc. In total, we evaluated the system on
more than 250 images. The skin and hair color extracted were good approximates
for the actual skin and hair color. However, in the case of eye color analysis we
noticed the following: in poor lighting conditions (outdoor-nighttime images or
indoor images with low light), the proposed system outputs black or brown eye
colors, even if the person depicted in the images had blue or green eyes. However,
for these degraded images, one might argue that even the human performance
for determining the eye color is low.
Another issue we observed was that if the person is wearing glasses and strong
reflections are present on the eyeglasses lens, our eye color extraction module
156 D. Borza et al.
is biased towards the blue class. We plan to fix this issue in a future version,
by also taking into account the eyeglasses information when analyzing the eye
color.
Acknowledgements. This work was made possible with the support of the “Institute
of Research, Development and Education in Computer Vision” (Asociat, ia Institutul
de Cercetare, Dezvoltare s, i Educat, ie ı̂n Viziune Artificială, http://icvcluj.eu/), Cluj-
Napoca, Romania, and Tapptitude (https://tapptitude.com/), a product development
agency, where the first iteration of the algorithm was built.
References
1. Borza, D., Itu, R., Danescu, R.: In the eye of the deceiver: analyzing eye movements
as a cue to deception. J. Imaging 4(10), 120 (2018)
2. Dantcheva, A., Erdogmus, N., Dugelay, J.L.: On the reliability of eye color classi-
fication as a soft biometrics trait. In: Proceedings of WACV (2011, to appear)
3. Eidinger, E., Enbar, R., Hassner, T.: Age and gender estimation of unfiltered faces.
IEEE Trans. Inf. Forensics Secur. 9(12), 2170–2179 (2014)
4. Everingham, M., Gool, L., Williams, C.K., Winn, J., Zisserman, A.: The Pascal
visual object classes (VOC) challenge. Int. J. Comput. Vision 88(2), 303–338 (2010)
5. Hansen, D.W., Ji, Q.: In the eye of the beholder: a survey of models for eyes and
gaze. IEEE Trans. Pattern Anal. Mach. Intell. 32(3), 478–500 (2010)
6. Harville, M., Baker, H., Bhatti, N., Susstrunk, S.: Consistent image-based mea-
surement and classification of skin color. In: IEEE International Conference on
Image Processing 2005, vol. 2, pp. II–374. IEEE (2005)
7. Hollingsworth, K.P., Bowyer, K.W., Flynn, P.J.: The importance of small pupils:
a study of how pupil dilation affects iris biometrics. In: 2008 IEEE Conference on
Biometrics: Theory, Applications and Systems. pp. 1–6. IEEE (2008)
Analysing Facial Features Using CNNs and Computer Vision 157
8. Howard, A.G., et al.: MobileNets: efficient convolutional neural networks for mobile
vision applications. arXiv preprint arXiv:1704.04861 (2017)
9. Jmal, M., Mseddi, W.S., Attia, R., Youssef, A.: Classification of human skin color
and its application to face recognition. In: The Sixth International Conferences on
Advances in Multimedia, MMEDIA. Citeseer (2014)
10. Kae, A., Sohn, K., Lee, H., Learned-Miller, E.: Augmenting CRFs with Boltzmann
machine shape priors for image labeling (2013)
11. Kazemi, V., Sullivan, J.: One millisecond face alignment with an ensemble of regres-
sion trees. In: Proceedings of the IEEE Conference on Computer Vision and Pattern
Recognition, pp. 1867–1874 (2014)
12. King, D.E.: Dlib-ml: a machine learning toolkit. J. Mach. Learn. Res. 10, 1755–
1758 (2009)
13. Liu, Z., Luo, P., Wang, X., Tang, X.: Large-scale CelebFaces attributes (CelebA)
dataset (2018). Accessed 15 Aug 2018
14. Long, J., Shelhamer, E., Darrell, T.: Fully convolutional networks for semantic
segmentation. In: Proceedings of the IEEE Conference on Computer Vision and
Pattern Recognition, pp. 3431–3440 (2015)
15. Ma, D.S., Correll, J., Wittenbrink, B.: The Chicago face database: a free stimulus
set of faces and norming data. Behav. Res. Methods 47(4), 1122–1135 (2015)
16. Muhammad, U.R., Svanera, M., Leonardi, R., Benini, S.: Hair detection, segmenta-
tion, and hairstyle classification in the wild. Image Vis. Comput. 71, 25–37 (2018)
17. Rousset, C., Coulon, P.Y.: Frequential and color analysis for hair mask segmenta-
tion. In: 15th IEEE International Conference on Image Processing, ICIP 2008, pp.
2276–2279. IEEE (2008)
18. Shen, Y., Peng, Z., Zhang, Y.: Image based hair segmentation algorithm for the
application of automatic facial caricature synthesis. Sci. World J. 2014 (2014)
19. Yacoob, Y., Davis, L.: Detection, analysis and matching of hair. In: Tenth IEEE
International Conference on Computer Vision, ICCV 2005, vol. 1, pp. 741–748.
IEEE (2005)
20. Yoon, S., Harville, M., Baker, H., Bhatii, N.: Automatic skin pixel selection and
skin color classification. In: 2006 International Conference on Image Processing,
pp. 941–944. IEEE (2006)
Composite SVR Based Modelling
of an Industrial Furnace
1 Introduction
systems has its own challenges. As already mentioned, this paper presents a
study of an industrial billet heating furnace. The next subsections introduce the
furnace and describe the models developed, namely the Computational Fluid
Dynamics model, the Reduced-Order model and the proposed Machine Learning
model.
The studied furnace is a linear propane furnace used to heat metal parts, known
as billets, to a temperature of approximately 1030 K to 1060 K [17], and thus
preparing them for extrusion. The billets are produced in a melting furnace, have
a variable composition and are in the shape of a cylinder (see Fig. 1).
Fig. 1. Geometrical model of the billet heating furnace (the walls of the furnace are
represented in grey and the billets are copper-coloured).
Large industrial process heating furnaces are complex systems designed to deliver
heat to loads for many distinct processes. They are critical for the final product
quality and should run efficiently so that energy usage and operation costs are
kept the lowest possible.
SVR Modelling of an Industrial Furnace 161
In these equations, ρ stands for density, t for time, u is the velocity vector, p
the pressure, τ the shear stress, e the specific energy and k the thermal conduc-
tivity. Furthermore, Yi is the mass fraction of the ith chemical species, Di the
diffusivity coefficient of the ith chemical species in the mixture, ω̇ the reaction
rate and SF , Se , and Si are the source terms for the equations of momentum,
energy and mass of the ith chemical species.
In this study, the three-dimensional, steady transport equations were solved,
following the Reynolds-averaged Navier-Stokes (RANS) approach and using
the two equations realizable k- model for turbulence closure. Combustion was
treated as an irreversible reaction and radiation was also taken into account in
the simulations.
The first simulations of the billet heating furnace covered the entire com-
bustion zone (with 312 burners) and the preheating zone that precedes it and
were used to validate the CFD model implemented against real data measured
on site [3,8]. However, the CFD simulations of the long furnace took too much
time (around 300 h each) and proved to be inadequate for the generation of the
large training dataset needed by the machine learning model. As a consequence,
a smaller, simplified geometrical model of the real furnace was built. The model
is composed of a line of burners (4 burners) instead of the 78 lines of burners
(4 × 78 = 312 burners). Although, much shorter, it is a representation of a generic
section of the combustion zone of the furnace and retains the basic phenomena
that occur inside the furnace.
For the simulations, the commercial software Fluent 19.0 was used [1]. Fur-
ther description of the model development can be found in [3,8].
Fig. 3. CFD model, RO model and grey-box model composed by the RO and ML
models.
classification problems, this idea can also be used for regression problems where
it is referred as Support Vector Regression (SVR) [6].
This algorithm has a set of hyper-parameters, the most important ones being:
– kernel: the function that transforms the data from the original space into a
high dimension feature space. It can be linear, polynomial, sigmoid or radial
basis (RBF) functions, among others;
– C: the penalty parameter. It controls the trade-off between overfitting (low
training error) and generalization (low testing error);
– epsilon: Determines the level of accuracy of the approximated function;
– degree: polynomial kernel parameter;
– gamma: RBF kernel parameter.
4.2 Dataset
As previously mentioned, and since it was not possible to get enough furnace
working points real data, we used the results of the CFD model of a section of
an industrial furnace for heating metal billets that uses liquefied propane gas as
fuel.
First, an analysis of all the available variables (from the CFD and RO models)
was made to decide which would be the input (able to be measured during the
operation of the furnace) and the output variables for the machine learning
model development.
The exhaust combustion gas temperature downstream, known as TGO, one
of the eight CFD continuous variables was considered the dependent variable
that the ML model will estimate (also known as output variable). The other
seven CFD variables behave as inputs to the model. The RO model generates
new five continuous variables (beside the exhaust combustion gas temperature
SVR Modelling of an Industrial Furnace 165
estimated output) that are also considered input variables. This totals thirteen
continuous input variables plus the output one.
Then, the correlation between all pairs of variables was calculated and a
heatmap produced. The heatmap can be seen in Fig. 4.
4.3 Experiments
The proposed method was tested according to 2 different architectures:
In the first proposed architecture, RO+SVR, the SVR aims at predicting the
difference between the RO model output and the CFD output (the RO model
prediction error). This difference enables the adjustment of the RO model output
to a value closer to the CFD output.
In the second case, RO2SVR, the SVR receives, as input, the estimated
exhaust combustion gas temperature (TGO) from the RO model, besides the
remaining fourteen attributes and directly aims at predicting the TGO value
given by the CFD model.
To tune the SVR, a grid search algorithm was used to find the best combination
of hyper-parameters. The chosen kernel was RBF and the considered range for
the parameters was:
Using 80% of the dataset and a 10 fold cross-validation procedure, the optimal
combination of hyper-parameters was found to be C = 100, gamma = 1 for
both architectures and epsilon = 0.0005 and epsilon = 0.01 for RO+SVR and
RO2SVR, respectively.
Having set the parameters, a 10-fold cross validation was used to evaluate
the performance of the built model. To evaluate the SVR prediction power two
measures were used: the root mean square error (RMSE) and the mean absolute
percentage error (MAPE), that can be calculated by Eqs. 5 and 6, respectively.
In the equations, n is the number of examples, Yi is the real value and Ŷi is the
SVR Modelling of an Industrial Furnace 167
predicted one.
n
1 2
RMSE = Yi − Ŷi (5)
n n=1
100% Yi − Ŷi
n
MAPE = (6)
n n=1 Yi
4.5 Results
Table 2 presents the results obtained for the two evaluation measures (RMSE
and MAPE) and two proposed architectures (RO+SVR and RO2SVR); the last
column presented the results given by the Reduced-Order model. Note that while
MSE and RMSE are calculated over absolute differences, MAPE is a normalised
measure.
As we can see, the proposed approach (using any of the proposed architec-
tures) significantly reduces the error to around one third in RMSE and MAPE
when compared to the results from the RO model. On the other hand, the errors
obtained with the RO+SVR and RO2SVR architectures are very similar.
Figure 5 presents, for each test example, the RO+SVR model data points:
the TGO predicted vs. actual values (CFD output).
On the other hand, Fig. 6 presents, again for each test example, the RO2SVR
model data points: TGO predicted vs. actual values (CFD output).
Looking at Fig. 5 one can argue that, of the 20 test operating points only four
have a difference higher than 50K, and nine have a difference less than 25K.
On the other hand, looking at Fig. 6 the number of predicted points having a
difference higher than 50K is three, with nine having a difference less than 25K.
Nonetheless, given the size of the dataset these differences don’t seem to be
significant (as also can be seen from Table 2).
168 D. Santos et al.
Fig. 5. RO+SVR: TGO predicted vs. actual values for the test set.
Fig. 6. RO2SVR: TGO predicted vs. actual values for the test set.
The results presented in this work show that the Machine Learning proposed
approach is adequate to help building mathematical models to use in energy
audits. The proposed approach demonstrates that physically based Reduced-
Order models complemented with black-box models generate a hybrid composite
grey-box model with increased accuracy while keeping a low computational load
to run.
SVR Modelling of an Industrial Furnace 169
Acknowledgements. This study was funded by the Alentejo 2020, Portugal 2020
program (Contract nr: 2017/017980) and by FCT – Fundação para a Ciência e Tec-
nologia (project UID/EMS/50022/2013).
References
1. ANSYS: FLUENT software. https://www.ansys.com/products/fluids/ansys-
fluent. Accessed 02 Aug 2019
2. Bernieri, A., D’Apuzzo, M., Sansone, L., Savastano, M.: A neural network approach
for identification and fault diagnosis on dynamic systems. IEEE Trans. Instrum.
Meas. 43(6), 867–873 (1994). https://doi.org/10.1109/19.368083
3. Cavaleiro Costa, S., et al.: Simulation of a billet heating furnace. In: V Congreso
Ibero-Americano de Emprendimiento, Energı́a, Ambiente y Tecnologı́a (CIEEMAT
2019), vol. 1, September 2019
4. Chon, K.H., Cohen, R.J.: Linear and nonlinear ARMA model parameter estima-
tion using an artificial neural network. IEEE Trans. Biomed. Eng. 44(3), 168–174
(1997). https://doi.org/10.1109/10.554763
5. Cortes, C., Vapnik, V.: Support-vector networks. Mach. Learn. 20(3), 273–297
(1995). https://doi.org/10.1023/A:1022627411411
6. Drucker, H., Burges, C.J.C., Kaufman, L., Smola, A.J., Vapnik, V.: Support vector
regression machines. In: Mozer, M.C., Jordan, M.I., Petsche, T. (eds.) Advances in
Neural Information Processing Systems, vol. 9, pp. 155–161. MIT Press, Cambridge
(1997). http://papers.nips.cc/paper/1238-support-vector-regression-machines.pdf
7. Hachino, T., Takata, H.: Identification in nonlinear systems by using an automatic
choosing function and a genetic algorithm. Electr. Eng. Jpn. 125(4), 43–51 (1999)
8. IPS, UEv: Simulações CFD. Descriçõo de Resultados. Deliverable 3.3. Audit Fur-
nace Project (2019)
170 D. Santos et al.
9. Liao, Y., Wu, M., She, J.: Modeling of reheating-furnace dynamics using neural
network based on improved sequential-learning algorithm. In: 2006 IEEE Confer-
ence on Computer Aided Control System Design, 2006 IEEE International Confer-
ence on Control Applications, and 2006 IEEE International Symposium on Intel-
ligent Control, pp. 3175–3181, October 2006. https://doi.org/10.1109/CACSD-
CCA-ISIC.2006.4777146
10. Ljung, L. (ed.): System Identification: Theory for the User, 2nd edn. Prentice Hall,
Upper Saddle River (1999)
11. Ljung, L.: Perspectives on system identification. IFAC Proc. Vol. 41(2), 7172–7184
(2008). https://doi.org/10.3182/20080706-5-KR-1001.01215. 17th IFAC World
Congress
12. Ljung, L.: Approaches to identification of nonlinear systems. In: Proceedings of
29th Chinese Control Conference, Beijing, China, July 2010
13. Narendra, K.S., Parthasarathy, K.: Identification and control of dynamical systems
using neural networks. IEEE Trans. Neural Netw. 1(1), 4–27 (1990). https://doi.
org/10.1109/72.80202
14. Narendra, K.S., Parthasarathy, K.: Neural networks and dynamical systems. Int.
J. Approximate Reasoning 6(2), 109–131 (1992). https://doi.org/10.1016/0888-
613X(92)90014-Q
15. Patra, J.C., Modanese, C., Acciarri, M.: Artificial neural network-based modelling
of compensated multi-crystalline solar-grade silicon under wide temperature vari-
ations. IET Renew. Power Gener. 10(7), 1010–1016 (2016). https://doi.org/10.
1049/iet-rpg.2015.0375
16. Rajesh, N., Khare, M., Pabi, S.: Application of Ann modelling techniques in blast
furnace iron making. Int. J. Model. Simul. 30(3), 340–344 (2010). https://doi.org/
10.1080/02286203.2010.11442589
17. Trinks, W., Mawhinney, M., Shannon, R.A., Reed, R.J., Garvey, J.R.: Industrial
Furnaces. Wiley, New York (2004)
A Conceptual Framework for Software
Fault Prediction Using Neural Networks
1 Introduction
Object oriented technology through its mechanisms like inheritance, abstraction,
data encapsulation, and polymorphism, can provide a comprehensive description
of software’s internal structure and nature. It is well known that, as in chess, only
knowing the rules, here the mechanisms of object orientation, are not enough
to achieve high quality design [17]. Therefore, we need principles and strategies
that need to be applied when designing an object oriented system.
Four internal characteristics are linked to object orientation: coupling, cohe-
sion, complexity and data abstraction. These aspects define the main principles
of good object design. Thus, a software system design having low coupling, high
cohesion, manageable complexity and proper data abstraction, aims to achieve
quality attributes such as reliability, maintainability, extensibility, scalability
and reusability. In this respect, we can assess the internal characteristics of a
software system design in order to predict its external behaviour.
Software metrics are powerful means to quantify those aspects of a software
system design that are relevant for its assessment. Their values can be used in
order to predict other software attributes that are correlated with them. In this
respect, several studies reveal Chidamber and Kemerer (CK) [4] metrics having
a strong impact on software quality and particularly on software reliability by
predicting fault prone classes [1,3,12,15].
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 171–186, 2020.
https://doi.org/10.1007/978-3-030-39237-6_12
172 C. Serban and F. Bota
Software faults prediction deals with developing models that can be used in
the early phases of software development life cycle for detecting software compo-
nents that contain faults (bugs). Software testing is a time-consuming activity,
requiring also good planning and a lot of resources. Therefore, predicting software
faults is an utmost important process prior to testing activity to significantly
increase efficiency of time, effort and cost usage.
The contribution of this paper is twofold: firstly, we aim to approach the
problem of software fault prediction, defining a conceptual framework that incor-
porates components such as: the object oriented design model, metrics, and
methods used for prediction. Secondly, the paper aims to empirically establish
a combination of CK software metrics that offers the best accuracy for fault
prediction.
The reminder of the paper is organized as follows. In Sect. 2 we briefly
describe the main components of the proposed framework, the object oriented
design model, metrics, and neural network as a method for prediction. The for-
mal statement of the proposed approach and the research questions are defined
in Sect. 3 whereas Sect. 4 reviews related work on software fault prediction.
Section 5 describes our proposed model for fault detection based on neural met-
rics and CK metrics. We conclude our paper and give suggestions for extending
the approach in Sect. 6.
An artificial neural network [19] consists of multiple nodes or neurons with links
between them. There are some nodes that are used to supply the network with
values from outside and they are named input nodes. Also, there are some nodes
that are used to send to the outside values and they are named output nodes.
Each link between two neurons has a weight associated with it. Actually, the
learning take place by updating the weights such that difference between the
values sent to the outside by the network and the expected values converges
to zero. A layered feed-forward neural network (LFFNN) is a neural network
that has one input layer, one output layer and multiple hidden layers between
them. Each layer can have as many nodes as it is necessary. Nodes in a LFFNN
have the property that they can be linked only with the nodes in the next layer.
Figure 1 represents a layered feed-forward neural network with 6 nodes in input
layer, multiple hidden layers and one output node.
The learning happens in the following way: for a given input, the network
computes the output and compares it with the expected output. The error is
computed by taking the difference between the expected output and the actual
output of the network. If the error is acceptable (i.e. less than a previously
defined value), nothing happens and the learning process is terminated. Other-
wise, the computed error is used to adjust every weight from the network. Back-
propagation algorithm uses gradient descendent to determine how to adjust each
weight such that the next error to be smaller.
Software Fault Prediction Using ML 175
3 Problem Statement
The current research defines the problem of Software Fault Prediction as a regres-
sion problem, the goal being to predict the number of faults (bugs) found for a
given software component.
Supervised machine learning algorithms are commonly used to solve classi-
fication problems. They work as follows. As input, a set of instances are given,
each instance having a vector of features as independent variables. As output,
the algorithm predicts the value of a given feature, named dependent variable.
In our case, instances are object oriented design entities that are classes, their
features being the values of CK metrics, and the predicted value is the number
of bugs of the specified class. We chose classes as design entities for fault predic-
tion due to the fact that classes are the building blocks for an object oriented
design system, being self-contained elements from the point of view of design
and implementation.
Initially, a set of instances together with the values for the dependent and
independent variable are given, defining the training set. The act of generating
a classification model from the training set is referred to as learning. Learning
algorithms extract features from a given instance, and try to learn from the
training set the relation between the features of an instance and its class. A
key to the success of machine learning algorithms is the selection of features
considered for prediction. Many possible features were proposed in the literature
for software fault prediction. In this approach, the features are selected from the
CK [4] software metrics set, defined in Sect. 2.2.
RQ1: Does a subset of the CK metrics performs better than all metrics
for the task of predicting the number of bugs found in a class?
RQ2: Does the NN based prediction model performs better using a data
set defined by one single project than considering the dataset obtained
by reunion of all projects?
We used the sample standard deviation from 1 and the formula from 2 to
normalize our data. As you can see, we used z-score normalization because it
works better for outliers, meaning we actually standardized the data (reduced
the standard deviation to 1), as opposed to normalization, which rescales data
to 1 and 0 range.
x−x
zi = (2)
s
In Table 2, the count column represents the number of valid observations (i.e
the number of classes containing all the required metrics values, not null/NA),
Software Fault Prediction Using ML 179
mean is the average of the distribution and std is the standard deviation of
the observations. The min, max, 25%, 50%, 75% columns are alternative to
perspectives regarding the kurtosis of the distribution and their values show us
the dispersion(spread) of the records.
Imbalanced Data
Another issue we found in this project was that the classes featuring bugs were
a minority in our data source. For example, in the Eclipse dataset, only 20.66%
of the classes had at least one bug, so a naive model which always predicts 0
bugs would perform with ≈80% accuracy.
There are several solutions for this problem, and we experimented in our case
with one of them, specifically upsampling. Upsampling means replicating records
from the minority class and resample the set of data to increase its cardinality.
We oversampled our data after the split between training and testing sets so we
would have a balanced set of information. A random sampling algorithm was
used with a pseudo-random fixed seed and we experimented with several orders
of magnitude over the majority class (data with no bugs).
Another common solution is undersampling which consists in resampling
the majority class and keep only a part of the records. Of particular inter-
est is also the SMOTE (Synthetic Minority Over-sampling Technique) method,
which creates synthetic data based on the minority records. SMOTE synthesizes
new instances of minority data between the existing ones in order to shrink the
imbalance.
In order to predict the number of bugs for a given class, a feed-forward neural
network with back-propagation learning is used, with the following structure
180 C. Serban and F. Bota
(see Fig. 1): six nodes on the input layer, one node on the output layer and four
hidden layers, each of them having between 64 and 500 nodes. Each node uses
the ReLU activation function [18].
The CK metrics mentioned above are chosen to be the input vector of the
neural network. The number of bugs for a class is computed as the sum of all
types of bugs found in that class (see Table 1), being the expected output vector.
The termination condition of training is either no improvement of the cross-
validation data loss over 100 epochs, or the number of epochs to be at most
1200. After training this neural network, we obtained a neural network prediction
model for the number of bugs in a class.
In Table 3 we can see a sample of the input for our neural network after the
normalization process.
For this project we used the Google Colaboratory as a cloud-based machine
learning environment. We created several notebooks for each experiment, where
we used python as a programming language and Keras on top of Tensorflow as a
machine learning framework. The virtual machines presented 12.72 GB of RAM
and 24 GB of GPU GDDR5 memory. The training times were usually fast, as
our model is quite simple.
Software Fault Prediction Using ML 181
First Experiment
The first experiment was our baseline system check, where we used the default
parameters and variables, without any data cleanup or optimization, from the
Eclipse data set. We used only two hidden layers with 64 nodes each and the
optimizer was RMSProp(Root Mean Square Propagation) with a learning rate of
0.001. Learning rate or step size is a hyperparameter, which controls the rate at
which the model adapts to the new values during training. A high value might get
the model to jump over optimum values, while a too small value might take long
to train and can get stuck in a local minima. We started with a small number of
layers to test if the model can offer reliable results by using fewer resources.
Accuracy Loss
We ran the training for 400 epochs and the predictions were not very good,
with a volatile accuracy of the model. We used mean square error for our loss
function(one of the standard regression measures of the quality of an estimator
[23]), and the results can be seen in Fig. 3. The accuracy is normally calculated
as the fraction between the amount of correct predictions and the total number
of predictions.
Second Experiment
A second experiment was conducted to improve the results of our model and
check if the estimation proposed can be obtained using neural networks. In the
first experiment we used 2 hidden layers and the results were not the expected
ones, so we increased the number of layers to 4 in order to allow the network
to determine more complex patterns, with better accuracy. We processed the
data as described in Sect. 5.2 and added two more hidden layers in our model.
The learning rate was updated to 0.00001 and the optimizer was replaced with
Adam(Adapted Moment Estimation). Adam [11] is an adaptive learning rate
method, developed specifically for deep neural networks(it computes different
learning rates for different parameters) and is one of the most used optimizers.
The results seen in Fig. 4 are visibly better, and the Adam optimizer outper-
forms the previous one (it also outperforms SGD - Standard Gradient Descent
182 C. Serban and F. Bota
Accuracy Loss
for our data). There still are issues with the accuracy of the validation data, but
we can fix them mainly in the preprocessing phase. The final version of the sec-
ond experiment results can be seen in Fig. 5. They were obtained by increasing
the number of epochs to 1200, oversampling the minority data by a factor of 20
and changing the holdout percentage to 60%.
Third Experiment
In the third experiment we discovered a correlation between several metrics and
decided to perform the training using feature selection. The framework was fitted
with a subset selection component and we used an exhaustive search approach.
All the combinations of three metrics were generated (20 sets of data) and
we trained then tested the network on each of them separately. The results can
Software Fault Prediction Using ML 183
be seen in Table 4. For comparison we also ran the model over all the metrics
and the results are shown in Table 5. The accuracy and prediction error are
highlighted in Fig. 6.
Random Forests model (RF - collection of random decision trees) was trained
on our dataset, using all the metrics, with 200 estimators, for comparison rea-
sons. The results in our case show that neural networks performed better, RF
prediction presenting MAE: 1.49, MSE: 6.25, RMSE 2.50 and rounded accuracy
of 0.27.
An interesting answer for the second question was that when using all the
projects from the dataset the predictions performed worse than by using a sin-
gle project. In our experiments the accuracy was worse by 46.34%, from 0.41
accuracy for the JTD (Eclipse) project to 0.22 for all the projects (see Table 5).
References
1. e Abreu, F.B., Melo, W.L.: Evaluating the impact of object-oriented design on
software quality. In: 3rd IEEE International Software Metrics Symposium (MET-
RICS 1996), From Measurement to Empirical Results, March 25–26, 1996, Berlin,
Germany, pp. 90–99 (1996)
2. Alpaydin, E.: Introduction to Machine Learning. MIT Press, Cambridge (2014)
3. Basili, V., Briand, L., Melo, W.: A validation of object-oriented design metrics as
quality indicators. IEEE Trans. Software Eng. 20(10), 751–761 (1996)
4. Chidamber, S., Kemerer, C.: A metric suite for object-oriented design. IEEE Trans.
Software Eng. 20(6), 476–493 (1994)
5. D’Ambros, M., Lanza, M., Robbes, R.: An extensive comparison of bug predic-
tion approaches. In: Proceedings of MSR 2010 (7th IEEE Working Conference on
Mining Software Repositories), pp. 31–41. IEEE CS Press (2010)
6. Elmishali, A., Stern, R., Kalech, M.: An artificial intelligence paradigm for trou-
bleshooting software bugs. Eng. Appl. AI 69, 147–156 (2018)
7. Gao, J.: Machine learning applications for data center optimization. Technical
report, Google (2014)
8. Hall, T., Beecham, S., Bowes, D., Gray, D., Counsell, S.: A systematic literature
review on fault prediction performance in software engineering. IEEE Trans. Soft-
ware Eng. 38(6), 1276–1304 (2012)
9. Isong, B., Ekabua, O.O.: A systematic review of the empirical validation of object-
oriented metrics towards fault-proneness prediction. Int. J. Software Eng. Knowl.
Eng. 23(10), 1513 (2013)
10. Isong, B., Ekabua, O.O.: State-of-the-art in empirical validation of software metrics
for fault proneness prediction: Systematic review. CoRR abs/1601.01447 (2016)
186 C. Serban and F. Bota
11. Kingma, D.P., Ba, J.: Adam: A method for stochastic optimization. arXiv preprint
arXiv:1412.6980 (2014)
12. Kitchenham, B.A., Pfleeger, S.L., Fenton, N.E.: Towards a framework for software
measurement validation. IEEE Trans. Software Eng. 21(12), 929–943 (1995)
13. Kumar, L., Sripada, S., Sureka, A., Rath, S.K.: Effective fault prediction model
developed using least square support vector machine (LSSVM). J. Syst. Softw.
137, 686–712 (2017)
14. Li, W.: Another metric suite for object-oriented programming. J. Syst. Softw.
44(2), 155–162 (1998)
15. Li, W., Henry, S.M.: Object-oriented metrics that predict maintainability. J. Syst.
Softw. 23(2), 111–122 (1993)
16. Malhotra, R.: A systematic review of machine learning techniques for software fault
prediction. Appl. Soft Comput. 27, 504–518 (2015)
17. Marinescu, R.: Measurement and Quality in Object Oriented Design. Ph.D. thesis,
Faculty of Automatics and Computer Science, University of Timisoara (2002)
18. Nair, V., Hinton, G.E.: Rectified linear units improve restricted boltzmann
machines. In: Proceedings of the 27th International Conference on Machine Learn-
ing (ICML 2010), pp. 807–814 (2010)
19. Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach. Prentice Hall,
Upper Saddle River (1995)
20. Sayyad Shirabad, J., Menzies, T.: The PROMISE Repository of Software Engi-
neering Databases. School of Information Technology and Engineering, University
of Ottawa, Canada (2005). http://promise.site.uottawa.ca/SERepository
21. Serban, C.: Metrics in Software Assessment. Ph.D. thesis, Faculty of Mathematics
and Computer Science, Babes-Bolyai University (2012)
22. Tanh, M., Kao, M., Chen, M.: An empirical study on object-oriented metrics.
In: 6th IEEE International Software Metrics Symposium (METRICS 1999), 4–6
November 1999, Boca Raton, FL, USA. pp. 242–249 (1999)
23. Wang, Z., Bovik, A.C.: Mean squared error: love it or leave it? A new look at signal
fidelity measures. IEEE Signal Process. Mag. 26(1), 98–117 (2009)
24. Zimmermann, T., Nagappan, N., Gall, H.C., Giger, E., Murphy, B.: Cross-project
defect prediction: a large scale experiment on data vs. domain vs. process. In: Pro-
ceedings of the 7th joint meeting of the European Software Engineering Conference
and the ACM SIGSOFT International Symposium on Foundations of Software
Engineering, 2009, Amsterdam, The Netherlands, August 24–28, 2009, pp. 91–100
(2009)
Support Vector Machine Optimized
by Fireworks Algorithm for Handwritten
Digit Recognition
1 Introduction
Digital images become a part of almost every field in life and science, mostly
because digital image processing techniques facilitate applications unforeseeable
while only analog images were used. Numerous applications that use digital
images include object recognition, thus it represents a significant research area
and it deals with recognition of specific objects in digital images. One of the
object the recognition subareas is optical character recognition (OCR) which can
c Springer Nature Switzerland AG 2020
D. Simian and L. F. Stoica (Eds.): MDIS 2019, CCIS 1126, pp. 187–199, 2020.
https://doi.org/10.1007/978-3-030-39237-6_13
188 E. Tuba et al.
The rest of the paper is organized as follows. In Sect. 2 several methods for
handwritten digit recognition from literature are described. Guided fireworks
algorithm that is used for SVM optimization is described in Sect. 3. Our proposed
algorithm is presented in Sect. 4 and experimental results are described in Sect. 5.
At the end conclusion is given in Sect. 6.
2 Literature Review
Handwritten digit recognition was intensively studied in the past and numerous
methods were proposed in literature. In general, these methods contain three
parts where feature extraction and classification are the main parts of the method
while preprocessing, even though important, usually is not a crucial part of the
method.
Feature extraction technique based on recursive subdivisions of the character
image was proposed in [12]. Division of the handwritten digit image was done so
that the resulting sub-images at each iteration had approximately equal number
of digit pixels. For recognition a two-stage classification based on the granularity
level of the feature extraction method was used.
Histogram of oriented gradients was proposed as feature for handwritten
digits in [13]. It has been shown that this histogram was stable on illumina-
tion variation since it is a gradient based descriptor. Linear SVM was used for
classification.
In [14] a two-stage process for handwritten digit recognition was proposed.
The first stage was based on adaptive resonance theory and it was used to find
the initial solution. At the second stage a fine tuning was done for generating
the best prototypes. The classification was performed by the k-nearest neighbor
classifier.
Biologically inspired model for handwritten digit recognition was proposed in
[15]. Feature space was determined by the proposed biologically inspired model
and it was represented as binary code that was used as input vector for a linear
classifier. Competitive accuracy was achieved when compared to other linear
classifiers from literature.
Guided fireworks algorithm (GFWA) represents the latest version of the fire-
works algorithm (FWA) and it was proposed by Li, Zheng and Tan in 2016 [16].
Original fireworks algorithm was proposed in 2010 by Tan and Zhu [17] and the
idea was to simulate fireworks explosion with two different types of fireworks.
The first type is well manufactured firework which produces many sparks cen-
tralized around explosion point (exploitation, intensification) while the second
type is badly manufactured firework which produces several sparks scattered in
the space (exploration, diversification) [17].
190 E. Tuba et al.
ymax − f (xi )
λi = λ̂ n , (1)
j=1 (ymax − f (xj ))
f (xi ) − ymin
Ai = Â n , (2)
j=1 (f (xj ) − ymin )
where  represents the highest value of the explosion amplitude and ymin =
min(f (xi ), i = 1, 2, ..., n) is the best solution in one generation of n fireworks,
named core firework (CF). For the CF, explosion amplitude is calculated differ-
ently according to the following equation [16]:
⎧
⎪
⎨ACF (1) if t = 1,
ACF (t) = Cr ACF (t − 1) if f (XCF (t)) = f (XCF (t − 1)), (3)
⎪
⎩
Ca ACF (t − 1) if f (XCF (t)) < f (XCF (t − 1))
where t is the number of the current generation and Ca > 1 and Cr < 1 are
constants, parameters of the algorithm.
SVM Optimized by FWA for Handwritten Digit Recognition 191
In the GFWA, a guiding spark (GS) is generated for each firework. The GS is
obtained by adding a guiding vector (GV) to the firework’s position. The position
of the guiding spark Gi for firework Xi is defined by the following algorithm [16]:
In this paper projection histograms were used as the feature set for handwritten
digits. These features were usually used for typed digit recognition and even then
not as the only features but in combination with some others. We intentionally
selected this weak set of features to test our proposed optimized SVM classifier.
Projection histograms for different digits on x-axis are shown in Fig. 1.
Fig. 2. Example of histograms for digits 0, 8 and 3 on (a) x-axis and (b) y-axis
4.2 Classification
We used support vector machine as a classifier, where the described four his-
tograms were used as features i.e. input vector. Handwritten digit recognition
is a multi-classification problem and SVM is a binary classifier. Two well know
techniques are used for performing multi-classification by binary classifier. The
first is one-against-all that makes one model for each class where one class is
differentiated from all others and the second method is one-against-one where
n(n−1)
2 models need to be made (n is the number of classes). In one-against-one
method for each pair of classes one model is built. After obtaining the results
from all models, final decision can be made by voting. Both of these techniques
have good and bad characteristics, thus we proposed combination of them for
handwritten digit recognition. Our proposed classifier uses two stage classifi-
cation where in the first phase classes were determined by 10 different models
(one-against-all ). In the second phase, if the class was not determined uniquely
in the first phase, one-against-one technique was used.
SVM parameters C and γ need to be tuned in order to achieve better clas-
sification accuracy. As it was mentioned before, one of the simplest methods to
select these parameters is grid search. Grid search is time consuming and more-
over it performs rather rough search. For both parameters search range and step
size need to be set. Usually, grid search is performed in several iteration. The
first iteration has larger search range and larger step and in each next iteration
194 E. Tuba et al.
both are reduced. In order to achieve satisfying accuracy, in some cases step need
to be rather small. Thus, stochastic optimization algorithm is better choice for
this problem because of its faster convergence towards better solution and its
search space is not discrete.
As a preliminary step, we compared grid search and the proposed GFWA on
limited training data. Based on the results from our previous work in [9] it has
been established that the biggest problem was to differentiate digit 3 from digit
8. Since that is example where accuracy can be increased, we tested one-against-
one model for digits 3 and 8.
We experimented with two reduced training sets, with 500 and with 2000
instances of each digit. Table 1 shows obtained results for dataset with 1000
instances (500 instances for digit 3 and 500 for digit 8). Reported accuracies
were obtained by 10-fold cross validation. Grid search was performed in several
iterations. In the first iteration search range was set to [2−5 , 215 ] for C and
[2−15 , 25 ] for γ. Initially step for the exponent was 2. The best accuracy was
97.1% for C = 3 and γ = −1. The same accuracy was achieved when search
range was reduced around previously obtained best solutions and the step was
reduced to 1. In the third iteration when search range was even more reduced and
step was set to 0.25 accuracy of 97.4% was achieved and in the following iteration
that accuracy was not improved. Overall time for finding the best solution was
398 s. The proposed GFWA tuning found the model with the same accuracy for
parameters C = 10.8222 and γ = −0.2700 in 545 s. In this case grid search found
equivalent accuracy in less time. It should be noticed that the used training set
is rather small, thus it was easier to deal with.
Table 1. Grid search and GFWA optimization results on data set with 500 instances
for digits 3 and 8
When small training dataset is used, optimal parameters can be found easily.
But in the case of larger dataset, task is more complicated. It has been shown in
the next experiment where 2000 instances of both, digit 3 and 8 were used. In
Table 1 results for this case are shown, organized as in the previous case. As it can
be seen SVM model optimized by the GFWA obtained better accuracy then grid
search and moreover it was achieved faster. The best accuracy when GFWA was
used was 98.675% while with grid search, even when step was reduced to 0.1, it
was 98.624%. Based on this two examples it can be concluded that optimization
algorithm has advantage to grid search for larger datasets. For handwritten digit
recognition where large training datasets are needed, obviously GFWA is a better
choice (Table 2).
SVM Optimized by FWA for Handwritten Digit Recognition 195
Table 2. Grid search and GFWA optimization results on data set with 2000 instances
for 3 and 8
5 Experimental Results
Our proposed algorithm was implemented in Matlab version R2016b and LIB-
SVM (Version 3.21) [25] was used for SVM classification. All experiments were
performed on Intel R CoreTM i7-3770K CPU at 4 GHz, 8 GB RAM computer
with Windows 10 Professional OS.
The proposed handwritten digit recognition algorithm was tested on stan-
dard MNIST dataset [26], available at http://yann.lecun.com/exdb/mnist/. All
images in the MNIST dataset are centralized gray scale images that have reso-
lution of 28 * 28. Examples of images in the dataset are shown in Fig. 5.
In this paper SVM classifier optimized by the guided fireworks algorithm for
handwritten digit recognition was proposed. Rather simple features were used
in order to prove the quality of the proposed classifier. Our proposed algorithm
was compared with [9] where bat algorithm was used for the SVM optimization
using the same features, and with [11] where projection histograms combined
with zoning technique were used as features, while multi-layer perception neural
network was used as classifier.
In Table 3 confusion matrix obtained by the proposed algorithm is presented.
The lowest accuracy was achieved for digit 3 (92%), but it was increased com-
pared to the method proposed in [9] (89%). Improvements were also obtained
for digits 2 (from 95% to 98%), 4 (from 98% to 99%), 5 (from 91% to 93%), 7
(from 93% to 95%) and 9 (from 95% to 96%). Accuracy for the rest of the digits,
i.e. 0, 1, 6 and 8 was the same.
Comparison results for overall accuracy are presented in Table 4. As it can be
seen, guided fireworks algorithm successfully improved accuracy of classification.
SVM optimized by bat algorithm in [9] achieved overall accuracy of 95.60%,
while accuracy of the method proposed in this paper was 96.60%. Improvement
196 E. Tuba et al.
0 1 2 3 4 5 6 7 8 9
0 99 0 0 0 0 0 0 0 1 0
1 0 99 0 0 0 0 0 0 1 0
2 0 0 98 0 0 1 0 0 1 0
3 0 1 0 92 0 3 0 0 3 1
4 0 0 0 0 99 0 0 0 0 1
5 0 0 1 5 0 93 0 0 1 0
6 0 0 0 0 0 0 100 0 0 0
7 0 0 0 0 0 0 0 95 0 5
8 0 0 1 1 0 1 1 1 95 0
9 1 0 0 0 2 0 0 1 0 96
Table 4. Accuracy of classification reported in [9, 11] and our proposed method
was uniform over all digits i.e. accuracy of recognition for each digit was better
or same compared to the method proposed in [9]. It has been proven earlier that
for handwritten digit recognition SVM with parameters tuned by the GFWA
provides better results than grid search. Moreover, in [9] results were compared
with results from [11], which are also included in this paper. Method from [9]
outperformed the method proposed in [11] and our proposed algorithm outper-
formed both. The worst accuracy in [9] was for digit 3 which was also the case
for our proposed algorithm. In [9] digit 3 was recognized with accuracy of 89%
while in this paper it was recognized with accuracy of 92% which is significant
improvements. Compared to other digits recognitions accuracy was the same or
with 1% improvements which leads to conclusion that GFWA was able to find
better parameters for SVM models.
SVM Optimized by FWA for Handwritten Digit Recognition 197
Performance of our proposed method was better than other approaches from
literature [9–11]. Based on this results it can be concluded that the proposed
SVM based algorithm tuned by GFWA can be successfully used for handwrit-
ten digit recognition. Based on the fact that accuracy was improved by creating
better classification model, it can be concluded that with different, more com-
plicated features accuracy can be further increased.
6 Conclusion
In this paper we proposed a method for handwritten digit recognition that uses
system of support vector machines optimized by recent swarm intelligence guided
fireworks algorithm. Simple features known to be insufficient for this classifica-
tion were intentionally used to prove the quality of the proposed optimized SVM,
i.e. that SVM optimized by GFWA can perform high recognition of handwritten
digit with features that are usually not sufficient for any acceptable accuracy.
Our proposed method outperformed other approaches from literature that also
used projection histograms as features. As future work the proposed optimized
SVM can be tested using additional features.
References
1. Singh, P.K., Sarkar, R., Nasipuri, M.: A study of moment based features on hand-
written digit recognition. Appl. Comput. Intell. Soft Comput. 2016, 1–17 (2016)
2. Jagannathan, J., Sherajdheen, A., Deepak, R., Krishnan, N.: License plate char-
acter segmentation using horizontal and vertical projection with dynamic thresh-
olding. In: International Conference on Emerging Trends in Computing, Commu-
nication and Nanotechnology (ICE-CCN), pp. 700–705, March 2013
3. Babu, U.R., Venkateswarlu, Y., Chintha, A.K.: Handwritten digit recognition using
k-nearest neighbour classifier. In: World Congress on Computing and Communi-
cation Technologies (WCCCT), pp. 60–65. IEEE (2014)
4. Desai, A.A.: Gujarati handwritten numeral optical character reorganization
through neural network. Pattern Recogn. 43(7), 2582–2589 (2010)
5. Neves, R.F.P., Zanchettin, C., Filho, A.N.G.L.: An efficient way of combining SVMs
for handwritten digit recognition. In: Villa, A.E.P., Duch, W., Érdi, P., Masulli, F.,
Palm, G. (eds.) ICANN 2012. LNCS, vol. 7553, pp. 229–237. Springer, Heidelberg
(2012). https://doi.org/10.1007/978-3-642-33266-1 29
6. Ashiquzzaman, A., Tushar, A.K.: Handwritten Arabic numeral recognition using
deep learning neural networks. In: IEEE International Conference on Imaging,
Vision & Pattern Recognition, pp. 1–4. IEEE (2017)
7. Stromatias, E., Neil, D., Galluppi, F., Pfeiffer, M., Liu, S.C., Furber, S.: Live
demonstration: handwritten digit recognition using spiking deep belief networks on
SpiNNaker. In: IEEE International Symposium on Circuits and Systems (ISCAS),
p. 1901. IEEE (2015)
198 E. Tuba et al.
8. Pang, S., Yang, X.: Deep convolutional extreme learning machine and its appli-
cation in handwritten digit classification. Comput. Intell. Neurosci. 2016, 1–10
(2016). Article ID 3049632
9. Tuba, E., Tuba, M., Simian, D.: Handwritten digit recognition by support vector
machine optimized by bat algorithm. In: Computer Science Research Notes CSRN:
Papers from the 24th International Conference in Central Europe on Computer
Graphics, Visualization and Computer Vision 2602, pp. 369–376 (2016)
10. Tuba, E., Bacanin, N.: An algorithm for handwritten digit recognition using pro-
jection histograms and SVM classifier. In: 23rd IEEE Telecommunications Forum
TELFOR, pp. 464–467 (2015)
11. Kessab, B.E., Daoui, C., Bouikhalene, B., Fakir, M., Moro, K.: Extraction method
of handwritten digit recognition tested on the MNIST database. Int. J. Adv. Sci.
Technol. 50(6), 99–110 (2013)
12. Vamvakas, G., Gatos, B., Perantonis, S.J.: Handwritten character recognition
through two-stage foreground sub-sampling. Pattern Recogn. 43(8), 2807–2816
(2010)
13. Ebrahimzadeh, R., Jampour, M.: Efficient handwritten digit recognition based on
histogram of oriented gradients and SVM. Int. J. Comput. Appl. 104(9), 10–13
(2014)
14. Impedovo, S., Mangini, F.M., Barbuzzi, D.: A novel prototype generation technique
for handwriting digit recognition. Pattern Recogn. 47(3), 1002–1010 (2014)
15. Cardoso, A., Wichert, A.: Handwritten digit recognition using biologically inspired
features. Neurocomputing 99(1), 575–580 (2013)
16. Li, J., Zheng, S., Tan, Y.: The effect of information utilization: introducing a novel
guiding spark in the fireworks algorithm. IEEE Trans. Evol. Comput. 21(1), 153–
166 (2017)
17. Tan, Y., Zhu, Y.: Fireworks algorithm for optimization. In: Tan, Y., Shi, Y., Tan,
K.C. (eds.) ICSI 2010. LNCS, vol. 6145, pp. 355–364. Springer, Heidelberg (2010).
https://doi.org/10.1007/978-3-642-13495-1 44
18. Tuba, E., Tuba, M., Beko, M.: Support vector machine parameters optimization
by enhanced fireworks algorithm. In: Tan, Y., Shi, Y., Niu, B. (eds.) ICSI 2016.
LNCS, vol. 9712, pp. 526–534. Springer, Cham (2016). https://doi.org/10.1007/
978-3-319-41000-5 52
19. Tuba, E., Tuba, M., Dolicanin, E.: Adjusted fireworks algorithm applied to retinal
image registration. Stud. Inform. Control 26(1), 33–42 (2017)
20. Tuba, E., Jovanovic, R., Beko, M., Tallón-Ballesteros, A.J., Tuba, M.: Bare bones
fireworks algorithm for medical image compression. In: Yin, H., Camacho, D.,
Novais, P., Tallón-Ballesteros, A.J. (eds.) IDEAL 2018. LNCS, vol. 11315, pp.
262–270. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03496-2 29
21. Tuba, M., Bacanin, N., Beko, M.: Fireworks algorithm for RFID network planning
problem. In: Proceedings of the 25th International Conference Radioelektronika,
pp. 440–444, April 2015
22. Zheng, S., Janecek, A., Tan, Y.: Enhanced fireworks algorithm. In: 2013 IEEE
Congress on Evolutionary Computation, pp. 2069–2077, June 2013
23. Zheng, S., Li, J., Janecek, A., Tan, Y.: A cooperative framework for fireworks
algorithm. IEEE/ACM Trans. Comput. Biol. Bioinf. 14(1), 27–41 (2017)
24. Li, J., Tan, Y.: Enhancing interaction in the fireworks algorithm by dynamic
resource allocation and fitness-based crowdedness-avoiding strategy. In: IEEE
Congress on Evolutionary Computation (CEC), pp. 4015–4021, July 2016
SVM Optimized by FWA for Handwritten Digit Recognition 199
25. Chang, C.C., Lin, C.J.: LIBSVM: a library for support vector machines. ACM
Trans. Intell. Syst. Technol. 2(3), 27:1–27:27 (2011)
26. LeCun, Y., Bottou, L., Bengio, Y., Haffner, P.: Gradient-based learning applied to
document recognition. Proc. IEEE 86(11), 2278–2324 (1998)
Author Index