wiki:Projects

Projects

The projects page provides an overview of ongoing projects, completed projects, and interesting open projects. Open projects are interesting for researchers looking for projects as well as for master students that want to do a MSc Thesis. Have a look and mail to goal@ii.tudelft.nl if you are interested or have any questions.

Research

Research on agent programming involves studying agent programming languages and their features, their use in practice, and research into integrating various techniques such as planning and learning into these languages that are needed for developing effective agents. We provide a brief personal outline of a research agenda and research topics that we believe are important for progressing the field.

Fundamental and basic research questions:

  • What kind of expressiveness do we need in AOP? Or, what language elements and features are needed?
  • Which language elements and features of agent programming languages are actually used? Is the meaning of the language elements provided in agent programming languages clear to their users, i.e. programmers? Which methods for agent program design are effective? Which tools are needed to develop agent programs?
  • How can we verify that agent programs are correct? Can we use e.g. temporal logic combined with belief and goal operators to prove that agents are correct? Which techniques and tools are most effective for proving correctness? Which testing and debugging approaches are most effective?

Short-term important research questions:

  • Planning: Combining reactive, autonomous agents and planning.
  • Learning: How can we effectively integrate e.g. reinforcement learning into AOP to optimize action selection?
  • Debugging: Develop tools to effectively debug agents, mas(!). Raises surprising issues: Do we need agents that revise their plans?
  • Teamwork: What are effective mas structures to organize communication, coordination, cooperation between multiple agents?

And, last but not least, to address these questions we need to actually develop applications and take account of the lessons learned. Of course, what is most needed then is to share these experiences and lessons learned!

MSc Students

The projects page also contains information about projects available for master students that want to do a MSc Thesis related to GOAL.


Ongoing Projects


Agent-Based Cognitive Architectures

The aim of this project is to explore the relation between traditional cognitive architectures and agent-based architectures such as the GOAL agent architecture.

Planning capabilities for GOAL agents

The aim of this project is to provide GOAL agents with planning capabilities.

Self-Explaining Cognitive Agents

The aim of this project is to develop explanation facilities that support explaining the behaviour of an agent. Such facilities may be useful in the context of serious gaming for explaining gaming events to human players but also in the context of debugging an agent program for identifying problems and bugs.

Multi-Party Negotiation Game

A game to train teamwork is created, first using the Blocks World For Teams environment.


Completed Projects


The projects below have been completed.

Projects/UT3

Bachelor project to support the use of UT3 in GOAL.

GOAL Team for AgentContest 2013

