Matching Items (16)
155200-Thumbnail Image.png
Description
Affect signals what humans care about and is involved in rational decision-making and action selection. Many technologies may be improved by the capability to recognize human affect and to respond adaptively by appropriately modifying their operation. This capability, named affect-driven self-adaptation, benefits systems as diverse as learning environments, healthcare applications,

Affect signals what humans care about and is involved in rational decision-making and action selection. Many technologies may be improved by the capability to recognize human affect and to respond adaptively by appropriately modifying their operation. This capability, named affect-driven self-adaptation, benefits systems as diverse as learning environments, healthcare applications, and video games, and indeed has the potential to improve systems that interact intimately with users across all sectors of society. The main challenge is that existing approaches to advancing affect-driven self-adaptive systems typically limit their applicability by supporting the creation of one-of-a-kind systems with hard-wired affect recognition and self-adaptation capabilities, which are brittle, costly to change, and difficult to reuse. A solution to this limitation is to leverage the development of affect-driven self-adaptive systems with a manufacturing vision.

This dissertation demonstrates how using a software product line paradigm can jumpstart the development of affect-driven self-adaptive systems with that manufacturing vision. Applying a software product line approach to the affect-driven self-adaptive domain provides a comprehensive, flexible and reusable infrastructure of components with mechanisms to monitor a user’s affect and his/her contextual interaction with a system, to detect opportunities for improvements, to select a course of action, and to effect changes. It also provides a domain-specific architecture and well-documented process guidelines, which facilitate an understanding of the organization of affect-driven self-adaptive systems and their implementation by systematically customizing the infrastructure to effectively address the particular requirements of specific systems.

The software product line approach is evaluated by applying it in the development of learning environments and video games that demonstrate the significant potential of the solution, across diverse development scenarios and applications.

The key contributions of this work include extending self-adaptive system modeling, implementing a reusable infrastructure, and leveraging the use of patterns to exploit the commonalities between systems in the affect-driven self-adaptation domain.
ContributorsGonzalez-Sanchez, Javier (Author) / Burleson, Winslow (Thesis advisor) / Collofello, James (Thesis advisor) / Garlan, David (Committee member) / Sarjoughian, Hessam S. (Committee member) / Atkinson, Robert (Committee member) / Arizona State University (Publisher)
Created2016
151802-Thumbnail Image.png
Description
The complexity of the systems that software engineers build has continuously grown since the inception of the field. What has not changed is the engineers' mental capacity to operate on about seven distinct pieces of information at a time. The widespread use of UML has led to more abstract software

The complexity of the systems that software engineers build has continuously grown since the inception of the field. What has not changed is the engineers' mental capacity to operate on about seven distinct pieces of information at a time. The widespread use of UML has led to more abstract software design activities, however the same cannot be said for reverse engineering activities. The introduction of abstraction to reverse engineering will allow the engineer to move farther away from the details of the system, increasing his ability to see the role that domain level concepts play in the system. In this thesis, we present a technique that facilitates filtering of classes from existing systems at the source level based on their relationship to concepts in the domain via a classification method using machine learning. We showed that concepts can be identified using a machine learning classifier based on source level metrics. We developed an Eclipse plugin to assist with the process of manually classifying Java source code, and collecting metrics and classifications into a standard file format. We developed an Eclipse plugin to act as a concept identifier that visually indicates a class as a domain concept or not. We minimized the size of training sets to ensure a useful approach in practice. This allowed us to determine that a training set of 7:5 to 10% is nearly as effective as a training set representing 50% of the system. We showed that random selection is the most consistent and effective means of selecting a training set. We found that KNN is the most consistent performer among the learning algorithms tested. We determined the optimal feature set for this classification problem. We discussed two possible structures besides a one to one mapping of domain knowledge to implementation. We showed that classes representing more than one concept are simply concepts at differing levels of abstraction. We also discussed composite concepts representing a domain concept implemented by more than one class. We showed that these composite concepts are difficult to detect because the problem is NP-complete.
ContributorsCarey, Maurice (Author) / Colbourn, Charles (Thesis advisor) / Collofello, James (Thesis advisor) / Davulcu, Hasan (Committee member) / Sarjoughian, Hessam S. (Committee member) / Ye, Jieping (Committee member) / Arizona State University (Publisher)
Created2013
137679-Thumbnail Image.png
Description
Gamification is the process of adding game mechanics to non game activities, thus creating a more engaging environment. Loyals provides a gamification API which can be consumed to add Loyals (achievements) to any website, application, or mobile app. Loyals are used in two major ways: (1) to create an interactive

