Towards Answer Set Prolog Based Architectures for Intelligent Agents Sandeep Chintabathina

Proceedings of the Twenty-Third AAAI Conference on Artificial Intelligence (2008)
Towards Answer Set Prolog Based Architectures for Intelligent Agents
Sandeep Chintabathina
Texas Tech University
Department of Computer Science
Lubbock, TX 79409, USA
sandeep.chintabathina@ttu.edu
AL and AC . This language is capable of dealing with concurrent and non-deterministic effects of actions, default fluents and actions which use resources. In some respects it is
more powerful than action language C+ (Giunchiglia et al.
2004) although they are based on different underlying assumptions. Currently we are working on refining the syntax
and semantics of CARD. At some point in the future we
want to expand CARD by continuous processes.
The next step to accomplishing various tasks of an agent
is to be able to reason about the knowledge. In order to do so
action descriptions are usually encoded in to equivalent logic
programs. The class of logic programs that we consider
here are called Answer Set Prolog (ASP) programs which are
defined under answer set semantics (Gelfond and Lifschitz
1991). ASP is a declarative logic programming language
quite suitable for knowledge representation, reasoning and
declarative problem solving (Baral 2003). Previous works
(Baral and Gelfond 2000; Balduccini and Gelfond 2003a;
Balduccini 2007) have shown that ASP can be used for a
variety of AI tasks such as planning, diagnosis, learning
etc. ASP’s ability to build elaboration tolerant knowledge
bases and its non-monotonicity makes it suitable for modeling commonsense behavior of agents. It is capable of expressing defaults, causal relations and dealing with incomplete knowledge.
By translating action descriptions in to ASP programs,
various tasks of the agent are reduced to computing answer sets of the ASP programs. (Balduccini and Gelfond
2003a) shows an encoding of action descriptions of AL
in to ASP programs and thereby how various diagnostic
tasks are reduced to computing answer sets of programs.
(Chintabathina, Gelfond, and Watson 2005) presents an approach to translating action descriptions of H in to ASP. We
will talk more about it later. Currently we are investigating
issues with encoding action descriptions of CARD.
There are several inference engines that are capable of
computing answer sets. Such engines are called answer set
solvers. They start by grounding the program i.e. instantiating variables by ground terms and computing the answer
sets of the resulting ground program. Answer sets are computed using substantially modified and expanded satisfiability checking algorithms. Although such solvers are capable of finding solutions to a variety of problems, there are a
number of deficiencies. According to (Mellarkod, Gelfond,
An important research area in the field of AI is the design
of intelligent agents acting in a changing environment. Research in this area has led to development of agent architectures that support various tasks such as planning, diagnosis,
learning etc. One such architecture is based on the agent
repeatedly executing the observe-think-act-loop (Baral and
Gelfond 2000; Kowalski and Sadri 1999). This architecture
is applicable if the world including the agent and its environment is viewed as a transition diagram whose states correspond to possible physical states of the world and whose
arcs are labeled by actions. A transition, hσ, a, σ 0 i, of a diagram denotes that action a in executable in state σ and that
after the execution of a the system may move to state σ 0 .
The diagram consists of all possible trajectories of the system. One of the approaches to describing these diagrams is a
theory based on action languages - formal models of parts of
natural language used for reasoning about actions and their
effects (Gelfond and Lifschitz 1998). A theory in an action language (often called an action description) describes
a transition diagram that contains all possible trajectories of
a given dynamic system.
Currently there are several action languages that are used
to study different features of dynamic domains. For instance
action language AL (Baral and Gelfond 2000; Turner 1997)
is simply an extension of action language A (Gelfond and
Lifschitz 1993) by state constraints which express causal
relations between fluents - functions whose values depend
on state and may change as a result of actions. The semantics of AL formalize McCarthy’s Principle of inertia
which says that “Things tend to stay the same unless they
are changed by actions” (McCarthy and Hayes 1969). Similarly AC (Baral and Gelfond 1997) expands A by allowing
concurrent actions in the causal laws (which are prohibited
in A). Another extension of AL is the action language H
(Chintabathina, Gelfond, and Watson 2005) which is capable of modeling domains containing continuous processes
- properties of the domain whose values change continuously with time. Semantics of this language are based on
a generalization of McCain-Turner equation (McCain and
Turner 1995) which allows us to define processes using state
constraints. (Chintabathina, Gelfond, and Watson 2007) introduces a new action language CARD which extends both
c 2008, Association for the Advancement of Artificial
Copyright Intelligence (www.aaai.org). All rights reserved.
1843
the semantics of CARD. Finally we will develop solvers
for these modified languages.
and Zhang 2008), these solvers are not efficient when dealing with programs that contain variables ranging over large
domains. The ground instantiations of such programs are
huge, leading to memory and time problems. In order to
overcome this problem researchers have developed new and
improved solvers from time to time. Recently (Mellarkod,
Gelfond, and Zhang 2008) has developed a powerful extension of ASP, AC(C), and defined an algorithm, ACsolver,
for computing answer sets in the new language. The solver
partially avoids grounding of variables over large domains
and replaces grounding with the use of constraint solving
techniques. Another limitation of the answer set solvers is
that they are unable to keep up with advancements in the
field. The input languages of many of the solvers do not support features that researchers would like them to have. This
is the reason why researchers are working on extending ASP
and developing the corresponding solvers. One such extension of ASP is CR-Prolog (Balduccini and Gelfond 2003b)
which is very useful for diagnostic tasks and generating high
quality plans.
Coming back to encoding action descriptions in to ASP,
let us talk about language H. We know that statements of
H contain continuous functions. Translating these statements into ASP rules is straight forward. However, due to
issues involved with grounding it is not possible to run the
resulting programs under current answer set solvers. This is
why (Chintabathina, Gelfond, and Watson 2005) proposes
to discretize functions occuring in the statements of H and
then translate the resulting action descriptions in to ASP. According to (Chintabathina, Gelfond, and Watson 2005) there
is a provably correct translation for discretized action descriptions of H. However, this approach suffers from drawbacks because answer set solvers are inefficient whenever
the translated programs contain variables ranging over large
domains. ACsolver is not useful here because the translated programs do not comply with the necessary conditions
for input programs of the ACsolver. Hence, there is a need
for development of new and more advanced solvers.
We encounter a similar situation with our current version
of action language CARD. Subclasses of action descriptions of CARD that do not contain any non-deterministic
laws can be translated directly in to rules of CR-Prolog. If
the resulting programs do not contain variables ranging over
large domains then answer sets of these programs are computed efficiently. For action descriptions that contain nondeterministic laws, in the general case, there is no translation that captures the semantics of these laws. This is because CR-Prolog was designed prior to CARD. Therefore,
we now have a situation where we need a new logic programming language and a solver to implement CARD.
In order to meet our needs one possible approach would
be to investigate ASP and its extensions and see if we
can add new features or remove restrictions to accomodate
new action languages. Any additions or modifications will
also prompt changes in the corresponding solvers and algorithms. We will investigate whether language AC(C) can be
modified to accept programs obtained by translating action
descriptions of H. Later on we will investigate if we can
make any modifications to CR-Prolog in order to capture
References
Balduccini, M., and Gelfond, M. 2003a. Diagnostic reasoning with A-Prolog. TPLP 3(4-5):425–461.
Balduccini, M., and Gelfond, M. 2003b. Logic programs with consistency-restoring rules. In Proc. of AAAI03 Spring Symposium Series, 9–18.
Balduccini, M. 2007. Learning action descriptions with AProlog: Action language C. In Proc. of CommonSense’07,
13–18.
Baral, C., and Gelfond, M. 1997. Reasoning about effects
of concurrent actions. Journal of Logic Programming 31(13):85–117.
Baral, C., and Gelfond, M. 2000. Reasoning agents in
dynamic domains. In Minker, J., ed., Logic-Based Artificial
Intelligence, 257–279. Kluwer Academic Publishers.
Baral, C. 2003. Knowledge Representation, Reasoning,
and Declarative Problem Solving. Cambridge University
Press.
Chintabathina, S.; Gelfond, M.; and Watson, R. 2005.
Modeling hybrid domains using process description language. In Proc. of ASP-05, 303–317.
Chintabathina, S.; Gelfond, M.; and Watson, R. 2007.
Defeasible laws, parallel actions, and reasoning about resources. In Proc. of CommonSense’07, 35–40. AAAI
Press.
Gelfond, M., and Lifschitz, V. 1991. Classical negation in
logic programs and disjunctive databases. New Generation
Computing 9(3/4):365–386.
Gelfond, M., and Lifschitz, V. 1993. Representing action
and change by logic programs. Journal of Logic Programming 17:301–321.
Gelfond, M., and Lifschitz, V. 1998. Action languages.
Electronic Transactions on AI 3(16).
Giunchiglia, E.; Lee, J.; Lifschitz, V.; McCain, N.; and
Turner, H. 2004. Nonmonotonic causal theories. Artificial
Intelligence 153:49–104.
Kowalski, R., and Sadri, F. 1999. From logic programming
towards multi-agent systems. Annals of Mathematics and
Artificial Intelligence 25(3-4):391–419.
McCain, N., and Turner, H. 1995. A causal theory of
ramifications and qualifications. In Mellish, C., ed., Proc.
of IJCAI-95, 1978–1984. Morgan Kaufmann.
McCarthy, J., and Hayes, P. 1969. Some philosophical
problems from the standpoint of artificial intelligence. Machine Intelligence 4:463–502.
Mellarkod, V.; Gelfond, M.; and Zhang, Y. 2008. Integrating Answer Set Programming and Constraint Logic Programming. In Proc. of ISAIM’08.
Turner, H. 1997. Representing actions in logic programs
and default theories: A situation calculus approach. Journal of Logic Programming 31(1-3):245–298.
1844