Abstract
Abductive reasoning is a well established field of Artificial Intelligence widely applied to different problem domains not least cognitive robotics and planning. It has been used to abduce high-level descriptions of the world from robot sense data, using rules that tell us what sense data would be generated by certain objects and events of the robots world, subject to certain constraints on their co-occurrence. It has also been used to abduce actions that might result in a desired goal state of the world, using descriptions of the normal effects of these actions, subject to constraints on the action combinations. We can generalise these applications to a multi-agent context. Several robots can collaboratively try to abduce an agreed higher-level description of the state of the world from their separate sense data consistent with their collective constraints on the abduced description. Similarly, multi-agent planning can be accomplished by the abduction of the actions of a collective plan where each agent uses its own description of the effect of its actions within the plan, such that the constraints on the actions of all the participating agents are satisfied. To address this class of problems, we need to generalise the single agent abductive reasoning algorithm to a distributed abductive inference algortihm. In addition, if we want to investigate applications in which the set of collaborating robots/agents is open, we need an algorithm that allows agents to join or leave the collaborating group whilst a particular inference is under way, but which still produces sound abductive inferences. This paper describes such a distributed abductive reasoning system, which we call DARE, and its implementation in the multi-threaded Qu-Prolog variant of Prolog. We prove the soundness of the algorithm it uses and we discuss its completeness in relation to non-distributed abductive reasoning. We illustrate the use of the algorithm with a multi-agent meeting scheduling example. The task is open in that the actual agents who need to attend is not determined in advance. Each individual agent has its own constraints on the possible meeting time and concerning which other agents must or must attend the meeting, if it attends. The algorithm selects the agents to attend and ensures that the constraints of each of the attending agents are satisfied.
Similar content being viewed by others
References
Alberti, M., Gavanelli, M., Lamma, E., Mello, P., & Torroni, P. (2003). Specification and verification of interaction protocols: a computational logic approach based on abduction. Technical report, Dipartimento di Ingegneria di Ferrara.
Apt K.R., Bol R.N. (1994). Logic programming and negation: a survey. Journal of Logic Programming 19/20, 9–71
Arieli O., Van Nuffelen B., Denecker M., Bruynooghe M. (2001). Coherent composition of distributed knowledge-bases through abduction. Lecture Notes in Computer Science 2250: 624+
Ciampolini A., Lamma E., Mello P., Stefanelli C., Torroni P. (2000). An implementation for abductive logic agents. Lecture Notes in Computer Science 1792: 61+
Ciampolini, A., Lamma, E., Mello, P., & Torroni, P. (1999). Rambling abductive agents in alias. In Proc. ICLP Workshop on Multi-Agent Sytems in Logic Programming (MAS’99).
Ciampolini, A., Mello, P., & Storari, S. (2002). Distributed medical diagnosis with abductive logic agents. In Proceedings of BIXMAS 2002 workshop, 2002.
Ciampolini A., Lamma E., Mello P., Toni F., Torroni P. (2003). Cooperation and competition in alias: a logic framework for agents that negotiate. Annuals of Mathematics and Artificial Intelligence 37(1–2): 65–91
Ciampolini A., Lamma E., Mello P., Torroni P. (2001). LAILA: a language for coordinating abductive reasoning among logic agents. Computer Language 27(4): 137–161
Clark, K. L., Robinson, P. J., & Zappacosta-Amboldi, S. (1998). Multi-threaded communicating agents in Qu-Prolog. In F. Toni & P. Torroni (Eds.), Computational logic in multi-agent systems. LNAI 3900, Springer.
Clark, K. L. (1978). Negation as failure. In Logic and data bases (pp. 293–322).
Finin, T., Fritzson, R., McKay, D., & McEntire, R. (1994). KQML as an agent communication language. In Proceedings 3rd International Conference on Information and Knowledge Management.
Franke A., Hess S., Jung C., Kohlhase M., Sorge V. (1999). Agent-oriented integration of distributed mathematical services. Universal Computer Science 5(3): 156–187
Gelfond, M., & Lifschitz, V. (1988). The stable model sematics for logic programming. In Proceedings of International Conference of Logic Programming(pp. 1070–1080).
Hunter, C., Robinson, P., & Strouper, P. (2005). Agent-based distributed software verification. In Proceedings of the Twenty-eighth Australasian conference on Computer Science, volume 24 of ACM International Conference Proceeding Series (pp. 159–164).
Kakas A.C., Kowalski R.A., Toni F. (1992). Abductive logic programming. Journal of Logic and Computation 2(6): 719–770
Kakas, A. C., & Mancarella, P. (1990). Database updates through abduction. In VLDB ’90: Proceedings of the 16th International Conference on Very Large Data Bases (pp. 650–661). San Francisco, CA, USA. Morgan Kaufmann Publishers Inc.
Kuokka, D., & Harada, L. (1995). On using KQML for Matchmaking. In 1st International Joint Conf. on Multi-agent Systems (pp. 239–245) MIT Press.
Ma, J. (2007). Distributed abductive reasoning system and abduction in the small. Technical report, Department of Computing, Imperial College London.
Menzies T. (1996). Applications of abduction: knowledge level modeling. International Journal of Human Computer Studies 45, 305–355
Robinson, P. J. (2007). Pedro Reference Manual. Technical report, http://www.itee.uq.edu.au/~pjr.
Robinson, P. J., Hinchley, M., & Clark, K. L. (2003). QProlog: An implementation language with advanced reasoning capabilities. In M. Hinchley et al. (Eds.), Formal appraches to agent based systems, LNAI 2699. Springer.
Shanahan M. (2005). Perception as Abduction. Cognitive Science 29, 103–134
Shanahan M. (1997). Solving the frame problem: a mathematical investigation of the common sense law of inertia. MIT Press, Cambridge, MA
Shanahan M. (2000). An abductive event calculus planner. Journal of Logic Programming 44(1–3): 207–240
Torroni, P. (2002). Reasoning and interaction in logic-based multi-agent systems. PhD thesis, Department of Electronics, Computer Science and Systems, University of Bologna, Italy.
Zappacosta, S. (2003). Distributed implementation of a connection graph based on cylindric set algebra operators. In M. Hinchley et al. (Eds.), Formal appraches to agent based systems, LNAI 2699. Springer.
Author information
Authors and Affiliations
Corresponding author
Additional information
This research is continuing through participation in the International Technology Alliance sponsored by the U.S. Army Research Laboratory and the U.K. Ministry of Defence.
Rights and permissions
About this article
Cite this article
Ma, J., Russo, A., Broda, K. et al. DARE: a system for distributed abductive reasoning. Auton Agent Multi-Agent Syst 16, 271–297 (2008). https://doi.org/10.1007/s10458-008-9028-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10458-008-9028-y