Gamification is the process of adding game mechanics to non game activities, thus creating a more engaging environment. Loyals provides a gamification API which can be consumed to add Loyals (achievements) to any website, application, or mobile app. Loyals are used in two major ways: (1) to create an interactive environment where users are rewarded for completing tasks and (2) as contextual information useful for analyzing user interaction with the application. The interactive environment inspires users to continue using an application while the contextual information can be used for improving the application to draw in new loyal visitors, ad targeting, creating user profiles, and much more.
ContributorsClaxton, Joshua Allen (Author) / Chen, Yinong (Thesis director) / Collofello, James (Committee member) / Irwin, Don (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2013-05
161726-Thumbnail Image.png
Description
The concept of multi-scale, heterogeneous modeling is well-known to be central in the complexities of natural and built systems. Therefore, whole models that have parts with different spatiotemporal scales are preferred to those specified using a monolithic modeling approach and tightly integrated. To build simulation frameworks that are expressive and

The concept of multi-scale, heterogeneous modeling is well-known to be central in the complexities of natural and built systems. Therefore, whole models that have parts with different spatiotemporal scales are preferred to those specified using a monolithic modeling approach and tightly integrated. To build simulation frameworks that are expressive and flexible, model composability is crucial where a whole model's structure and behavior traits must be concisely specified according to those of its parts and their interactions. To undertake the spatiotemporal model composability, a breast cancer cells chemotaxis exemplar is used. In breast cancer biology, the receptors CXCR4+ and CXCR7+ and the secreting CXCL12+ cells are implicated in spreading normal and malignant cells. As discrete entities, these can be modeled using Agent-Based Modeling (ABM). The receptors and ligand bindings with chemokine diffusion regulate the cells' movement gradient. These continuous processes can be modeled as Ordinary Differential Equations (ODE) and Partial Differential Equations (PDE). A customized, text-based BrSimulator exists to model and simulate this kind of breast cancer phenomenon. To build a multi-scale, spatiotemporal simulation framework supporting model composability, this research proposes using composable cellular automata (CCA) modeling. Toward this goal, the Cellular Automata DEVS (CA-DEVS) model is used, and the novel Composable Cellular Automata DEVS (CCA-DEVS) modeling is proposed. The DEVS-Suite simulator is extended to support CA and CCA Parallel DEVS models. This simulator introduces new capabilities for controlled and modular run-time animation and superdense time trajectory visualization. Furthermore, this research proposes using the Knowledge Interchange Broker (KIB) approach to model and simulate the interactions between separate geo-referenced CCA models developed using the DEVS and Modelica modeling languages. To demonstrate the proposed model composability approach and its use in the extended DEVS-Suite simulator, the breast cancer cells chemotaxis and others have been studied. The BrSimulator is used as a proxy for evaluating the proposed model composability approach using an integrated DEVS-Suite and OpenModelica simulator. Simulation experiments are developed that show the composition of spatiotemporal ABM, ODE, and PDE models reproduce the behaviors of the same model developed in the BrSimulator.
ContributorsZhang, Chao (Author) / Sarjoughian, Hessam S (Thesis advisor) / Crook, Sharon (Committee member) / Collofello, James (Committee member) / Pavlic, Theodore (Committee member) / Arizona State University (Publisher)
Created2021
153070-Thumbnail Image.png
Description
Software Managed Manycore (SMM) architectures - in which each core has only a scratch pad memory (instead of caches), - are a promising solution for scaling memory hierarchy to hundreds of cores. However, in these architectures, the code and data of the tasks mapped to the cores must be explicitly

Software Managed Manycore (SMM) architectures - in which each core has only a scratch pad memory (instead of caches), - are a promising solution for scaling memory hierarchy to hundreds of cores. However, in these architectures, the code and data of the tasks mapped to the cores must be explicitly managed in the software by the compiler. State-of-the-art compiler techniques for SMM architectures require inter-procedural information and analysis. A call graph of the program does not have enough information, and Global CFG, i.e., combining all the control flow graphs of the program has too much information, and becomes too big. As a result, most new techniques have informally defined and used GCCFG (Global Call Control Flow Graph) - a whole program representation which captures the control-flow as well as function call information in a succinct way - to perform inter-procedural analysis. However, how to construct it has not been shown yet. We find that for several simple call and control flow graphs, constructing GCCFG is relatively straightforward, but there are several cases in common applications where unique graph transformation is needed in order to formally and correctly construct the GCCFG. This paper fills this gap, and develops graph transformations to allow the construction of GCCFG in (almost) all cases. Our experiments show that by using succinct representation (GCCFG) rather than elaborate representation (GlobalCFG), the compilation time of state-of-the-art code management technique [4] can be improved by an average of 5X, and that of stack management [20] can be improved by an average of 4X.
ContributorsHolton, Bryce (Author) / Shrivastava, Aviral (Thesis advisor) / Collofello, James (Committee member) / Richa, Andrea (Committee member) / Arizona State University (Publisher)
Created2014
190884-Thumbnail Image.png
Description
Existing machine learning and data mining techniques have difficulty in handling three characteristics of real-world data sets altogether in a computationally efficient way: (1) different data types with both categorical data and numeric data, (2) different variable relations in different value ranges of variables, and (3) unknown variable dependency.This dissertation

Existing machine learning and data mining techniques have difficulty in handling three characteristics of real-world data sets altogether in a computationally efficient way: (1) different data types with both categorical data and numeric data, (2) different variable relations in different value ranges of variables, and (3) unknown variable dependency.This dissertation developed a Partial-Value Association Discovery (PVAD) algorithm to overcome the above drawbacks in existing techniques. It also enables the discovery of partial-value and full-value variable associations showing both effects of individual variables and interactive effects of multiple variables. The algorithm is compared with Association rule mining and Decision Tree for validation purposes. The results show that the PVAD algorithm can overcome the shortcomings of existing methods. The second part of this dissertation focuses on knee point detection on noisy data. This extended research topic was inspired during the investigation into categorization for numeric data, which corresponds to Step 1 of the PVAD algorithm. A new mathematical definition of knee point on discrete data is introduced. Due to the unavailability of ground truth data or benchmark data sets, functions used to generate synthetic data are carefully selected and defined. These functions are subsequently employed to create the data sets for this experiment. These synthetic data sets are useful for systematically evaluating and comparing the performance of existing methods. Additionally, a deep-learning model is devised for this problem. Experiments show that the proposed model surpasses existing methods in all synthetic data sets, regardless of whether the samples have single or multiple knee points. The third section presents the application results of the PVAD algorithm to real-world data sets in various domains. These include energy consumption data of an Arizona State University (ASU) building, Computer Network, and ASU Engineering Freshmen Retention. The PVAD algorithm is utilized to create an associative network for energy consumption modeling, analyze univariate and multivariate measures of network flow variables, and identify common and uncommon characteristics related to engineering student retention after their first year at the university. The findings indicate that the PVAD algorithm offers the advantage and capability to uncover variable relationships.
ContributorsFok, Ting Yan (Author) / Ye, Nong (Thesis advisor) / Iquebal, Ashif (Committee member) / Ju, Feng (Committee member) / Collofello, James (Committee member) / Arizona State University (Publisher)
Created2023