Friday, February 18, 2011

NSF Summer Program at Texas Tech

NSF Research Experiences for Undergraduates (REU) - SUMMER 2011

View Online: www.cs.ttu.edu/reu/11summer/project.php
Program Flier: www.cs.ttu.edu/~smohan/Papers/TTU_REU2011x.pdf

Research projects and three-year plan

Each project will begin with an in-depth study of the scientific concepts that underlie each project. Students will also have the opportunity to observe the more theoretical activities of their graduate mentors and to see the results of their work in the broader context of the research objectives. Each student will also be required to work with graduate students in publication activities on the results of their work.

1. Construction of a self-managed embedded software system using software specifications

This project is directed by Dr.M. Shin to construct a self-managed embedded system that is flexible to design faults or unanticipated events. Embedded software systems need to be more reliable against design faults or unanticipated events (referred to as anomalies) so that the systems become more resilient to system failures. Embedded software systems are getting more complicated because of the nature of those applications. In the components of embedded software systems, the ordering of events is often not predictable and the communication between components needs to be synchronized. In addition, embedded software systems are necessary to be reconfigured in different ways in response to the number of given instances of components of the applications in each node.

The proposed self-managed embedded software system monitors anomalies in the system using the specifications that define the system behavior at runtime. The behavior of each component constituting a self-managed embedded software system is modeled using the UML statechart so that the system autonomously detects anomalies in the system at runtime. To do this, each component has its own monitor encapsulating the UML statechart, and the objects within a component communicate messages with the monitor to notify the status of the objects. Each component in a self-managed embedded software system reconfigures itself against anomalies detected at runtime so that the system has minimal impact from the anomalies. The scenarios for reconfiguring a software system against anomalies are described in the specifications of the software system using formal or informal notations. Some functions or services of the system may not be provided or degraded after reconfiguration against anomalies. The reconfiguration of the software system is carried out at the software system level. For this, each component may encapsulate its own reconfiguration plans, or a global component may encapsulate reconfiguration plans to manage the reconfiguration of the system.

The output of this project is a self-managed embedded software system that is developed through this project. We will select an embedded software system, which may be open source or developed for this project. The embedded software system will contain additional capabilities for self-management, monitoring anomalies and reconfiguring the system against the anomalies.This project will be deployed for three years. In the first year, we will implement a self-managed embedded software system that monitors anomalies in the system. In the second year, the system will be extended to the reconfigurable system against the anomalies detected. In the third year, the system will be refined based upon the experience on the first and second years, and the final version of system will be tested via a test bed.

2. Dynamic techniques for service composition and recovery in service-oriented environments

Service-oriented computing poses new challenges for failure recovery and semantic correctness of concurrent processes due to the autonomous nature of service execution. This research project, funded as Grant No. CCF-0820152, with Dr. S. Urban as the principal investigator, is investigating flexible, event and rule-driven techniques for service composition. The research includes the investigation of user-defined approaches to the specification of correctness for concurrent execution as well as the recovery of failed processes that execute in a loosely-coupled, service-oriented environment without isolation guarantees. By building on foundational concepts of recoverability from past work with transaction processing, the approach involves monitoring the externalized data changes of individual service executions to discover data dependencies.

The research project has developed the concept of Process Execution Agents (PEXAs) and the manner in which multiple PEXAs communicate to discover data dependencies that can be used to support recovery activities. PEXAs are responsible for controlling the execution of processes that are composed of web services. PEXAs are associated with specific distributed sites and are also responsible for capturing and exchanging information with other PEXAs about the data changes that occur at those sites in the context of service executions. The data dependencies that are dynamically discovered identify processes that may be affected by the recovery procedures of a failed process.

In addition to defining PEXAs, the research includes the development of methodologies for using events and rules to define more flexible approaches to the specification of process execution and recovery techniques. Assurance points are defined as a logical and physical form of checkpointing that can be used for storing state variables, checking user-defined correctness constraints, and using rules to alter the execution path under different conditions. Assurance points also provide logical points for rollback and recovery. In addition, assurance points are used together with events and rules to respond to application exceptions in different ways depending on the assurance point status of a process. When failures occur, assurance points also support the invocation of process interference rules that check critical data conditions when a process is determined to be data dependent on a failed process by the decentralized data dependency analysis algorithms supported by PEXAs.

The focus of the research is on demonstrating the correctness of the decentralized approach to data dependency analysis as well as the correctness of recovery procedures for a service composition model enhanced with user-defined correctness conditions. The research also involves the development of a methodology for the use of assurance points together with events, rules, and recovery procedures. The formal and methodological aspects of the work are being supported by the development of algorithms for the efficient implementation of decentralized data dependency analysis, condition evaluation for process interference rules, and rule-triggered recovery procedures.

Student projects will be coordinated with the current state of the research during each summer session, where students will work closely with the graduate research assistants. Students will be introduced to service-oriented computing and will be involved in the design of software services, data services, and service-oriented process execution scenarios that can be used to support testing and simulation of flexible service compositon and decentralized data dependency analysis. Students will be exposed to advanced transaction management issues for service-oriented environments, as well as the use of decentralized, peer-to-peer computing concepts.
 
3. Creating Software for Autonomous Robots and Adaptive Agents
 
Although mobile robots are increasingly being used in the real-world, the ability to robustly sense and interact with the environment is still missing. Real-world application domains are characterized by partial observability, non-determinism and dynamic changes. Widespread deployment of mobile robots in the real-world therefore requires the ability to autonomously learn environmental models based on sensory
inputs, adapt to unpredictable changes, tailor sensing and processing to the task at hand, and learn from minimal and unreliable feedback to collaborate robustly with other robots and humans.

The proposed research framework directed by Dr. M. Sridharan addresses the above-mentioned challenges by exploiting the fact that real-world domains are characterized by a significant amount of structure. Objects with unique characteristics (e.g., color and shape) are located at specific locations, though these characteristics and locations may not be known in advance and may change over time. This structure is exploited to develop bootstrap learning algorithms that incorporate local, global and temporal visual cues for the unsupervised learning of object models. The learned models are used by the robot to adapt to a wide range of environmental changes in dynamic domains.

A mobile robot equipped with multiple sensors still cannot observe the entire domain or process all the data from different sensors. However, only a fraction of the domain or input data is relevant to any specific task. In addition, though human feedback is a rich source of information, such feedback is not readily available and is often unreliable. The proposed framework develops probabilistic planning algorithms to enable a mobile robot to automatically tailor sensing and information processing to the task at hand. In addition, each
robot learns to effectively utilize the information communicated by its teammates, and the sparse feedback provided by humans, in order to collaborate robustly.

The proposed algorithms are evaluated in simulated domains, and on humanoid and wheeled robot platforms. Application scenarios include surveillance tasks and the robot soccer domain, where a team of humanoid robots play a competitive game of soccer on an indoor soccer field. Interested students will hence have the opportunity to work with graduate students on cutting-edge research projects, and participate in RoboCup, the international robot soccer competitions. More information on the robotics research projects can be found
online: http://www.cs.ttu.edu/~smohan/Research.html

No comments:

Post a Comment