Rubén Fuentes-fernández - Academia.edu (original) (raw)
Papers by Rubén Fuentes-fernández
Lecture Notes in Computer Science, 2018
City traffic is getting more multi-modal, with a variety of actors and mobility options in mixed ... more City traffic is getting more multi-modal, with a variety of actors and mobility options in mixed spaces. This makes decisions on traffic behaviour and control more complex. Beyond traditionally considered aspects (e.g. traffic state or used vehicle), human aspects (e.g. physical state, displacement goal, or companion), gain increasing relevance. They can greatly modify how people move and interact with others. Introducing social knowledge about human behaviour and context can help to better understand and anticipate the environment and its actions. This paper proposes the development of Social-Aware Driver Assistance Systems (SADASs) for that purpose. A SADAS uses traffic social properties that formalize social knowledge using a template organized around diagrams. The diagrams are compliant with a specific modelling language, which is intended to describe social aspects in a given context. They facilitate the integration of this knowledge with system specifications, and its semi-automated verification both in design and run time. A case study on a distributed obstacle detection system for vehicles extended with social knowledge to anticipate people’ behaviour illustrates the approach.
International Joint Conference on Artificial Intelligence, 2016
Smart Roads (SRs) are systems that provide trafficrelated services, based on a combination of sen... more Smart Roads (SRs) are systems that provide trafficrelated services, based on a combination of sensor and actuator networks deployed in roads, vehicles, and surrounding elements. They are complex distributed systems that involve multiple heterogeneous components and technologies. This makes their development a challenging and costly process. Simulations are a key tool to deal with these issues, as they allow developing and testing in fully controlled environments with simplified software components. Nevertheless, they still need to consider multiple perspectives (e.g. experts and designers), which frequently cause problems to understand and validate them. Model-Driven Engineering of simulations appears as a solution. It uses models to represent explicitly these perspectives, and transformations to link them and generate new artifacts (including code). This paper presents a framework to develop simulations of SRs following this approach. Its base is an existing modeling language related to road traffic which is adapted to specify the aspects of these systems (i.e. sensors, networks, and services), and their context (i.e. users, vehicles, and their environment). A process guides its use in the transition from abstract models to code supported by tailored tools. A case study on a system to track vehicles using sensors in roads illustrates its use.
Lecture Notes in Computer Science, 2016
Today, it is common for software projects to collect measurement data through development process... more Today, it is common for software projects to collect measurement data through development processes. With these data, defect prediction software can try to estimate the defect proneness of a software module, with the objective of assisting and guiding software practitioners. With timely and accurate defect predictions, practitioners can focus their limited testing resources on higher risk areas. This paper reports a benchmarking study that uses a genetic algorithm that automatically generates and compares different learning schemes (preprocessing + attribute selection + learning algorithms). Performance of the software development defect prediction models (using AUC, Area Under the Curve) was validated using NASA-MDP and PROMISE data sets. Twelve data sets from NASA-MDP (8) and PROMISE (4) projects were analyzed running a \(M\times N\)-fold cross-validation. We used a genetic algorithm to select the components of the learning schemes automatically, and to evaluate and report those with the best performance. In all, 864 learning schemes were studied. The most common learning schemes were: data preprocessors: Log and CoxBox + attribute selectors: Backward Elimination, BestFirst and LinearForwardSelection + learning algorithms: NaiveBayes, NaiveBayesSimple, SimpleLogistic, MultilayerPerceptron, Logistic, LogitBoost, BayesNet, and OneR. The genetic algorithm reported steady performance and runtime among data sets, according to statistical analysis.
Traffic has an important impact in many aspects of our everyday life, from healthcare to transpor... more Traffic has an important impact in many aspects of our everyday life, from healthcare to transport regulation or urban planning. Given its complexity, the study in real settings is frequently limited, so researchers resort to simulations. However, realistic simulations are still complex systems. Its development frequently requires multidisciplinary groups, where misunderstandings are frequent, and there is a great variety of potential theories and platforms to consider. In order to reduce the impact of these issues, the Model-Driven Engineering (MDE) of simulations has been proposed. It is focused on developing mainly through models and their semi-automated transformation. Nevertheless, an effective approach of this kind requires the availability of infrastructures that include modelling languages, transformations, tools, and processes to use them. This work presents a MDE process for traffic simulations. It introduces a modelling language and makes uses of available infrastructures in its tasks. The process guides users in creating tailored models for their simulations, and transforming these to code. A case study that uses an existing model for drivers' behaviour and an already available platform to develop a simulation illustrates the approach.
Springer eBooks, 2011
Traffic is a phenomenon of high relevance for modern societies. Its study faces researchers with ... more Traffic is a phenomenon of high relevance for modern societies. Its study faces researchers with important challenges due to its complexity: it involves large numbers of heterogeneous vehicles, with drivers having different skills and attitudes, in a dynamic environment that is both artificial and natural, and subject to complex regulations. To address the study of traffic, researchers have made an
Journal of Intelligent and Fuzzy Systems, Oct 7, 2015
Currently, there is an increasing interest in educational data mining. E-learning systems have be... more Currently, there is an increasing interest in educational data mining. E-learning systems have become pervasive in educational contexts, and they are more necessary than ever in order to get relevant information on students and learning activities. However, the amount of raw data produced makes unfeasible its manual processing, so (semi-)automated solutions are required. In this context, the paradigms of data mining and artificial intelligence offer multiple techniques to provide these solutions. Among these techniques, this work makes a review of published and tested techniques with satisfactory results under the different aspects of fuzzy logic. The choice of the fuzzy logic makes sense here, as it is a theory close to some forms of human reasoning. In e-learning systems, the main actors are teachers and students, and the data to manipulate are related to their modelling and the results of their actions. Fuzzy techniques make possible a representation of this knowledge and its manipulation under a human approach, which is well-suited to be understood by the main actors of the domain.
Simulation Modelling Practice and Theory, Feb 1, 2020
This is a PDF file of an article that has undergone enhancements after acceptance, such as the ad... more This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition of a cover page and metadata, and formatting for readability, but it is not yet the definitive version of record. This version will undergo additional copyediting, typesetting and review before it is published in its final form, but we are providing this version to give early visibility of the article. Please note that, during the production process, errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
Knowledge Engineering Review, Sep 1, 2015
For many years, the progress in agent-oriented development has focused on tools and methods for p... more For many years, the progress in agent-oriented development has focused on tools and methods for particular development phases. This has not been enough for the industry to accept agent technology as we expected. Our hypothesis is that the Agent-Oriented Software Engineering (AOSE) community has not recognized the kind of development methods that industry actually demands. We propose to analyze this hypothesis starting with a more precise definition of what an AOSE methodology should be. This definition is the first step for a review of the current progress of an illustrative selection of methodologies, looking for missing elements and future lines of improvement. The result is an account of how well the AOSE community is meeting the software lifecycle needs. It can be advanced that AOSE methodologies are far from providing all the answers industry requires and that effort has grounded mainly in requirements, design, and implementation phases. 1 Introduction Luck et al. (2005) pointed in the last AgentLink roadmap at the lack of mature software development methodologies for agent-based systems as the fundamental obstacle to the take-up of agent technology. They recommended to shift the focus to business issues, looking for quality and convergence with existing and emerging industrial technologies rather than innovation. One may think that Agent-Oriented Software Engineering (AOSE) has improved in these aspects since 2005. To some extent, its methodologies have done it, as it will be shown in this paper, but slowly and without a clear aim. In fact, choosing the right direction to evolve is a challenge in itself. Some authors advocate by incorporating to AOSE methodologies support for the most recent technologies that are applied in the industry. For instance, Georgeff (2009) proposes actions to integrate AOSE into mainstream (i.e. industrial) Software Engineering (SE). He specifically mentions the integration of Service-Oriented Architectures by taking advantage of some intuitive relationships with Multi-Agent Systems (MAS) and AOSE. Georgeff's point, as that of other researchers, is focusing on concepts and methodologies, and not on new specific languages. AOSE concepts and methodologies should drive extensions of current solutions, like the Service-Oriented Architecture, rather than intend to replace them. Despite of agreeing with part of this message, we do not think the goal is to take individual technologies and start thinking on agent-oriented extensions. AOSE already tried this, looking for suitable extensions of well-known development methods. The best known case is MAS-CommonKADS, an extension of the successful CommonKADS by Iglesias et al. (1997), though more can be found in the same paper. Despite these initial efforts, there is no industrial uptake, yet.
InTech eBooks, Apr 1, 2011
The design of the control systems for sensor networks presents important challenges. Besides the ... more The design of the control systems for sensor networks presents important challenges. Besides the traditional problems about how to process the sensor data to obtain the target information, engineers need to consider additional aspects such as the heterogeneity and high number of sensors, and the flexibility of these networks regarding topologies and the sensors in them. Although there are partial approaches for resolving these issues, their integration relies on ad hoc solutions requiring important development efforts. In order to provide an effective approach for this integration, this paper proposes an architecture based on the multi-agent system paradigm with a clear separation of concerns. The architecture considers sensors as devices used by an upper layer of manager agents. These agents are able to communicate and negotiate services to achieve the required functionality. Activities are organized according to roles related with the different aspects to integrate, mainly sensor management, data processing, communication and adaptation to changes in the available devices and their capabilities. This organization largely isolates and decouples the data management from the changing network, while encouraging reuse of solutions. The use of the architecture is facilitated by a specific modelling language developed through metamodelling. A case study concerning a generic distributed system for fire fighting illustrates the approach and the comparison with related work.
IEICE Transactions on Information and Systems, 2016
Traffic is a key aspect of everyday life. Its study, as it happens with other complex phenomena, ... more Traffic is a key aspect of everyday life. Its study, as it happens with other complex phenomena, has found in simulation a basic tool. However, the use of simulations faces important limitations. Building them requires considering different aspects of traffic (e.g. urbanism, car features, and individual drivers) with their specific theories, that must be integrated to provide a coherent model. There is also a variety of simulation platforms with different requirements. Many of these problems demand multidisciplinary teams, where the different backgrounds can hinder the communication and validation of simulations. The Model-Driven Engineering (MDE) of simulations has been proposed in other fields to address these issues. Such approaches develop graphical Modelling Languages (MLs) that researchers use to model their problems, and then semi-automatically generate simulations from those models. Working in this way promotes communication, platform independence, incremental development, and reutilisation. This paper presents the first steps for a MDE framework for traffic simulations. It introduces a tailored extensible ML for domain experts. The ML is focused on human actions, so it adopts an Agent-Based Modelling perspective. Regarding traffic aspects, it includes concepts commonly found in related literature following the Driver-Vehicle-Environment model. The language is also suitable to accommodate additional theories using its extension mechanisms. The approach is supported by an infrastructure developed using Eclipse MDE projects: the ML is specified with Ecore, and a model editor and a code generator tools are provided. A case study illustrates how to develop a simulation based on a driver's behaviour theory for a specific target platform using these elements.
Lecture Notes in Computer Science, 2018
Learning activities make use today of a variety of software tools, like Learning Management Syste... more Learning activities make use today of a variety of software tools, like Learning Management Systems (LMSs), online social networks, and forums. They enhance the experience by facilitating interactions among participants and with resources. These interactions can be used as a source of information on how the process is working for individual students or groups, and therefore to provide them a tailored support. However, lecturers can only do this monitoring in very simple ways, as their time is limited, tools generate large amounts of data, and students have very different profiles. In order to improve this situation, this work proposes the use of semi-automated assistants to analyse these data, able to learn from the lecturers’ expertise on what situations are relevant. The Assistant for Learning Activities (ALA) is an Adaptive Multi-Agent System (AMAS) that raises alerts when some events appear in data. Its architecture includes two groups of agents. The core are the agents that learn and classify the data to generate the alerts. There can be multiple groups of these agents to identify different types of alert. A second group of agents wraps and transforms data from sources to feed the first group. The ALA setup uses a prototypical training based on information from previous courses. Then, it learns and adjusts for a specific course using the lecturers’ feedback on the alerts it generates. The paper reports the currently undergoing validation of the ALA knowledge based on the information from the institutional LMS of a Spanish university.
Lecture Notes in Computer Science, 2014
Simulations can be used for the study of Online Social Networks (OSNs) as a means to harness thei... more Simulations can be used for the study of Online Social Networks (OSNs) as a means to harness their size and complexity, and to overcome the difficulties to set up experiments in real environments. Most existing tools for the analysis of OSNs focus on the graph structure of networks and emulate changes only from statistical data. This approach is unsuitable to study the evolution of OSNs as a consequence of the personal attributes and behaviours of their members. Our work addresses this issue with an agent-based simulation framework for OSNs called Krowdix. It provides support to specify discrete time simulations, where agents represent members of OSNs acting according to their profiles and context. This context comprehends the environment, other agents, groups of agents, and the whole network. Agent actions are responsible of network changes. Additionally, system actions can represent unexpected events external to agents. This agent-based approach facilitates the translation of actual observations to simulation models, and explaining networks in terms of their members.
Sensors, Jan 9, 2019
Shared spaces are gaining presence in cities, where a variety of players and mobility types (pede... more Shared spaces are gaining presence in cities, where a variety of players and mobility types (pedestrians, bicycles, motorcycles, and cars) move without specifically delimited areas. This makes the traffic they comprise challenging for automated systems. The information traditionally considered (e.g., streets, and obstacle positions and speeds) is not enough to build suitable models of the environment. The required explanatory and anticipation capabilities need additional information to improve them. Social aspects (e.g., goal of the displacement, companion, or available time) should be considered, as they have a strong influence on how people move and interact with the environment. This paper presents the Social-Aware Driver Assistance System (SADAS) approach to integrate this information into traffic systems. It relies on a domain-specific modelling language for social contexts and their changes. Specifications compliant with it describe social and system information, their links, and how to process them. Traffic social properties are the formalization within the language of relevant knowledge extracted from literature to interpret information. A multi-agent system architecture manages these specifications and additional processing resources. A SADAS can be connected to other parts of traffic systems by means of subscription-notification mechanisms. The case study to illustrate the approach applies social knowledge to predict people's movements. It considers a distributed system for obstacle detection and tracking, and the intelligent management of traffic signals.
Springer eBooks, Sep 12, 2007
Design patterns are templates of general solutions to commonlyoccurring problems in the analysis ... more Design patterns are templates of general solutions to commonlyoccurring problems in the analysis and design of software systems. In mature development processes, engineers use and combine these patterns to work out those parts of their systems that correspond to well-identified issues in their domains. The design of new structures is just concerned with those aspects that are specific for their projects and with the glue between different components. Model driven development approaches can benefit of design patterns to improve the building of models and their transformations; at the same time, design patterns can take advantage in this kind of approaches of a better integration in the overall development process. In the case of Agent-Oriented Software Engineering, design solutions for agents and multi-agent systems have been also described in the literature. However, their application and transformation to code largely relies on manual processes. This paper proposes a framework that includes repositories of patterns that can be reused in different projects and processes to generate models and code for multi-agent systems on different target platforms. Instead of focusing on low-level issues, our approach positions the abstraction level of these design patterns at the intentional and social features that characterize multi-agent systems. The paper illustrates this framework with a case study about the development of the models of an agentbased system for collaborative filtering of information. * This work has been funded by Spanish Ministry of Science and Technology under grant TIN2005-08501-C03-01 The spread of Model Driven Development in Software Engineering improves the integration of design patterns in the whole development cycle. Model Driven Development (MDD) advocates for building systems from models through automated transformations. The Object Management Group (OMG) proposes a standardized approach to MDD, the Model Driven Architecture (MDA) [10]. MDA mainly considers three kinds of models: Computational Independent Models (CIMs), Platform Independent Models (PIMs) and Platform Specific Models (PSMs). CIMs are intended for domain practitioners. They state the requirements of the system without knowledge about the models or artefacts to realize them. PIMs further specify the system to be with details about its software architecture and design. Finally, PSMs give the details necessary to build the system for a specific platform. The main advantage of this approach is that it layers the development in levels of abstraction that includes the models. From this departure point, its processes are intended to encourage reuse of design solutions and to save effort in the migration of systems to different target platforms. In this setting, design patterns are not longer external knowledge that forges the specifications of the system, but they become an integral part of the models of the system and are transformed with the remaining information to running code. Agent-Oriented Software Engineering (AOSE) has already applied both design patterns and MDD to build Multi-Agent Systems (MAS). Literature has documented research for its reuse in different designs. These patterns specify aspects like communication protocols, power relationships between individuals, or planning modules in individual agents. Examples of these patterns are the FIPA protocols for standardized auctions between agents (http://www.fipa.org). About MDD, the works described in [2, 4, 8, 16] are state of the art applications to build MAS integrating a MDD perspective. Nevertheless, many of these MAS developments with MDD are ad-hoc solutions [2, 4,], with focus on the generation of very specific portions of code, like the support for a protocol or a planning module. The generation of code for other aspects of MAS or domains usually needs a complete new development from scratch. Anyway, none of the studied approaches truly integrate design patterns, as developers must manually bring them into the specifications. That is, developers, departing from their own knowledge about the patterns or some abstract specification of them, must describe and customize those patterns for their specific methodology and project. Readers interested in more information about AOSE and MDD can read about several researches in [9]. From our point of view, the application of design patterns in MDD for MAS can be regarded at a higher level of abstraction than it is done in current practices. Instead of engineering isolated elements, we consider design patterns for intentional and social issues that traverse several aspects in the architecture of the whole MAS or individual agents. These patterns are intended to describe the ruling principles in the architecture of the MAS rather than the individual elements encompassed by that architecture. Given this target, we propose a partial framework for model driven development based on repositories of social patterns that act as predefined CIMs. Sets of automated transformations described declaratively will enable in the framework the generation of the PIMs for specific methodologies from these social patterns. A social pattern is a proven solution for a design problem about the intentional and social architecture of MAS.
Studies in the philosophy of sociality, Oct 11, 2013
Computer simulation can be a complementary tool to study culture. A main issue in its application... more Computer simulation can be a complementary tool to study culture. A main issue in its application is finding the suitable computational primitives to translate the abstractions of social studies in a given context. Looking to overcome this problem, our research has developed a modelling framework based on the Activity Theory. This theory regards culture as a set of artefacts (mental and physical) that groups of people build and communicate in social activities, which are networks of interconnected individual activities. The framework provides a modelling language and its execution model, patterns (i.e. social properties), and processes to specify systems and check their properties. These elements reduce the uncertainty about modelling by crystallizing the experience of multiple projects. A case study about the influence of culture in couple relationships illustrates the approach. It shows how to model the emergence of new social artefacts when people deal with conflicts using existent cultural influences.
Springer eBooks, 2012
Question Answering is an Information Retrieval task where the query is posed using natural langua... more Question Answering is an Information Retrieval task where the query is posed using natural language and the expected result is a concise answer. Voice-activated Question Answering systems represent an interesting application, where the question is formulated by speech. In these systems, an Automatic Speech Recognition module can be used to transcribe the question. Thus, recognition errors may be introduced, producing a significant effect on the answer retrieval process. In this work we study the relationship between some features of misrecognized words and the retrieval results. The features considered are the redundancy of a word in the result set and its inverse document frequency calculated over the collection. The results show that the redundancy of a word may be an important clue on whether an error on it would deteriorate the retrieval results, at least if a closed model is used for speech recognition.
Requirements Engineering, Aug 14, 2009
The human context within which a software system will operate is fundamental for its requirements... more The human context within which a software system will operate is fundamental for its requirements. It may not appear to be very much related to the system, but it is very relevant in achieving its successful adoption. However, requirements engineers have usually a background in Software Engineering and are not trained to elicit this kind of information. This situation raises
Inteligencia artificial, 2016
Today, it is common for software projects to collect measurement data through development process... more Today, it is common for software projects to collect measurement data through development processes. With these data, defect prediction software can try to estimate the defect proneness of a software module, with the objective of assisting and guiding software practitioners. With timely and accurate defect predictions, practitioners can focus their limited testing resources on higher risk areas. This paper reports the results of three empirical studies that uses an automated genetic defect prediction framework. This framework generates and compares different learning schemes (preprocessing + attribute selection + learning algorithms) and selects the best one using a genetic algorithm, with the objective to estimate the defect proneness of a software module. The first empirical study is a performance comparison of our framework with the most important framework of the literature. The second empirical study is a performance and runtime comparison between our framework and an exhaustive framework. The third empirical study is a sensitivity analysis. The last empirical study, is our main contribution in this paper. Performance of the software development defect prediction models (using AUC, Area Under the Curve) was validated using NASA-MDP and PROMISE data sets. Seventeen data sets from NASA-MDP (13) and PROMISE (4) projects were analyzed running a N × M-fold cross-validation. A genetic algorithm was used to select the components of the learning schemes automatically, and to assess and report the results. Our results reported similar performance between frameworks. Our framework reported better runtime than exhaustive framework. Finally, we reported the best configuration according to sensitivity analysis.
Zenodo (CERN European Organization for Nuclear Research), Apr 28, 2022
Forced displacement crises overcome societies and institutions all over the world. Pushed by the ... more Forced displacement crises overcome societies and institutions all over the world. Pushed by the urgencies rather than events, solutions are frequently reactive, partial, and disregard some groups. The project 'Reshaping Attention and Inclusion Strategies for Distinctively vulnerable people among the forcibly displaced' (RAISD) aims at identifying highly Vulnerable Groups (VG) among these forcibly displaced people, analysing their specific needs, and finding suitable practices to address them. The concept of 'vulnerability context' considers the interplay between the features of these persons and their hosting communities, their interactions and experiences, and how different solutions for attention and inclusion affect them. As a result of this work, a methodology to carry out these studies will be developed. These goals are aligned with the call. They pursue characterizing these migrations and developing suitable aid strategies for them. The Responsible Research and Innovation (RRI) frames the project. It proposes that all actors (including civil society) co-design actions, transversely integrates the gender perspective, and supports sustainability. Our research strategy will be based on methodological triangulation (i.e. the combined application of several methodologies). We will implement it through a specific participatory action research approach to fulfil the aim of undertaking advocacy-focused research, grounded in human rights and socio-ecological models. The team will work as a network of units in countries along migration routes. The units will promote the VG people' involvement, so they can speak with their own voices, gather information, and test practices. Work will rely on a tight integration of Social and Computer Sciences research. Automated learning and data mining will help to provide evidence-based recommendations, reducing a priori biases. A software tool will support collaboration, continuing previous H2020-funded RRI work. The sole responsibility of this publication lies with the author. The European Union is not responsible for any use that may be made of the information contained therein.
Lecture Notes in Computer Science, 2018
City traffic is getting more multi-modal, with a variety of actors and mobility options in mixed ... more City traffic is getting more multi-modal, with a variety of actors and mobility options in mixed spaces. This makes decisions on traffic behaviour and control more complex. Beyond traditionally considered aspects (e.g. traffic state or used vehicle), human aspects (e.g. physical state, displacement goal, or companion), gain increasing relevance. They can greatly modify how people move and interact with others. Introducing social knowledge about human behaviour and context can help to better understand and anticipate the environment and its actions. This paper proposes the development of Social-Aware Driver Assistance Systems (SADASs) for that purpose. A SADAS uses traffic social properties that formalize social knowledge using a template organized around diagrams. The diagrams are compliant with a specific modelling language, which is intended to describe social aspects in a given context. They facilitate the integration of this knowledge with system specifications, and its semi-automated verification both in design and run time. A case study on a distributed obstacle detection system for vehicles extended with social knowledge to anticipate people’ behaviour illustrates the approach.
International Joint Conference on Artificial Intelligence, 2016
Smart Roads (SRs) are systems that provide trafficrelated services, based on a combination of sen... more Smart Roads (SRs) are systems that provide trafficrelated services, based on a combination of sensor and actuator networks deployed in roads, vehicles, and surrounding elements. They are complex distributed systems that involve multiple heterogeneous components and technologies. This makes their development a challenging and costly process. Simulations are a key tool to deal with these issues, as they allow developing and testing in fully controlled environments with simplified software components. Nevertheless, they still need to consider multiple perspectives (e.g. experts and designers), which frequently cause problems to understand and validate them. Model-Driven Engineering of simulations appears as a solution. It uses models to represent explicitly these perspectives, and transformations to link them and generate new artifacts (including code). This paper presents a framework to develop simulations of SRs following this approach. Its base is an existing modeling language related to road traffic which is adapted to specify the aspects of these systems (i.e. sensors, networks, and services), and their context (i.e. users, vehicles, and their environment). A process guides its use in the transition from abstract models to code supported by tailored tools. A case study on a system to track vehicles using sensors in roads illustrates its use.
Lecture Notes in Computer Science, 2016
Today, it is common for software projects to collect measurement data through development process... more Today, it is common for software projects to collect measurement data through development processes. With these data, defect prediction software can try to estimate the defect proneness of a software module, with the objective of assisting and guiding software practitioners. With timely and accurate defect predictions, practitioners can focus their limited testing resources on higher risk areas. This paper reports a benchmarking study that uses a genetic algorithm that automatically generates and compares different learning schemes (preprocessing + attribute selection + learning algorithms). Performance of the software development defect prediction models (using AUC, Area Under the Curve) was validated using NASA-MDP and PROMISE data sets. Twelve data sets from NASA-MDP (8) and PROMISE (4) projects were analyzed running a \(M\times N\)-fold cross-validation. We used a genetic algorithm to select the components of the learning schemes automatically, and to evaluate and report those with the best performance. In all, 864 learning schemes were studied. The most common learning schemes were: data preprocessors: Log and CoxBox + attribute selectors: Backward Elimination, BestFirst and LinearForwardSelection + learning algorithms: NaiveBayes, NaiveBayesSimple, SimpleLogistic, MultilayerPerceptron, Logistic, LogitBoost, BayesNet, and OneR. The genetic algorithm reported steady performance and runtime among data sets, according to statistical analysis.
Traffic has an important impact in many aspects of our everyday life, from healthcare to transpor... more Traffic has an important impact in many aspects of our everyday life, from healthcare to transport regulation or urban planning. Given its complexity, the study in real settings is frequently limited, so researchers resort to simulations. However, realistic simulations are still complex systems. Its development frequently requires multidisciplinary groups, where misunderstandings are frequent, and there is a great variety of potential theories and platforms to consider. In order to reduce the impact of these issues, the Model-Driven Engineering (MDE) of simulations has been proposed. It is focused on developing mainly through models and their semi-automated transformation. Nevertheless, an effective approach of this kind requires the availability of infrastructures that include modelling languages, transformations, tools, and processes to use them. This work presents a MDE process for traffic simulations. It introduces a modelling language and makes uses of available infrastructures in its tasks. The process guides users in creating tailored models for their simulations, and transforming these to code. A case study that uses an existing model for drivers' behaviour and an already available platform to develop a simulation illustrates the approach.
Springer eBooks, 2011
Traffic is a phenomenon of high relevance for modern societies. Its study faces researchers with ... more Traffic is a phenomenon of high relevance for modern societies. Its study faces researchers with important challenges due to its complexity: it involves large numbers of heterogeneous vehicles, with drivers having different skills and attitudes, in a dynamic environment that is both artificial and natural, and subject to complex regulations. To address the study of traffic, researchers have made an
Journal of Intelligent and Fuzzy Systems, Oct 7, 2015
Currently, there is an increasing interest in educational data mining. E-learning systems have be... more Currently, there is an increasing interest in educational data mining. E-learning systems have become pervasive in educational contexts, and they are more necessary than ever in order to get relevant information on students and learning activities. However, the amount of raw data produced makes unfeasible its manual processing, so (semi-)automated solutions are required. In this context, the paradigms of data mining and artificial intelligence offer multiple techniques to provide these solutions. Among these techniques, this work makes a review of published and tested techniques with satisfactory results under the different aspects of fuzzy logic. The choice of the fuzzy logic makes sense here, as it is a theory close to some forms of human reasoning. In e-learning systems, the main actors are teachers and students, and the data to manipulate are related to their modelling and the results of their actions. Fuzzy techniques make possible a representation of this knowledge and its manipulation under a human approach, which is well-suited to be understood by the main actors of the domain.
Simulation Modelling Practice and Theory, Feb 1, 2020
This is a PDF file of an article that has undergone enhancements after acceptance, such as the ad... more This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition of a cover page and metadata, and formatting for readability, but it is not yet the definitive version of record. This version will undergo additional copyediting, typesetting and review before it is published in its final form, but we are providing this version to give early visibility of the article. Please note that, during the production process, errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
Knowledge Engineering Review, Sep 1, 2015
For many years, the progress in agent-oriented development has focused on tools and methods for p... more For many years, the progress in agent-oriented development has focused on tools and methods for particular development phases. This has not been enough for the industry to accept agent technology as we expected. Our hypothesis is that the Agent-Oriented Software Engineering (AOSE) community has not recognized the kind of development methods that industry actually demands. We propose to analyze this hypothesis starting with a more precise definition of what an AOSE methodology should be. This definition is the first step for a review of the current progress of an illustrative selection of methodologies, looking for missing elements and future lines of improvement. The result is an account of how well the AOSE community is meeting the software lifecycle needs. It can be advanced that AOSE methodologies are far from providing all the answers industry requires and that effort has grounded mainly in requirements, design, and implementation phases. 1 Introduction Luck et al. (2005) pointed in the last AgentLink roadmap at the lack of mature software development methodologies for agent-based systems as the fundamental obstacle to the take-up of agent technology. They recommended to shift the focus to business issues, looking for quality and convergence with existing and emerging industrial technologies rather than innovation. One may think that Agent-Oriented Software Engineering (AOSE) has improved in these aspects since 2005. To some extent, its methodologies have done it, as it will be shown in this paper, but slowly and without a clear aim. In fact, choosing the right direction to evolve is a challenge in itself. Some authors advocate by incorporating to AOSE methodologies support for the most recent technologies that are applied in the industry. For instance, Georgeff (2009) proposes actions to integrate AOSE into mainstream (i.e. industrial) Software Engineering (SE). He specifically mentions the integration of Service-Oriented Architectures by taking advantage of some intuitive relationships with Multi-Agent Systems (MAS) and AOSE. Georgeff's point, as that of other researchers, is focusing on concepts and methodologies, and not on new specific languages. AOSE concepts and methodologies should drive extensions of current solutions, like the Service-Oriented Architecture, rather than intend to replace them. Despite of agreeing with part of this message, we do not think the goal is to take individual technologies and start thinking on agent-oriented extensions. AOSE already tried this, looking for suitable extensions of well-known development methods. The best known case is MAS-CommonKADS, an extension of the successful CommonKADS by Iglesias et al. (1997), though more can be found in the same paper. Despite these initial efforts, there is no industrial uptake, yet.
InTech eBooks, Apr 1, 2011
The design of the control systems for sensor networks presents important challenges. Besides the ... more The design of the control systems for sensor networks presents important challenges. Besides the traditional problems about how to process the sensor data to obtain the target information, engineers need to consider additional aspects such as the heterogeneity and high number of sensors, and the flexibility of these networks regarding topologies and the sensors in them. Although there are partial approaches for resolving these issues, their integration relies on ad hoc solutions requiring important development efforts. In order to provide an effective approach for this integration, this paper proposes an architecture based on the multi-agent system paradigm with a clear separation of concerns. The architecture considers sensors as devices used by an upper layer of manager agents. These agents are able to communicate and negotiate services to achieve the required functionality. Activities are organized according to roles related with the different aspects to integrate, mainly sensor management, data processing, communication and adaptation to changes in the available devices and their capabilities. This organization largely isolates and decouples the data management from the changing network, while encouraging reuse of solutions. The use of the architecture is facilitated by a specific modelling language developed through metamodelling. A case study concerning a generic distributed system for fire fighting illustrates the approach and the comparison with related work.
IEICE Transactions on Information and Systems, 2016
Traffic is a key aspect of everyday life. Its study, as it happens with other complex phenomena, ... more Traffic is a key aspect of everyday life. Its study, as it happens with other complex phenomena, has found in simulation a basic tool. However, the use of simulations faces important limitations. Building them requires considering different aspects of traffic (e.g. urbanism, car features, and individual drivers) with their specific theories, that must be integrated to provide a coherent model. There is also a variety of simulation platforms with different requirements. Many of these problems demand multidisciplinary teams, where the different backgrounds can hinder the communication and validation of simulations. The Model-Driven Engineering (MDE) of simulations has been proposed in other fields to address these issues. Such approaches develop graphical Modelling Languages (MLs) that researchers use to model their problems, and then semi-automatically generate simulations from those models. Working in this way promotes communication, platform independence, incremental development, and reutilisation. This paper presents the first steps for a MDE framework for traffic simulations. It introduces a tailored extensible ML for domain experts. The ML is focused on human actions, so it adopts an Agent-Based Modelling perspective. Regarding traffic aspects, it includes concepts commonly found in related literature following the Driver-Vehicle-Environment model. The language is also suitable to accommodate additional theories using its extension mechanisms. The approach is supported by an infrastructure developed using Eclipse MDE projects: the ML is specified with Ecore, and a model editor and a code generator tools are provided. A case study illustrates how to develop a simulation based on a driver's behaviour theory for a specific target platform using these elements.
Lecture Notes in Computer Science, 2018
Learning activities make use today of a variety of software tools, like Learning Management Syste... more Learning activities make use today of a variety of software tools, like Learning Management Systems (LMSs), online social networks, and forums. They enhance the experience by facilitating interactions among participants and with resources. These interactions can be used as a source of information on how the process is working for individual students or groups, and therefore to provide them a tailored support. However, lecturers can only do this monitoring in very simple ways, as their time is limited, tools generate large amounts of data, and students have very different profiles. In order to improve this situation, this work proposes the use of semi-automated assistants to analyse these data, able to learn from the lecturers’ expertise on what situations are relevant. The Assistant for Learning Activities (ALA) is an Adaptive Multi-Agent System (AMAS) that raises alerts when some events appear in data. Its architecture includes two groups of agents. The core are the agents that learn and classify the data to generate the alerts. There can be multiple groups of these agents to identify different types of alert. A second group of agents wraps and transforms data from sources to feed the first group. The ALA setup uses a prototypical training based on information from previous courses. Then, it learns and adjusts for a specific course using the lecturers’ feedback on the alerts it generates. The paper reports the currently undergoing validation of the ALA knowledge based on the information from the institutional LMS of a Spanish university.
Lecture Notes in Computer Science, 2014
Simulations can be used for the study of Online Social Networks (OSNs) as a means to harness thei... more Simulations can be used for the study of Online Social Networks (OSNs) as a means to harness their size and complexity, and to overcome the difficulties to set up experiments in real environments. Most existing tools for the analysis of OSNs focus on the graph structure of networks and emulate changes only from statistical data. This approach is unsuitable to study the evolution of OSNs as a consequence of the personal attributes and behaviours of their members. Our work addresses this issue with an agent-based simulation framework for OSNs called Krowdix. It provides support to specify discrete time simulations, where agents represent members of OSNs acting according to their profiles and context. This context comprehends the environment, other agents, groups of agents, and the whole network. Agent actions are responsible of network changes. Additionally, system actions can represent unexpected events external to agents. This agent-based approach facilitates the translation of actual observations to simulation models, and explaining networks in terms of their members.
Sensors, Jan 9, 2019
Shared spaces are gaining presence in cities, where a variety of players and mobility types (pede... more Shared spaces are gaining presence in cities, where a variety of players and mobility types (pedestrians, bicycles, motorcycles, and cars) move without specifically delimited areas. This makes the traffic they comprise challenging for automated systems. The information traditionally considered (e.g., streets, and obstacle positions and speeds) is not enough to build suitable models of the environment. The required explanatory and anticipation capabilities need additional information to improve them. Social aspects (e.g., goal of the displacement, companion, or available time) should be considered, as they have a strong influence on how people move and interact with the environment. This paper presents the Social-Aware Driver Assistance System (SADAS) approach to integrate this information into traffic systems. It relies on a domain-specific modelling language for social contexts and their changes. Specifications compliant with it describe social and system information, their links, and how to process them. Traffic social properties are the formalization within the language of relevant knowledge extracted from literature to interpret information. A multi-agent system architecture manages these specifications and additional processing resources. A SADAS can be connected to other parts of traffic systems by means of subscription-notification mechanisms. The case study to illustrate the approach applies social knowledge to predict people's movements. It considers a distributed system for obstacle detection and tracking, and the intelligent management of traffic signals.
Springer eBooks, Sep 12, 2007
Design patterns are templates of general solutions to commonlyoccurring problems in the analysis ... more Design patterns are templates of general solutions to commonlyoccurring problems in the analysis and design of software systems. In mature development processes, engineers use and combine these patterns to work out those parts of their systems that correspond to well-identified issues in their domains. The design of new structures is just concerned with those aspects that are specific for their projects and with the glue between different components. Model driven development approaches can benefit of design patterns to improve the building of models and their transformations; at the same time, design patterns can take advantage in this kind of approaches of a better integration in the overall development process. In the case of Agent-Oriented Software Engineering, design solutions for agents and multi-agent systems have been also described in the literature. However, their application and transformation to code largely relies on manual processes. This paper proposes a framework that includes repositories of patterns that can be reused in different projects and processes to generate models and code for multi-agent systems on different target platforms. Instead of focusing on low-level issues, our approach positions the abstraction level of these design patterns at the intentional and social features that characterize multi-agent systems. The paper illustrates this framework with a case study about the development of the models of an agentbased system for collaborative filtering of information. * This work has been funded by Spanish Ministry of Science and Technology under grant TIN2005-08501-C03-01 The spread of Model Driven Development in Software Engineering improves the integration of design patterns in the whole development cycle. Model Driven Development (MDD) advocates for building systems from models through automated transformations. The Object Management Group (OMG) proposes a standardized approach to MDD, the Model Driven Architecture (MDA) [10]. MDA mainly considers three kinds of models: Computational Independent Models (CIMs), Platform Independent Models (PIMs) and Platform Specific Models (PSMs). CIMs are intended for domain practitioners. They state the requirements of the system without knowledge about the models or artefacts to realize them. PIMs further specify the system to be with details about its software architecture and design. Finally, PSMs give the details necessary to build the system for a specific platform. The main advantage of this approach is that it layers the development in levels of abstraction that includes the models. From this departure point, its processes are intended to encourage reuse of design solutions and to save effort in the migration of systems to different target platforms. In this setting, design patterns are not longer external knowledge that forges the specifications of the system, but they become an integral part of the models of the system and are transformed with the remaining information to running code. Agent-Oriented Software Engineering (AOSE) has already applied both design patterns and MDD to build Multi-Agent Systems (MAS). Literature has documented research for its reuse in different designs. These patterns specify aspects like communication protocols, power relationships between individuals, or planning modules in individual agents. Examples of these patterns are the FIPA protocols for standardized auctions between agents (http://www.fipa.org). About MDD, the works described in [2, 4, 8, 16] are state of the art applications to build MAS integrating a MDD perspective. Nevertheless, many of these MAS developments with MDD are ad-hoc solutions [2, 4,], with focus on the generation of very specific portions of code, like the support for a protocol or a planning module. The generation of code for other aspects of MAS or domains usually needs a complete new development from scratch. Anyway, none of the studied approaches truly integrate design patterns, as developers must manually bring them into the specifications. That is, developers, departing from their own knowledge about the patterns or some abstract specification of them, must describe and customize those patterns for their specific methodology and project. Readers interested in more information about AOSE and MDD can read about several researches in [9]. From our point of view, the application of design patterns in MDD for MAS can be regarded at a higher level of abstraction than it is done in current practices. Instead of engineering isolated elements, we consider design patterns for intentional and social issues that traverse several aspects in the architecture of the whole MAS or individual agents. These patterns are intended to describe the ruling principles in the architecture of the MAS rather than the individual elements encompassed by that architecture. Given this target, we propose a partial framework for model driven development based on repositories of social patterns that act as predefined CIMs. Sets of automated transformations described declaratively will enable in the framework the generation of the PIMs for specific methodologies from these social patterns. A social pattern is a proven solution for a design problem about the intentional and social architecture of MAS.
Studies in the philosophy of sociality, Oct 11, 2013
Computer simulation can be a complementary tool to study culture. A main issue in its application... more Computer simulation can be a complementary tool to study culture. A main issue in its application is finding the suitable computational primitives to translate the abstractions of social studies in a given context. Looking to overcome this problem, our research has developed a modelling framework based on the Activity Theory. This theory regards culture as a set of artefacts (mental and physical) that groups of people build and communicate in social activities, which are networks of interconnected individual activities. The framework provides a modelling language and its execution model, patterns (i.e. social properties), and processes to specify systems and check their properties. These elements reduce the uncertainty about modelling by crystallizing the experience of multiple projects. A case study about the influence of culture in couple relationships illustrates the approach. It shows how to model the emergence of new social artefacts when people deal with conflicts using existent cultural influences.
Springer eBooks, 2012
Question Answering is an Information Retrieval task where the query is posed using natural langua... more Question Answering is an Information Retrieval task where the query is posed using natural language and the expected result is a concise answer. Voice-activated Question Answering systems represent an interesting application, where the question is formulated by speech. In these systems, an Automatic Speech Recognition module can be used to transcribe the question. Thus, recognition errors may be introduced, producing a significant effect on the answer retrieval process. In this work we study the relationship between some features of misrecognized words and the retrieval results. The features considered are the redundancy of a word in the result set and its inverse document frequency calculated over the collection. The results show that the redundancy of a word may be an important clue on whether an error on it would deteriorate the retrieval results, at least if a closed model is used for speech recognition.
Requirements Engineering, Aug 14, 2009
The human context within which a software system will operate is fundamental for its requirements... more The human context within which a software system will operate is fundamental for its requirements. It may not appear to be very much related to the system, but it is very relevant in achieving its successful adoption. However, requirements engineers have usually a background in Software Engineering and are not trained to elicit this kind of information. This situation raises
Inteligencia artificial, 2016
Today, it is common for software projects to collect measurement data through development process... more Today, it is common for software projects to collect measurement data through development processes. With these data, defect prediction software can try to estimate the defect proneness of a software module, with the objective of assisting and guiding software practitioners. With timely and accurate defect predictions, practitioners can focus their limited testing resources on higher risk areas. This paper reports the results of three empirical studies that uses an automated genetic defect prediction framework. This framework generates and compares different learning schemes (preprocessing + attribute selection + learning algorithms) and selects the best one using a genetic algorithm, with the objective to estimate the defect proneness of a software module. The first empirical study is a performance comparison of our framework with the most important framework of the literature. The second empirical study is a performance and runtime comparison between our framework and an exhaustive framework. The third empirical study is a sensitivity analysis. The last empirical study, is our main contribution in this paper. Performance of the software development defect prediction models (using AUC, Area Under the Curve) was validated using NASA-MDP and PROMISE data sets. Seventeen data sets from NASA-MDP (13) and PROMISE (4) projects were analyzed running a N × M-fold cross-validation. A genetic algorithm was used to select the components of the learning schemes automatically, and to assess and report the results. Our results reported similar performance between frameworks. Our framework reported better runtime than exhaustive framework. Finally, we reported the best configuration according to sensitivity analysis.
Zenodo (CERN European Organization for Nuclear Research), Apr 28, 2022
Forced displacement crises overcome societies and institutions all over the world. Pushed by the ... more Forced displacement crises overcome societies and institutions all over the world. Pushed by the urgencies rather than events, solutions are frequently reactive, partial, and disregard some groups. The project 'Reshaping Attention and Inclusion Strategies for Distinctively vulnerable people among the forcibly displaced' (RAISD) aims at identifying highly Vulnerable Groups (VG) among these forcibly displaced people, analysing their specific needs, and finding suitable practices to address them. The concept of 'vulnerability context' considers the interplay between the features of these persons and their hosting communities, their interactions and experiences, and how different solutions for attention and inclusion affect them. As a result of this work, a methodology to carry out these studies will be developed. These goals are aligned with the call. They pursue characterizing these migrations and developing suitable aid strategies for them. The Responsible Research and Innovation (RRI) frames the project. It proposes that all actors (including civil society) co-design actions, transversely integrates the gender perspective, and supports sustainability. Our research strategy will be based on methodological triangulation (i.e. the combined application of several methodologies). We will implement it through a specific participatory action research approach to fulfil the aim of undertaking advocacy-focused research, grounded in human rights and socio-ecological models. The team will work as a network of units in countries along migration routes. The units will promote the VG people' involvement, so they can speak with their own voices, gather information, and test practices. Work will rely on a tight integration of Social and Computer Sciences research. Automated learning and data mining will help to provide evidence-based recommendations, reducing a priori biases. A software tool will support collaboration, continuing previous H2020-funded RRI work. The sole responsibility of this publication lies with the author. The European Union is not responsible for any use that may be made of the information contained therein.