Research Topics

[Agents] - [Natural Langauge Interface] - [DBMS] - [Other]

Introduction

Students:  what follows is a list of research areas I am interested in that you may want to ask me about.  For most, I have a clear idea what is required; some require sleuthing just to get started.  Some are aimed at junior/senior undergraduates, others at M.S. or Ph.D. candidates.  This list is never complete - I can think of other interesting topics or you can suggest topics to me.  Generally, I have research interests in agents, natural language interfaces, DBMS, middleware and several other areas - see my research interests.

Honors College students:  the possibility exists of being awarded an Honors College Grant.  Here is an procedure including sample forms.

Senior Design and Capstone students:  A list of project ideas is here.  These can also be used for Honors Grants and some may be appropriate for BS or MS thesis topics.

Agents Area

Background:  Multi-agent systems consistent of collections of communicating agents that can each represent any entity including person, role like medic, robot, sensor, vehicle, passive object like tree or runway, group object like team, data sources like a DBMS, message sources, applications, the environment, the log, etc.  One way to think about agents is that they are wrapper components for any kind of entity. Agents can communicate with each other to query, request, command, etc.

Starting Point:  A simple, lightweight agent system (EiA Agent System) is under development which agents are implemened via Java Virtual Machines and agents use XML as a messaging language for interagent communication.  Currently EiA agents use email for message transport.  EiA agents can be on the same machine, on different machines, tethered, wireless, in a LAN or WAN.  A Small Unit Operations military demo scenario exists.  More background:
Research Topic #1:  Borg Collective.  In Star Trek, the Borg Collective is a kind of mindshare - tell one Borg something and they all know it.  Logically, the collection of all agents in an agent system might be viewed as a Borg Collective if there is a way for any agent to query all the agents to know what they know.  But there is another puzzle - a human should not receive all this information else they will be overwhelmed by the blizzard of information so they should just be told what they need to know.  The general puzzle then is to provide agents with limited knowledge of exactly what they need to know but give them a query capability that somehow can access all information.  One solution approach is a central database of all information that all agents know.  A drawback of one central database is a single point of failure so if this central database agent dies then agents have no one to ask for additional information.  Also, if say Group 1 (Rangers agents) stored their group knowledge in one central repository and Group 2 (local police agents) used another, then can one group query across the other group's organizational boundaries if the need arises - when both groups are part of one mission.  Another solution is they broadcast peer to peer.  Or maybe hubs.  The problem is to analyze a collection of such architectures and determine pros and cons of different possibilities.  Problem not fully defined.  Potential MS or PhD.
Research Topic #2: Views of a Simulation.  Let's assume that every message that any agent sends to another agent is logged (by bcc) to a central DBMS.  Then that log can be viewed as a representation of one or a collection of scenarios or vignettes.  Furthermore, it can be replayed in its entirety to watch the entire action unfold again (with some caveats - agents in simulation mode do not send messages to each other, instead all messages originate in the log and all messages sent by agents in simulation mode are logged/ignored/deleted (as well as any actions an agent might take during this dream-like replay).  A first puzzle is to implement simulation model (mostly done).  A second puzzle is to implement a subsetting capability so views or subsets of simulations can be replayed, e.g., just those messages in which a medic and a wounded soldier are replayed.  [This might involve also selecting other messages received from other agents during this time in case those side effect the agent-to-agent conversations one is studying.]  The ability to subset simulations seems to be new!]

Research Topic #3:  Mission Editor.  Let's assume a mission is specified using an ontology editor (e.g., Stanford Protege) consisting of a set of EiA agents, messages they can send, and other mission specific tasks. 
Research Topic #4:  Resynchronizing an Agent who has been disconnected.  If an agent becomes disconnected so that at some later time it receives a queued set of messages, how does it update itself, take a subset of the actions it should take, but not act on intermediate messages that are not longer up to date (e.g., a message received an hour ago that an enemy is hiding in a bush - but now friendly forces have already taken the bush and are hiding there).  A similar problem is how to add an agent into the mix and bring them up to date on the current situation.

Research Topic #5:  Agent Ontology Interoperability.  Assume you develop a ranger ontology using Protege and then a Police ontology.  Each understand somewhat different missions and messages.  But then you are asked to form a coalition where both can interoperate.  What is involved in making this interoperability easier to manage.

Research Topic #6:  Rearchitecting the EiA Agent System.  It would be highly desirable for CSCE to have a clean simple implementation of EiA that could be used as the basis for future agent research.  Funding agencies might smile more on us if we had an open source implementation that we and others developed agent solutions using.  Students working with me include:  Minh Vu, Joseph Robertson, Kevin Smith.  Along the way, one could add
Research Topic #7:  EiA Agent Interface to CSCE Robots.  Develop an XML language interface that maps to the native CSCE robot API.  Using this language, any EiA agent should be able to communicate with and control any CSCE robot.  Student assigned:  Quang Dong