The Multi-AgentContest (http://www.multiagentcontest.org/) uses EIS environments and can be used in combination with GOAL.

Serious Gaming and Virtual Environments

The aim of this project is to develop GOAL agents that control virtual characters in virtual training environments.

Smart Roads Project Page

Th aim of this project is to increase road throughput and safety using Agent Technology.

Learning Action Rule Priorities?

The aim of this project is to extend GOAL agents with learning capabilities. Reinforcement learning is used to learn action rule preference to optimize the action selection of a GOAL agent.

Empirical research on Agent Programming

The aim of this project is to establish best practices for agent program design and to identify programming patterns by analyzing existing code. An empirical approach is adopted to investigate how programmers solve particular coding problems. Using results from this research we may be able to improve programming practices for GOAL and for agent programming languages more generally.

A Comparison of Programming in POSH and GOAL

The aim of this project is to compare the development of agent programs in the POSH and GOAL agent platforms. An experiment has been setup and conducted in Prague and Delft that asked programmers to develop an agent for a virtual character in the so-called Emohawk environment. Novice and advanced programmers for both agent programming frameworks were distinguished. The aim of the experiment was to compare programmer's performance, the learning curve associated with each of frameworks, and analyze the features that were used in either framework for completing the task.

Testing Framework for GOAL

The aim of this project is to provide a unit testing framework for GOAL with agent modules being the unit tested.

GOAL for NetBeans

The aim of this project is to provide GOAL (and Prolog) editing capabilities in the NetBeans environment.

Eclipse for GOAL

The aim of this project is to create an Eclipse plugin to provide an integrated development environment for GOAL within this well-known environment.

Caching support for Agent Programming Languages

This project designed algorithms for single and multi-cycle caching for the agent programming languages 2APL, GOAL, and Jason.

GOAL interface for connecting to Repast

This project designed an interface to the Repast simulation environment that supports using GOAL agents for controlling Repast entities.

GOAL Controller for iCat Robot

This project developed an architecture that used GOAL for the cognitive layer to control the iCat robot. You can find Mirek Vink's thesis here.

Communication in GOAL

This project extended GOAL with advanced communication primitives and a simple distributed version of a GOAL mas has been developed using RMI. You can find Wouter de Vries' thesis here.

Implementation of the Environment Interface Standard for GOAL?

An Environment Interface Standard (EIS) has been created and GOAL has been adapted to comply with this standard.

Connecting GOAL to UnReal Tournament 2004

A behavioral layer has been develped that facilitates the connection of GOAL agents to Unreal Tournament 2004. We have used the Environment Interface Standard (EIS, see previous project), Pogamut 2, and dedicated code to achieve this goal. The project has been started to provide students in a course with a challenging environment to program agents. The Unreal Tournament project was first developed for the MKT2 Project in 2009.

TU Delft Science Center iCat Go Fish Game

In cooperation with the TU Delft Science Center an iCat controlled by a GOAL agent is developed that plays Go Fish (kwartetten in Dutch). The agent maintains an emotion model and is able to express emotions.

Model Checking GOAL Agents

The aim of this project is to develop the theory and implementation of model checking for GOAL agents. You can find Sung-Shik's thesis here.

GOAL Team for AgentContest 2011

The Multi-AgentContest (http://www.multiagentcontest.org/) uses EIS environments and can be used in combination with GOAL.


Open Projects


There are many projects that you can do related to GOAL. Below you can find a number of available projects. If you have any questions about doing a project with GOAL, please contact us.

Improving and Extending the GOAL Agent Platform

There are different ways in which the GOAL platform can be extended and improved.

  • Providing GOAL Agents with a Theory of Mind

The reasoning skills of a BDI agent are particularly important and can be extended in various ways. One important extensions concerns agents that are able to reason about other agents. That would agents allow to infer the needs of other agents and to predict what other agents will do. In psychology such skills have been studied under the umbrella term Theory of Mind and the challenge would be to develop similar human skills for interacting with other humans.

  • Extending GOAL to enable GOAL agents to handle preferences (e.g. I want this more than that).
  • Agents Communicating in Natural Language.

One particularly interesting idea to increase both the reasoning and interaction skills of GOAL agents at the same time is to provide GOAL agents with natural language skills. The basic idea would be to provide GOAL agents with a computational semantics for interpreting natural language in a particular domain. Natural language skills would allow agents to more easily interact with humans which is useful in a range of contexts (call centers, internet, e.g. shopping assistants, games, etc.). The challenge is to outperform what has been achieved already in classic domains such as the Blocks World which is quite well-behaved (a classic and very famous reference is SHRDLU of Terry Winograd).

  • Using GOAL as a planner, to solve planning problems. Extensions with utility-based action selection.

Tooling

  • Creating a sophisticated Integrated Development Environment for GOAL, e.g. a plugin for Eclipse.
  • Developing debugging tools.
  • Verification and Model Checking: Verification of multi-agent systems (communication etc). Model checking GOAL agents.
  • Development of theorem prover to check and verify GOAL agents.

Agents for Games and Simulation

Agent-Based Modeling (ABM) and Simulation is a hot topic in agent research. Follow this link for a nice introduction by Axelrod and Tesfatsion on ABM. Agents are also more and more used in gaming for controlling avatars, bots, virtual characters, and crowds in gaming environments such as Unreal Tournament or Second Life. The past years a number of workshops on this topic have been organized, see e.g. Agents for Games and Simulation at AAMAS 2010 and Workshop on the uses of Agents for Education, Games and Simulations at AAMAS 2011.

Topics related to this theme involve, for example:

  • adapting the skill level of an agent to the level of a human player.
  • creating bots and crowds that appear as natural as possible. This is related to creating believable agents.

There are quite a few technical challenges that need to be addressed as well related to how to connect agents to entities in a game. See also the Environment Interface Standard? (EIS) project. One of the challenges here is how to handle percepts and the interpretation of the virtual or gaming environment in real-time. Although we want ever more intelligent agents to control entities in environments we also want to ensure these entities are able to react fast. The basic idea to deal with such issues is to provide an architectural solution and differentiate between a cognitive layer and a behavioral layer. This raises new questions such as which information should be available for the agents from the game or simulation engine. Other issues like how agents can synchronize their behavior are also interesting, click [here for some additional discussion of this topic.

Given that we are able to connect agents to gaming and simulation environments, one of the other big challenges is to create more interesting games based on agent technology. Can we design new and more interesting games containing intelligent agents?

Agent Competition

Every year a competition is organised between universities and developers of agent platforms to provide a challenge for these platforms. The motivation for the competition consists in the fact that many new insights may be gained that may help to improve these platforms. Participants may also benefit from others and can learn from the tools and features that others use to build their agents.

The contest thus provides a challenge that combines fun with research. The multi-agent contest stimulates the evolution of new techniques and ways to develop agents. More information can be found here.

Goto to our own page on the AgentContest and GOAL. See also: 2009 Multi-Agent Contest?.

Applications

  • Applying GOAL to implement games (RoboCup, Quake, ...), believable characters (movies, entertainment, Second Life).
  • Developing negotiating GOAL agents.
  • Creating agent-based simulation tools for e.g. NASA Space Operations, Supply Chain networks (cf. the related work on TACT), etc. using GOAL.
  • Using GOAL to control robots such as the AIBO or Mindstorm robot.
  • Applying GOAL on mobile devices, such as mobile phones and PDAs.

Last modified 3 months ago Last modified on Dec 15, 2016, 9:47:55 PM