Logic Programming at City University, London

by Michael Schroeder

The distributed and agent-based systems group at City University, London, hosts four systems involving logic programming:

1. Revise [1] has been developed by Carlos Damasio, Luis Moniz Pereira, and Michael Schroeder at Universidade Nova de Lisboa. It implements two-valued revision of contradictory extended logic programs with WFSX. The first version of the system used bottom-up computation, which was even for small problems intractable. A significant performance increase was achieved by using top-down derivation. In co-operation with Universidade Nova de Lisoba and as part of City University's REVISE 3.0 project, we aim to improve performance once more by using a novel approach already successful in some diagnosis applications, which operates directly on the models rather than computing them from scratch using bottom-up or top-down.

Revise has been tested on a variety of problems including digital circuits [4], alarm-correlation [2], and PLCs [3]. The system is online at http://www.soi.city.ac.uk/homes/msch/revise/revise.html

[1] C.V. Damasio, L.M. Pereira, and M. Schroeder. REVISE: Logic Programming and Diagnosis. In Proc. of the 4th Intl. Conf. on Logic Programming and Non-monotonic Reasoning LPNMR97. LNAI 1265, Springer-Verlag. 1997

[2] P. Froehlich, C.V. Damasio, W. Nejdl, L.M. Pereira, M. Schroeder. Using Extended Logic Programming for Alarm-Correlation in Cellular Phone Networks. In Proc. of the 12th Intl. Conf. on Industrial & Engineering Applications of Artificial Intelligence & Expert Systems IEA/AIE-99. LNAI 1611. Springer-Verlag. 1999

[3] W. Hu, M. Schroeder, A.G. Starr. A Knowledge-Based Real-Time Diagnostic System for PLC Controlled Manufacturing Systems. In IEEE Systems, Man, and Cybernetics Conf., IEEE Press. 1999

[4] M. Schroeder. Autonomous, Model-based Diagnosis-Agents. Kluwer Academic Press. 1998.

2. Vivid Agents [5,6] Together with Gerd Wagner, Freie Universitaet Berlin, we developed vivid agents. The idea is to leverage the power of logic programming to program distributed logical agents without compromising the theoretical foundation and the executability of the specifications.

A vivid agent is a software-controlled system whose state comprises the mental components of knowledge, perceptions, tasks, and intentions, and whose behaviour is represented by means of action and reaction rules. The basic functionality of a vivid agent comprises a knowledge system (including an update and an inference operation), a perception (event handling) system, and the capability to represent and perform reactions and actions in order to be able to react to events, and to generate and execute plans.

The system is implemented in PVM-Prolog developed by Rui Marques and Jose Cunha at Universidade Nova de Lisboa. A limited demo version is online at http://www.soi.city.ac.uk/homes/msch/cgi/viva

[5] M. Schroeder and G. Wagner. Vivid Agents: Theory, Architecture, and Applications. To appear in Journal for Applied Artificial Intelligence.

[6] M. Schroeder. Autonomous, Model-based Diagnosis-Agents. Kluwer Academic Press. 1998.

3. Arguing and Cooperating Agents ACA [7,11]

Argumentation is important for agent negotiation. Although many figures in argumentation cannot be represented and automatically processed, undercuts - attacks to an argument's premisses - and rebuts - attacks to the conlusion - can. In fact, they are sufficient to define semantics of logic programs.

We developed an efficient framework for multi-agent argumentation. We distinguish cooperation and argumentation and introduce skeptical and credulous agents. We develop an operational, goal-driven top-down proof procedure for the argumentation process and evaluated an implementation of our framework for an example of a BT business process. The system is online at http://www.soi.city.ac.uk/homes/msch/cgi/aca

As part of the Ultima Ratio project [10], conceived and led by the Berlin-based computer artist Daniela Plewe, we aimed to formalise, automate, and animate apsects of argumentation in classical literature [8,9,10]. At the center of most plots in literature is a main character, who is stuck in a conflict and considers different arguments and options to resolve the conflict. The system allows one to define an agent, which is constituted by a set of arguments and assumptions. Currently, the argument knowledge base contains Hamlet, Medea, Don Juan, Nibelungen, RoboCop, and Casablanca. Facing a particular world, the agent's believes may be inconsistent triggering a rational monologue to deal with the situation. For further info, check the Ultima Ratio page at http://flp.cs.tu-berlin.de/~plewe and for a demo of the system (no visualisation though) check http://www.soi.city.ac.uk/homes/msch/cgi/aec/kbwww

[7] M. Schroder. An efficient argumentation framework for negotiating autonomous agents. In Pro. of the WS on Modelling Autonomous Agents in a Multi-Agent World MAAMAW99. Springer-Verlag, 1999

[8] M. Schroeder. How to tell a logical story. In working notes of the AAAI Fall Symposium. 1999

[9] M. Schroeder, Towards a visualisation of arguing agents. To appear in Journal of Future Geneneration Computing Systems. Elsevier, 2000.

[10] M. Schroeder, D.A. Plewe, and A. Raab, Ultima Ratio - A Visual Lanuage for Argumentation. In Proc. of Intl. Conf. on Information Visualisation. IEEE Press. 1999

[11] I. Mora, J.J. Alferes, and M. Schroeder. Argumentation and Cooperation for Distributed Extended Logic Programs. In working notes of NMR98.

4. TOPS [12]

David Gilbert uses constratint logic programming to solve problems in Bioinformatics. He developed the TOPS system, which uses constraints in pattern-based search and analysis of Bioinformatics databases (genomic, proteomic and metabolic). As a service to the Biology community, TOPS is hosted by the European Bioinformatics Institute and is online at http://tops.ebi.ac.uk/tops

[12] D. Gilbert, D. Westhead, N. Nagano and J. Thornton, Motif-based searching in TOPS protein topology databases. Bioinformatics, 15:4 1999, pp 317-326.