Research Topic #8:  Security and Privacy for EiA Robots.  Oooops, so far our agents respond to messages received from just anyone so it is easy to spoof an agent.  How do we assure they only respond to other agents that they trust.  What happens if an agent is captured - how can you detect that it is no longer trustworthy?

Research Topic #9:  EiA Agent Applications
Research Topic #10:  Microlicensing.  Assume agent wrappers wrap Internet resources (data sources, applications, etc.) and we want to guard the resource and license its use or capability or results.  Develop an XML "license" that encapsulates digital rights and provides an interface for microcharging for use of the resource.  Then develop a means to compose microlicenses so that composite objects can exist that contain collections of microlicensed resources.  This might be an alternative to open source, one in which licensing is made easy - anyone on the web can license anything for the right price or compensation.  Student assigned:  Rishikesh Jena

Research Topic #11:  Validating an EiA Mission.  Let's say Agent1's address book inadvertantly drops Agent2.  Now, if Agent1 physically sees Agent2 but the agent system does not register this, then Agent2 might be viewed as an unknown person (and if this is a military scenario and Agent2 is carrying a weapon then as an enemy).  But this is an artifact of having correct and validated information.  How can we validate agent scenarios - ideas could include referential or other forms of integrity or consistency management or ...???

Natural Language Interface Area

Background:  Menu-based Natural Language Interface (MBNLI) technology uses standard NLI technology but in a directed completion-based way to restrict the language and guide the user to just the capabilities of the NLI and underlying system.  The technology has the potential to show up on any web page and could be a part of the coming semantic web.  More background:
Starting Point:  A basic MBNLI implementation exists.  A MBNLI basic interface generator exists for generating MBNLI interfaces to relational DBMS systems.  An early prototype of a spoken language interface to MBNLI exists. 

Research Topic #1:  MBNLI Interface Descriptors.  Using XML (or DAML), develop a collection of MBNLI descriptors for various MBNLI targets, e.g., databases on the web, agent systems, others to be discussed.  Each descriptor provides a MBNLI generator with inputs that describe a target application for which a MBNLI interface is to be generated.  Some descriptors may provide an entire MBNLI grammar and lexicon; others may provide a dbms schema and enough ODBC information to connect to a remote data source.  The descriptors could appear on any web page.  If one is encountered, it provides enough information to provide a MBNLI web service with intefacing instructions to autogenerate and manage a MBNLI interface to a remote web-based application.  Potential MS thesis.

Research Topic #2:   MBNLI Interface Composition.   If several objects in a room had MBNLI interfaces or if several MBNLI interfaces are accessible to one person at any given point, then develop the capability to compose MBNLI interfaces dynamically.  Each interface is a little language.  The composition covers a collection of languages.  There are several approaches for doing this including grammar union (formal languages), joining grammars, and unioning DBMS schemas and then generating interfaces.  Other operators on grammars might turn on or off grammar rules, for instance to limit access for some data to those with the right access rights.  Potential MS or PhD.

Research Topic #3:  Speech Interface to MBNLI.  Use Via Voice or similar system's API to develop a spoken language interface to MBNLI.  Potential MS thesis.

Research Topic #4:  MBNLI Interface to Application X.  Develop MBNLI interfaces to interesting applications.  Senior Thesis or MS Thesis.  Student assigned:  Jared Allen.  Potential targets:
Research Topic #5:  Other TBD.

Database Area

Background:  As Acxiom Database Chair in Engineering, I talk to Acxiom quite a bit about their research needs.  At present, I and other faculty in CSCE are working with Acxiom on the following research topics.  Each could lead to a MS and potentially to a 12 month GRA position to start May 2004.

Research Topic #1:  Node Partitioning in the Acxiom Grid.  Use DBMS indexing ideas (B-trees, Hash) to develop and test various ways for Acxiom to distribute records to nodes in the grid in such a way that grid nodes maintain balanced loads.  [There are some related problems here concerning replication of nodes and consistency maintence that Dr. Dale Thompson and Dr. Amy Apon are going to be working on].

Research Topic #2:  Automating Acxiom Data Transformation Flows.  Understand how Acxiom currently manually specifies data transformations from multiple input files or data sources and transforms these to desirable output files.  Then consider various approaches to automating this process.  This is joint work with Dr. Wing Li.

Research Topic #3:  Digital Rights and Integrity Contraints in Acxiom Data Flows. 
Use XML to model digital rights (see XrML and ODRL as candidate standards) and extend these ideas to develop a digital rights specification and manipulation language for writing rules and policies.  Apply this language to Acxiom data flow representation (also in XML).  Consider how to use the language to state security and privacy constraints.  See Microlicensing topic above.  Student assigned:  Ciprian Caloianu

Research Topic #4:  Dynamic Model of the Acxiom Grid Architecture. 

Research Topic #5:  MySQL on a Grid.  Look into whether and how MySQL can be ported to the Acxiom grid.  This is a big project and would require several dedicated students.  We have no current funding for this but a smaller exploratory project may tell us if this is a good idea or not.

Other Areas

Other areas I am generally interested in include: