Article

Dynamic website optimization through autonomous management of design patterns

Authors:
To read the full-text of this research, you can request a copy directly from the author.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the author.

Thesis
Full-text available
Decision-making is an inevitable part of software engineering. Software engineers make a considerable number of decisions during the software development life cycle. Thus, as a subset of software engineering, software production can be considered a continuous decision-making process. The decision process refers to the steps involved in choosing and evaluating the best fitting alternative solution(s) for software engineers, as decision-makers, according to their preferences and requirements. Additionally, a software product is typically a long-living system to determine the future of the product and the costs associated with its development. In order to make informed decisions, the decision-makers around a software product should either acquire knowledge themselves or hire external experts to support them with their decision-making process. The process gets more complicated as the number of decision-makers, alternatives, and criteria increases. Therefore, software production is a suitable domain to deploy decision support systems that intelligently support these decision-makers in the decision-making process. A decision model for each decision-making problem is required to externalize and organize knowledge regarding the selection context. In this dissertation, we focus on pragmatically selected decision-making problems that software engineers face in software production. The following categories of software production decisions are discussed: (1) decision-making regarding COTS components for inclusion into software products. (2) decision problems related to software development technologies that deal with finding the best fitting technologies for developing a software product. (3) architectural design decisions concerning pattern-driven software design. We developed a theoretical framework to assist software engineers with a set of Multi-Criteria Decision-Making (MCDM) problems in software production. The framework provides a guideline for software engineers to systematically capture knowledge from different knowledge sources to build decision models for MCDM problems in software production. Knowledge has to be collected, organized, and quickly retrieved when it is needed to be employed. We designed, implemented, and evaluated a decision support system (DSS) that utilizes such decision models to facilitate decision-making and support software engineers with their daily MCDM problems. The framework and the decision support system have been used to model and support software engineers with the following decision-making problems: 1. COTS component selection problems: ˛ Database Technology Selection ˛ Cloud Service Provider Selection ˛ Blockchain Platform Selection 2. Software development technology selection problems: ˛ Programming Language Ecosystem Selection ˛ Model-Driven Software Development Platform selection 3. Decision-Making in Pattern-Driven Design: ˛ Software Architecture Pattern Selection A broad study has been carried out based on qualitative and quantitative research to evaluate the DSS’s efficiency and effectiveness and the decision models inside its knowledge base to support software engineers with their decision-making process in software production. The DSS and the decision models have been evaluated through 21 real-world case studies at different software-producing organizations located in the Netherlands and Iran. The case study participants asserted that the approach and tooling provide significantly more insight into their selection process, provide a richer prioritized option list than if they had done their research independently, and reduce the time and cost of the decision-making process. However, we also asserted that it is not easy to implement, adopt, and maintain such a system as its knowledge base must be updated regularly. Moreover, software engineers’ strong opinions surrounding technology alternatives make it somewhat more complicated to find consensus in the data. We conducted 89 qualitative semi-structured interviews with senior software engineers to explore expert knowledge about the decision-making problems, decision models, and the outcomes of our study. The dissertation concludes that software production decisions are best made with decision support systems but that the steps towards full adoption of such systems are hampered. First, gathering and maintaining appropriate knowledge in a centralized manner is relatively costly and requires more time investment than traditional decision methods. Secondly, software engineers are not used to using such technologies and find it challenging to adopt it into their daily practice.
Thesis
Full-text available
In this work, we attempt to answer the question: "How to learn robust and interpretable rule-based models from data for machine learning and data mining, and define their optimality?".Rules provide a simple form of storing and sharing information about the world. As humans, we use rules every day, such as the physician that diagnoses someone with flu, represented by "if a person has either a fever or sore throat (among others), then she has the flu.". Even though an individual rule can only describe simple events, several aggregated rules can represent more complex scenarios, such as the complete set of diagnostic rules employed by a physician.The use of rules spans many fields in computer science, and in this dissertation, we focus on rule-based models for machine learning and data mining. Machine learning focuses on learning the model that best predicts future (previously unseen) events from historical data. Data mining aims to find interesting patterns in the available data. To answer our question, we use the Minimum Description Length (MDL) principle, which allows us to define the statistical optimality of rule-based models. Furthermore, we empirically show that this formulation is highly competitive for real-world problems.
Preprint
Full-text available
Fairness is a critical system-level objective in recommender systems that has been the subject of extensive recent research. It is especially important in multi-sided recommendation platforms where it may be crucial to optimize utilities not just for the end user, but also for other actors such as item sellers or producers who desire a fair representation of their items. Existing solutions do not properly address various aspects of multi-sided fairness in recommendations as they may either solely have one-sided view (i.e. improving the fairness only for one side), or do not appropriately measure the fairness for each actor involved in the system. In this thesis, I aim at first investigating the impact of unfair recommendations on the system and how these unfair recommendations can negatively affect major actors in the system. Then, I seek to propose solutions to tackle the unfairness of recommendations. I propose a rating transformation technique that works as a pre-processing step before building the recommendation model to alleviate the inherent popularity bias in the input data and consequently to mitigate the exposure unfairness for items and suppliers in the recommendation lists. Also, as another solution, I propose a general graph-based solution that works as a post-processing approach after recommendation generation for mitigating the multi-sided exposure bias in the recommendation results. For evaluation, I introduce several metrics for measuring the exposure fairness for items and suppliers, and show that these metrics better capture the fairness properties in the recommendation results. I perform extensive experiments to evaluate the effectiveness of the proposed solutions. The experiments on different publicly-available datasets and comparison with various baselines confirm the superiority of the proposed solutions in improving the exposure fairness for items and suppliers.
Thesis
Full-text available
This thesis broadens current understanding of how location-based games can promote meaningful social interaction in citizens' own neighbourhoods. It investigates social cohesion and the role of social interaction to its promotion, delves into which requirements users have for playing in their neighbourhood and with its citizens, and takes a technical perspective into how this type of games should be designed to be successful at triggering interaction in public space. From this understanding, which stems from adolescents and adults from Rotterdam and The Hague, NL, a specific design and prototype of a location-based game is proposed and tested. This thesis addresses several gaps found in the current body of knowledge. On the one hand, meaningful interactions are person-dependent, can occur in various forms, and their impact on societies is not well understood. On the other hand, it is not well understood how to build location-based games for such aim: it is not known which requirements should be considered, attempts to build location-based games are often a product of in-house development not centred early on around users, no known guidelines exist for meaningful social interaction, and no consensus exists on what to consider when building location-based games from a technical perspective.This thesis offers learnings on how to best design location-based games to promote interaction that matters to local communities. It firstly offers an overview of social cohesion and how multiple factors and actors have the power to influence local communities. It then argues that meaningful social interaction bears the power to break down stereotypes and prejudice, empowers people's agencies to act, has a positive impact on cohesion, emerges at people's own pace, and addresses conflict. From this, it dives into the preferences, needs and desires of adolescents and adults to better understand what sorts of interactions are meaningful to them. This thesis explores throughout several case studies the requirements that these target groups have, and advances gameplay dynamics and game activity types that location-based games should implement to be successful at inviting meaningful social interaction in public space. These case studies also research different sorts of interaction that each game activity type invites players to have, and elicit specific game ideas that are particularly tailored around perceived-to-be socially challenging neighbourhoods in The Netherlands. These case studies culminate in the recommendation of several guidelines to be used at different stages of the game design: gameplay requirements, guidelines for meaningful social interaction to occur in the studied groups, and the sorts of game activities that designers should include to invite specific forms of social interaction. This thesis also proposes a systems architecture with key architectural components, to drive consensus and inform on what to consider when building location-based games for this purpose from a technical perspective.The lessons learned that are advanced in this thesis help practitioners design location-based games that are more tailored to what future players want to play, and help researchers understand what it means to design for meaningful social interaction in any public space around the world. Players have distinct preferences with regard to the ways they are exposed to their own neighbourhood, and the forms of interaction they would rather experience. Understanding this, and incorporating such preferences in game design, lead to gameplay experiences that can have a positive effect on societies, as they have the power to promote interaction and positive relationships in local communities. These gameplay experiences invite individuals to come together and have meaningful interactions in a playful way, (re)engage with their own neighbourhood, and be part of their local community.
Thesis
Full-text available
For a long time, humanity has lived upon the paradigm that the amounts of natural resources are unlimited and that the environment has ample regenerative capacity. However, the notion to shift towards sustainability has resulted in a worldwide adoption of policies addressing resource efficiency and preservation of natural resources. One of the key environmental and economic sustainable operations that is currently promoted and enacted in the European Union policy is Industrial Symbiosis. In industrial symbiosis, firms aim to reduce the total material and energy footprint by circulating traditional secondary production process outputs of firms to become part of an input for the production process of other firms. This thesis directs attention to the design considerations for recommender systems in the highly dynamic domain of industrial symbiosis. Recommender systems are a promising technology that may facilitate in multiple facets of the industrial symbiosis creation as they reduce the complexity of decision making. This typical strength of recommender systems has been responsible for improved sales and a higher return of investments. That provides the prospect for industrial symbiosis recommenders to increase the number of synergistic transactions that reduce the total environmental impact of the process industry in particular
Thesis
Full-text available
Real-life processes are characterized by dynamics involving time. Examples are walking, sleeping, disease progress in medical treatment, and events in a workflow. To understand complex behavior one needs expressive models, parsimonious enough to gain insight. Uncertainty is often fundamental for process characterization, e.g., because we sometimes can observe phenomena only partially. This makes probabilistic graphical models a suitable framework for process analysis. In this thesis, new probabilistic graphical models that offer the right balance between expressiveness and interpretability are proposed, inspired by the analysis of complex, real-world problems. We first investigate processes by introducing latent variables, which capture abstract notions from observable data (e.g., intelligence, health status). Such models often provide more accurate descriptions of processes. In medicine, such models can also reveal insight on patient treatment, such as predictive symptoms. The second viewpoint looks at processes by identifying time points in the data where the relationships between observable variables change. This provides an alternative characterization of process change. Finally, we try to better understand processes by identifying subgroups of data that deviate from the whole dataset, e.g., process workflows whose event dynamics differ from the general workflow.
Thesis
Full-text available
Transportation sector plays an important role in the growth of national economies. Advances in information technology have facilitated newcollaboration opportunities among transport companies. Ubiquitous and faster internet now enables transport companies to access real time data about events in a transport network. New collaboration opportunities and access to real time data, have given rise to new transport practices. Synchromodal Transport (SmT) or Synchromodality, is a new transport practice, where the route and transport mode for transporting cargo is chosen dynamically, i.e., while the cargo is in-transit. If a disruption event occurs, causing a delay in transportation, the cargo may be shifted to another transport mode. Existing research over SmT is biased towards routing and capacity planning challenges posed by SmT. Data integration challenges posed by SmT, have not received their due attention from researchers. The primary data integration challenge is the integration of contextual events data and transport planning data. This dissertation provides a solution to data integration challenges posed by SmT, by designing a Synchromodal Transport Integration Platform (SmTIP). I, designed SmTIP based on the results of three research activities. The first research activity is SmT stakeholders’ interview, which resulted in a list of requirements for SmTIP. The second research activity is analysis of SmT practices, which resulted in a list of relevant contextual events and processes for a SmT scenario. The third research activity is studying the state-of-the-art in integration platform design, which resulted in a reference architecture for integration platforms. I, then, developed a prototype based on SmTIP. The prototype integrates transport data and contextual events data, enables dynamic transport planning and in case of a disruption event, changing the transport mode of cargo. When representatives from transport companies used SmTIP prototype, their responses induced improvements in SmTIP design. This dissertation is useful for transport companies, researchers in transportation sector and information technology sector. Transport companies can get acquainted with, SmT processes, relevant contextual events, data integration challenges posed by SmT and how to overcome them. Researchers in transportation sector, can use this dissertation as an introduction to SmT. It will help them understand SmT scenario, SmT processes and relevant disruption events. Documented responses of transport companies’ representatives during SmTIP validation will help researchers in the future improvement of SmTIP and in designing validation experiment setups. This dissertation enhances SmT research. It fills the research gap of SmT data integration challenges by: (1) identifying the data integration challenges, (2) listing the requirements for SmTIP, and (3) designing SmTIP to overcome them. Researchers and practitioners in information technology, can use the reference architecture for integration platforms to address data integration challenges in different application domains. For that purpose, the refinement of the reference architecture to SmT domain, as shown in this dissertation, may be used as a guide.
Thesis
Full-text available
Automatic control is a technique about designing control devices for controlling ma- chinery processes without human intervention. However, devising controllers using conventional control theory requires first principle design on the basis of the full under- standing of the environment and the plant, which is infeasible for complex control tasks such as driving in highly uncertain traffic environment. Intelligent control offers new op- portunities about deriving the control policy of human beings by mimicking our control behaviors from demonstrations. In this thesis, we focus on intelligent control techniques from two aspects: (1) how to learn control policy from supervisors with the available demonstration data; (2) how to verify the controller learned from data will safely control the process.
Thesis
Full-text available
Changing behavior is an intricate and difficult process, which requires people to make a conscious decision to change, and stick with it for a long period of time. To really be able to change we need awareness and motivation. Luckily, most people now own technology that can be used for communication, and therefore also for support and motivation, if we can harness the technology to our advantage. Using technologies to motivate people to change their behaviors is increasingly explored. However, developing motivational technology that effectively supports long-term behavior change is a challenge. Solutions offered in the field are: (1) basing motivational strategies on existing behavior change theory and (2) tailoring the strategies to characteristics of the user. But how can we operationalize these theory-based strategies so that we can use them in motivational technology? And what characteristics should one tailor these strategies to? In this dissertation, we investigate how we can motivate people to inherently change their physical activity behavior through theory-based and tailored interventions in the form of motivational text messages. This involves exploring, evaluating, and documenting ways in which we can operationalize theory-based strategies, researching and evaluating characteristics of the user that can be used to tailor these theory-based strategies to, and finally, testing and comparing the theory-based strategies in a field study.
Article
Searching in digital video data for high-level events, such as a parade or a car accident, is challenging when the query is textual and lacks visual example images or videos. Current research in deep neural networks is highly beneficial for the retrieval of high-level events using visual examples, but without examples it is still hard to (1) determine which concepts are useful to pre-train (Vocabulary challenge) and (2) which pre-trained concept detectors are relevant for a certain unseen high-level event (Concept Selection challenge). In our article, we present our Semantic Event Retrieval System which (1) shows the importance of high-level concepts in a vocabulary for the retrieval of complex and generic high-level events and (2) uses a novel concept selection method (i-w2v) based on semantic embeddings. Our experiments on the international TRECVID Multimedia Event Detection benchmark show that a diverse vocabulary including high-level concepts improves performance on the retrieval of high-level events in videos and that our novel method outperforms a knowledge-based concept selection method.
Article
Entity resolution (ER) is the problem of identifying duplicate tuples, which are the tuples that represent the same real-world entity. There are many real-life applications in which the ER problem arises. These applications range from news aggregation websites, identifying the news that cover the same story, in order to avoid presenting one story several times to the user, to the integration of two companies' customer databases in the case of a merger, where identifying the tuples that refer to the same customer is crucial. Due to its diverse applications, the ER problem has been formulated in different ways in the literature. The two main ER's related problem formulations include: 1) identity resolution, and 2) reduplication. In identity resolution, the aim is to find duplicate(s) of a given tuple in a given database, while in deduplication, the aim is to find groups of duplicate tuples in a given database, and merge them in order to increase the quality of the database itself. The ER problem is however not limited to deterministic (ordinary) databases, rather it also arises in applications that deal with probabilistic databases, i.e. databases in which each tuple or attribute value is associated with a probability value to, for instance, indicate its confidence level. In this thesis, we study the ER problem in probabilistic databases. More specifically, we study the following problems: 1) identity resolution in probabilistic data, 2) identity resolution in distributed probabilistic data, 3) deduplication in probabilistic data, and 4) schema matching in a fully automated setting.
Conference Paper
Full-text available
In this paper we investigate whether a personality profile can be determined by observing a player's behavior in a game. Five personality traits are used to define a personality profile. They are adopted from the Five Factor Model of personality. The five traits are measured by the NEO-PI-R questionnaire. For our purpose, we developed a game module for the game Neverwinter Nights. The module automatically stores a player's behavioral data. Experimental trials were run measuring the behavior of 44 participants. The experiment produced game behavior scores for 275 game variables per player. Correlation analysis shows relationships between all five personality traits and the video game data. From these results, we may conclude that a video game can be used to create an adequate personality profile of a player.
Thesis
Full-text available
The thesis explores individual differences in listening behavior and how these differences can be used in the development and evaluation of listener response prediction models for embodied conversational agents. The thesis starts with introducing methods to collect multiple perspectives on listening behavior. The first method introduced is recording the listening behavior of multiple listeners in interaction with the same speaker. In the MultiLis corpus interactions between one speaker and three listeners are recorded. All four interlocutors believe they are engaged in a one-on-one interaction. The second method presented uses parasocial sampling to collected perspectives on listening behavior. Here participants watch videos of recorded speakers and annotate the places where they would give a listener response if they were the actual listener in the interaction. Following, the collected perspectives are combined into a consensus perspective. Doing this identifies response opportunities. Response opportunities are moments where at least one of the listeners has given a response. Through conversation analysis the characteristics of the response opportunities where most listeners responded and characteristics of response opportunities where only one listener responded are identified. The context of these response opportunities is analyzed on content of the speech, timing in relation to pauses, pitch and energy of the speech signal and gaze direction of the speaker. These features are used in the listener response prediction models that are developed in the next part of the thesis. These models are developed by learning the models on the MultiLis corpus. Different methods to use the perspectives are explored both in the development phase of the models and in the evaluation stage. The methods explored are 1) learning using a specific subset of the response opportunities based on number of listeners that responded as training or evaluation data, 2) active learning where the subjective ratings from observers of generated listeners based on an earlier model are used in the development of the subsequent model as negative training samples and 3) learning a model for each speaker independently and selecting the model based on the similarity of the new speaker and the speaker the model was trained on.
Article
Computer games are more and more often used for training purposes. These virtual training games are exploited to train competences like leadership, negotiation or social skills. In such virtual training, a human trainee interacts with one or more virtual characters playing the trainee’s team members, colleagues or opponents. To learn from virtual training, it is important that the virtual characters display realistic human behavior. This can be achieved by human players who control the virtual game characters, or by intelligent software agents that generate the behavior of virtual characters automatically. Using intelligent agents instead of humans allows trainees to train independently of others, which gives them more training opportunities. A potential problem of using intelligent agents is that trainees do not always understand why the agents behave the way they do. For instance, virtual team members (played by intelligent agents) that do not follow the instructions of their leader (a human trainee) may have misunderstood the instructions, or disobey them on purpose. After playing the scenario, the trainee does not know whether he should communicate clearer, or give better or safer instructions. A solution is to let virtual agents explain the reasons behind their behavior. When trainees can ask their co-players to explain the motivations for their actions, they are given the opportunity to better understand played scenarios and their own performance. This thesis proposes an approach to automatically generate explanations of the behavior of virtual agents in training games. Psychological research shows that people usually explain and understand human (or human-like) behavior in terms of mental concepts like beliefs, goals and intentions. In the proposed approach, actions of virtual agents are also explained by mental concepts. To generate such explanations in an efficient way, agents are implemented in a BDI-based (Belief Desire Intention) programming language. The behavior of BDI agents is represented by beliefs, goals, plans and intentions, and their actions are determined by a reasoning process on their mental concepts. Thus, the mental concepts that are responsible for the generation of an action can be reused to explain that action. The approach can generate different types of explanations. Empirical studies with instructors, experts and novices, respectively, showed that people generally prefer explanations that contain a combination of the belief that triggered an action, and the goal that is achieved by the action. In a validation study in the domain of virtual negotiation training, subjects indicated that the agent’s explanations increased their understanding in the motivations behind its behavior. In a validation study in the domain of human-agent teamwork, subjects better understood the agent’s behavior and preferred the amount of information provided by the agent when the agent explained its behavior. Finally, the approach was extended to make agents capable of providing explanations containing predictions about the behavior of other agents. For that, the explainable agents were equipped with a theory of mind, that is, the ability to attribute mental states such as beliefs and goals to others, and based on that, make predictions about their behavior.
Article
A brain-computer interface (BCI) enables direct communication from the brain to devices, bypassing the traditional pathway of peripheral nerves and muscles. Current BCIs aimed at patients require that the user invests weeks, or even months, to learn the skill to intentionally modify their brain signals. This can be reduced to a calibration session of about half an hour per session if machine learning (ML) methods are used. The laborious recalibration is still needed due to inter-session differences in the statistical properties of the electroencephalography (EEG) signal. Further, the natural variability in spontaneous EEG violates basic assumptions made by the ML methods used to train the BCI classifier, and causes the classification accuracy to fluctuate unpredictably. These fluctuations make the current generation of BCIs unreliable. In this dissertation,we will investigate the nature of these variations in the EEG distributions, and introduce two new, complementary methods to overcome these two key issues. To confirm the problem of non-stationary brain signals, we first show that BCIs based on commonly used signal features are sensitive to changes in the mental state of the user. We proceed by describing a method aimed at removing these changes in signal feature distributions. We have devised a method that uses a second-order baseline (SOB) to specifically isolate these relative changes in neuronal firing synchrony. To the best of our knowledge this is the first BCI classifier that works on out-of-sample subjects without any loss of performance. Still, the assumption made by ML methods that the training data consists of samples that are independent and identically distributed (iid) is violated, because EEG samples nearby in time are highly correlated. Therefore we derived a generalization of the well-known support vector machine (SVM) classifier, that takes the resulting chronological structure of classification errors into account. Both on artificial data and real BCI data, overfitting is reduced with this dependent samples support vector machine (dSVM), leading to BCIs with an increased information throughput.
Article
Full-text available
Decision makers often have to make difficult trade-offs in situations where multiple aspects matter that are different by nature. For example, in a crisis scenario with a big fire in a factory, trade-offs may have to be made between the safety of the victims and personnel, and the effects on the environment. When making a complex decision, argumentation plays an important role. This thesis addresses the main research question of how a computer can use argumentation to support a person in making a complex decision. To accomplish this, the thesis focuses on answering the following two research questions: (1) how can a computer argue about why a person should prefer one decision to another, and (2) how can a computer effectively support a person in this process. Decision theory literature describes methods to decompose what a person values into general areas of concern, intermediate objectives, and specific evaluation criteria. Although expressive, the quantitative nature complicates their use in supporting complex decisions in a natural way. Argumentation literature describes methods to make decisions. Although arguing is natural, these methods cannot be used to justify preferences between decisions in more complex situations. The thesis proposes a model designed to support evaluating decisions from different perspectives, determining what perspectives should be considered, and how important these perspectives should be. This model combines decision theory with argumentation theory. In my model, value is seen from a perspective and decisions are compared from the perspectives the decision maker cares about. To understand what the decision maker cares about, his perspective is decomposed into perspectives representing the general areas of concern that he has (i.e., the values that he holds). These general areas of concern are further decomposed into intermediate objectives and specific evaluation criteria. In this way, abstract values are made concrete, which enables the computer to compare decisions on these criteria. Given an understanding of the perspectives the decision maker cares about, the computer can then use a number of argumentation schemes to justify why the decision maker should prefer one decision to another. Moreover, several argumentation schemes are proposed to justify why one argument for a decision is stronger than another. In this way, the computer can reason about what the decision maker should do. Dialogues are used to support the decision maker in a natural way. Using a dialogue, the decision maker can put forward a counterargument when he disagrees with an argument of the computer. To accomplish this, an existing dialogue system is extended such that the computer and decision maker can not only exchange arguments, but also argue about the strength of these arguments. While exchanging arguments, the computer learns more about what the decision maker values and can use this information to advance more persuasive arguments. Finally,a method is proposed that use my value model to select the most persuasive argument in the dialogue.
ResearchGate has not been able to resolve any references for this publication.