Tools

Agent Technology

Agents are employed to automate the process of querying the various data sets provided by the Cultural Heritage institutions in an integrated manner. In the most general sense, an agent is a piece of software that acts on its environment to achieve a certain goal[1]. A multiagent system is a collection of interacting agents working in the same environment.

In the Golden Agents project, we employ a multiagent system where the environment is a collection of cultural heritage data sets regarding the Dutch Golden Age. The multiagent system aims at answering users’ queries by consulting and combining data from these various sources. To this end, three types of agents are being developed for this system: Data Source agents, Broker agents, and User agents.

A Data Source agent manages a single data set. It is able to learn which information the data set contains and is able to communicate this to other agents in the system. Furthermore, this agent is capable of executing queries on its data sets. A User agent manages the interaction with its associated (human) user in the system. A user agent may learn and represent the preference of its user, make decisions on its behalf, and assists its user to formulate its query. Lastly, the Broker agents are able to take a user query from the user agent, and analyse and split it into sub-queries that can be answered by individual Data Source agents. It requests the answers to those sub-queries from those Data Source agents and combines these results into a single answer to the original user’s query.

This multiagent system is being developed in the Intelligent Systems group of the Department of Information and Computing Sciences at Utrecht University. The system is being developed using the 2APL[2][3] (A Practical Agent Programming Language) framework, originally developed at the same department.


[1] Wooldridge, Michael, and Nicholas R. Jennings. Intelligent agents: Theory and practice. The knowledge engineering review 10.2 (1995): 115-152.

[2] Mehdi Dastani, 2APL: a practical agent programming language. International Journal of          Autonomous Agents and Multi-Agent Systems (JAAMAS), 16(3):214-248, Special Issue on Computational Logic-based Agents, (eds.) Francesca Toni and Jamal Bentahar, 2008.

[3] Mehdi Dastani and Bas Testerink. Design patterns for multi-agent programming. International Journal of Agent-Oriented Software Engineering 5.2-3 (2016): 167-202.