<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Social Continual Planning in Open Multiagent Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Matteo Baldoni</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cristina Baroglio</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Roberto Micalizio</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universita` degli Studi di Torino - Dipartimento di Informatica c.</institution>
          <addr-line>so Svizzera 185, I-10149 Torino</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We describe a Multiagent Planning approach, named Social Continual Planning, that tackles open scenarios, where agents can join and leave the system dynamically. The planning task is not defined from a global point of view, setting a global objective, but we allow each agent to pursue its own subset of goals. We take a social perspective where, although each agent has its own planning task and planning algorithm, it needs to get engaged with others for accomplishing its own goals. Cooperation is not forced but, thanks to the abstraction of social commitment stems from the needs of the agents.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>The ability to plan one’s own activities, even in dynamic and challenging scenarios
such as Multiagent Systems (MAS), represents a key feature in many real-world
applicative domains (see e.g., logistics, air traffic control, rescue missions, and so on).
Not surprisingly, planning in MAS is drawing the attention of an ever growing number
of researchers, as witnessed by the new series of Distributed and Multi-Agent Planning
Workshops hosted by ICAPS.</p>
      <p>
        The term Multiagent Planning (MAP) refers to a planning task in which a set of
planning agents, each equipped with its own tools and capabilities, has to synthesize a
joint solution (i.e., a joint multiagent plan). The planning task usually involves a number
of interdependent subgoals, so that some form of coordination among the agents is
necessary to solve the problem. Different methodologies have been proposed in the
literature. Besides centralized approaches (e.g., [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]), which fall outside the above notion
of MAP, the other distributed solutions can be categorized into three main families,
depending on when the coordination among the agents is actually performed. First of
all, coordination can be performed after that each agent has completed its own planning
process [
        <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
        ]: each agent works on a portion of the problem, and then coordinates
with others to resolve conflicts; this requires that agents exchange with each other their
partial solutions, and that they are willing to revise their plans to overcome problems.
Second, coordination can be interleaved with the planning process [
        <xref ref-type="bibr" rid="ref10 ref11 ref15">10, 11, 15</xref>
        ]: agents
continuously exchange information to achieve a joint solution. Finally, coordination
can occur before the planning process. In such a case domain dependent coordination
structures are given to the agents as a further input. For instance, in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] a hierarchical
decomposition of tasks and their dependencies is given to the agents in order to guide
their local planning processes.
      </p>
      <p>In all the above approaches, the planning task defines a global objective to be
achieved by means of a “joint solution” involving the capabilities of the agents.
Moreover, the set of agents to be involved is known in advance and cannot change during
the planning process; the system is therefore closed. In this paper we deal with a
different planning problem, and propose a methodology named Social Continual Planning
(SCP), to tackle it. We consider the planning problem of an agent situated in an open
multiagent system. The agent may resort on other agents for solving a task of its own
interest. The agent plans both its own actions, and its interactions with others whenever
it is not capable, or it deems as not convenient, to execute certain steps in autonomy.
The focus is not on negotiation, but on the framework through which an agent seeks the
help by the others, and on the engagements that bind agents to supporting each other.
Interaction is not limited to communication but it is a process through which the
involved agents progress each in the solution of its own task. Engagements are binary
social relationships, that are established dynamically and that create expectations on
the involved agents behavior. An agent autonomously decides (plans) when to bind to
another one to do something.</p>
      <p>
        More precisely, we take a social perspective in the sense that, even though each
agent has its own planning task and uses its own planning algorithm, the agent has
still to get engaged with others in order to accomplish its own goals. The interactions
that an agent has with others will, in general, allow both parties to get closer to their
own goals. Cooperation is not forced to the agents just because they are part of the
system, but rather cooperation stems from the needs of the agents within the system,
and endures as far as the parties take advantage of it. In other terms, we propose a form
of (agent) planning which is situated in a multiagent system, where an agent not only
has to plan its own actions, but has also to plan its social relationships with other agents.
Since the coordination has to be planned, it must be supported by a proper abstraction
that enables one agent to create expectations about the behaviors of others. To this end,
in this paper we adopt social commitments [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. Interestingly, a recent work by Telang
et al. [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] shows how goals and commitments are strongly interrelated by means of a
set of practical rules. This supports our intuition that commitments may play a central
role, together with beliefs and goals, in the synthesis of a plan in a multiagent setting.
      </p>
      <p>The paper is organized as follows. Section 2 overviews the most relevant literature.
Section 3 introduces the necessary background. Section 4 explains our proposal. Section
5 describes the implementation, and exemplify the approach in the logistic scenario.
Conclusions and a discussion end the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        To the best of our knowledge, the SCP problem has not been tackled in the literature,
so far. It is, however, worthwhile to report the main approaches that are currently
discussed in multiagent and distributed planning. Since the seminal work by Boutilier et
al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], the multiagent planning problem has taken on the perspective of finding a
coordinated, joint solution to a given planning task. Agents are therefore seen as resources
to be managed so as to achieve the global goal. For instance, in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] a centralized
extension to the Partial-Ordered Planning (POP) approach for dealing with multiple plan
executors was proposed. The solution took into consideration possible concurrency and
non-concurrency constraints on the execution of actions that had to be satisfied by any
feasible plan.
      </p>
      <p>
        More recently, distributed approaches have emerged within the planning
community. However, even though the planning search can be distributed among the agents,
the definition of the planning task is still centralized in most of them. See for instance
the MA-STRIPS formalization [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], in which, despite each agent has its own set of
(private) actions, the initial state and the goal state of the planning task are globally defined.
Similarly, in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] a multiagent plan is seen as a solution of a coordination problem where
constraints on resources and tasks are defined globally.
      </p>
      <p>
        Distributed approaches can be distinguished on how the planning and coordination
phases are actually carried on. First attempts to coordinating plan after the planning
phases [
        <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
        ] suffered from a sever drawback: whenever conflicts were detected
between any two plans, the agents had to revise their plans accordingly. Thus, the domain
knowledge about conflicts and constraints was not used actively during the planning
phase, but only a posteriori to verify the correctness of the joint solution.
      </p>
      <p>
        This drawback is overcome by approaches (see e.g., [
        <xref ref-type="bibr" rid="ref10 ref11 ref15">10, 11, 15</xref>
        ]) in which the
coordination and planning phases are interleaved. These approaches rely on the exchange of
various kinds of information, such as partial plans, or states inferred during the search,
so that conflicts are discovered as soon as possible, and corrections can be made while
the planning phase is still in progress. The planning phase is carried on by means of
a distributed algorithm, and this implies a form of coupling of the agents. The
heterogeneity of the agents is limited to the set of actions they can perform, but the planning
strategy must be the same for all the agents in the team. Another implicit assumption in
distributed approaches is that agents be cooperative and possibly disclose sensible data,
e.g. their internal states and resources, and their local goals. Notably, SECURE-MAFS
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], a recent version of the very efficient MAFS algorithm [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], guarantees, to some
extent, the privacy of the cooperating agents; yet, it still requires that each agent knows at
least the “public interface” of the other agents’ actions. A last family of approaches set
the coordination phase before the planning one (see e.g., [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). Such solutions, however,
assume that all the possible conflicts are known in advance and globally defined.
      </p>
      <p>
        For what concerns commitments, only recently there have been some attempts to
integrate them in planning problems, see [
        <xref ref-type="bibr" rid="ref13 ref14 ref19">13, 19, 14</xref>
        ] which as well as our work rely on the
rules proposed in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. The idea of translating pragmatic rules into a planning language
is first proposed in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], where the Hierarchical Task Network (HTN) formalization is
used. HTNs, however, are used at design time to model and verify commitment
protocols [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]; thus, the point of view of these works is still centralized. In this work we will
consider a STRIPS-like representation of the pragmatic rules, and use them for
generative planning in a context where a centralized point of view is missing. In other terms, in
this paper the interactions via commitments are not outlined within predesigned HTNs,
but have to be discovered at execution time by the planning search.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Background</title>
      <sec id="sec-3-1">
        <title>Commitments</title>
        <p>
          The proposal presented in this paper strongly relies on social commitments (simply
commitments below), as first introduced in [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. Commitments arise, exist, are
satisfied, revoked, or otherwise manipulated, all in a social context. They not only rely on
the social structure of the groups in which they exist, but also help create that structure.
They are revokable. They overcome the subjectivist bias of traditional AI, so generally
the conditions associated to a commitment are evaluated in the world, not in the mind
of any agent. More specifically, a commitment C(x, y, s, u) formalizes a relationship
between an agent x, playing the role of debtor, and another agent y, playing the role
of creditor: the debtor is committed towards the creditor to bring about a consequent
condition u, whenever an antecedent condition occurs s. Antecedent and consequent
conditions are conjunctions or disjunctions of events and commitments and they
concern only the observable behavior of the agents.
        </p>
        <p>
          Commitments have a life cycle, and we adopt the one proposed in [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], and reported
in Figure 1. Briefly, a commitment is Null right before being created; Active when it is
created. Active has two substates: Conditional (as long as the antecedent condition did
not occur), and Detached (when the antecedent condition occurred). In the latter case,
the debtor is now engaged in the consequent condition of the commitment. An Active
commitment can become: Pending if suspended; Satisfied, if the engagement is
accomplished; Expired, if it will not be necessary to accomplish the consequent condition;
Terminated if the commitment is canceled when Conditional or released when Active;
and finally, Violated when its antecedent has been satisfied, but its consequent will be
forever false, or it is canceled when Detached (the debtor will be considered liable for
the violation).
        </p>
        <p>Commitments are manipulated by commitment operations such as: create (an agent
creates a commitment toward someone), cancel (a debtor withdraws an own
commitment), release (an agent withdraws a commitment of which it is the creditor), assign
(a new creditor is specified by the previous one), delegate (a new debtor is specified
by the previous one), discharge (the commitment is resolved). In particular, when the
consequent condition u holds, the commitment is discharged. Notably, only an agent
playing the role of debtor can create a commitment.</p>
        <p>
          The reason for relying on commitments stems by the fact that commitments have
a normative power: Since debtors are expected to behave so as to satisfy their
engagements, commitments create social expectations on the agents’ behaviors [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. From a
practical reasoning point of view, this means that an agent is expected to behave so as
to achieve the consequent conditions of an Active commitment of which it is the debtor.
Instead, when the agent is creditor of a commitment, it will set as goal the antecedent
condition of the same commitment when it deems it needs the debtor to pursue the
consequent condition. Therefore, commitments can be used by agents in their
practical reasoning together with beliefs, intentions, and goals for taking into account other
agents and the conditions the latter committed to have achieved.
        </p>
        <p>
          There is a vast literature on social commitments. A comprehensive starting point for
the interested reader is [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ].
3.2
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>Goal Formalization</title>
        <p>
          The notion of goal plays an important role not only from the point of view of planning,
but also in general whenever one has to design and develop intelligent agents. In this
paper, we take advantage of the formalization initially proposed in [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], and subsequently
revised in [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]; specifically, a goal G is a tuple G(x, p, r, q, s, f ), where x is the agent
pursuing G, p is a precondition that must be satisfied before G can be considered active,
r is an invariant condition that holds until the achievement of G, q is a post-condition
(effect) that becomes true when G is successfully achieved, and finally, s and f are
the success and failure conditions, respectively. In other terms, one can think of p as the
context in which an attempt to achieve G can be pursued, r as the set required resources,
and q as the effects of reaching G. Note that q and s need not to coincide (see [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]).
This formalization includes both the specification of an internal procedure (i.e., p, r,
and q) that agent x can adopt to satisfy G, and an abstract, declarative success condition
s, which is an agent-independent description of G. This complementarity turns out to
be fundamental for an agent to decide (1) when cooperation is required (e.g., when no
local procedure is applicable), and (2) how to carry through cooperation (e.g., by asking
others what success condition bringing about). In the rest of the paper, we will mainly
exploit the declarative formalization since we are interested in those cases in which an
agent has to cooperate with others.
        </p>
        <p>
          As well as commitments, goals have a life cycle in which state transitions are
triggered by the execution of proper goal actions. Figure 2 shows the goal life cycle [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ].
3.3
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>Pragmatic Rules</title>
        <p>
          In [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] the relation between goals and commitments has been studied, and it has been
formalized in terms of practical rules, which capture patterns of pragmatic reasoning.
We review in this section a few pragmatic rules through their operational semantics. We
first recall the notion of agent configuration: the configuration of an agent x is the tuple
Sx = hB, G, Ci where B is its set of beliefs about the current snapshot of the world, G
is the set of agent’s goals, and C its set of commitments; i.e., commitments in which x
is involved either as debtor or as creditor. We use subscripts from Figure 1 to denote the
state of commitments and goals.
        </p>
        <p>The operational semantics of pragmatic rules is given via guarded rules in which Si
are configurations:</p>
        <p>guard</p>
        <p>S1 −→ S2
Where guard is a condition over the current agent’s beliefs and commitments; whereas
S1 −→ S2 is a state transition involving a change in the state of commitments or
goals; usually it corresponds to an operation on goals or commitments. Pragmatic rules
are distinguished into: (1) rules from goals to commitments, they involve commitments
that are used as a means to achieve some goal; and (2) rules from commitments to goals,
they involve goals that are used as a means to achieve either the antecedent (if the agent
at issue is debtor) or the consequent (if creditor) condition of a commitment.
Rules From Goals to Commitments. These rules address situations in which an agent
manipulates (e.g., create, or cancel) a commitment to achieve a goal it cannot obtain
alone, or to drop a goal is no longer required. Let G ∈ G be an agent goal G(x, p, r, q,
s, f ), and C ∈ C be a commitment C(x, y, s, u) (note that the success condition s of G
appears as antecedent in C):
– ENTICE: (Only) by creating the commitment can the agent satisfy its goal. If G is
active and C is null, x creates an offer to another agent
– WITHDRAW OFFER: The commitment is of no utility once the end goal for which
it is created no longer exists. If G fails or is terminated, then x cancels C.
hGA, CN i
create(C)</p>
        <p>ENTICE
hGT ∨F , CAi
cancel(C)</p>
        <p>WITHDRAW OFFER
Rules from Commitments to Goals. The general idea of these rules is that an agent
manipulates a goal to satisfy the antecedent or the consequence of a commitment in
which the agent is involved. Let C be a commitment C(x, y, s, u); and let us consider
two goals G1 = G(x, p, r, q, u, f ) and G2 = G(y, p′, r′, q′, s, f ′)
– DELIVER: The agent activates a goal that would lead to discharging its commitment.</p>
        <p>If C becomes detached (i.e., goal G2 has been satisfied), then debtor x activates a
goal G1 to bring about the consequent:</p>
        <p>hG1N , CDi
consider(G1) ∧ activate(G1)</p>
        <p>DELIVER
– DETACH: The creditor brings about the antecedent hoping to influence the debtor
to discharge the commitment. If G2 is null and C is conditional, agent y considers
and activates G2:</p>
        <p>hG2N , CC i
consider(G2) ∧ activate(G2)</p>
        <p>DETACH
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>The Social Continual Planning Problem</title>
      <p>A Social Continual Planning (SCP) system is an open environment inhabited by
heterogeneous and independent agents. Each agent has its own planning task, and can perform
a specific set of actions. A Social Continual Planning Problem is a planning problem of
an agent, situated within an SCP system, which, for being solved, requires the agent to
plan also a set of engagements, realized as social commitments, with other agents in the
system. Agents can join and leave the system dynamically; however, we assume that no
agent leaves the system as long as there are active commitments involving it either as
debtor or as creditor.</p>
      <p>More formally, an SCP system is a tuple hU , A, S) where:
– U is a finite set of propositional atoms, whose truth value can be observed by all the
agents in the SCP; U represents a sort of common language through which agents
can interact. Atoms in this set are used to describe the state of the environment
shared by the agents. In addition, these are the atoms that can appear as antecedents
and consequents of the commitments.
– A is a set of agents; each agent i ∈ A is associated with a configuration which
extends the agent configuration we have already introduced. Specifically, the agent
configuration for agent i is a tuple hBi, Gi, Ci, Actsi, Socsii: Bi, Gi, and Ci are as
before; whereas:
• Actsi is a set of actions agent i can perform; it is partitioned into:
∗ Φi is a set of “physical” actions; as usual, these actions are defined in terms
of preconditions and effects, which can be both conditions on environment
atoms (i.e., in U ) or on internal (agent-dependent) atoms that are not
globally traced (i.e., the internal state of an agent is private).
∗ Σi is a set of social actions; preconditions and effects are defined in terms
of goals in Gi and commitments in Ci. More precisely, each social
action corresponds to a pragmatic rule from goals to commitments. Indeed,
we consider these pragmatic rules as actions because, as we discuss
below, they can be used by an automated planner to plan interactions with
other agents. Note that while goals in Gi are private (only agent i can see
and manipulate them), commitments in Ci have a social value: whenever
i changes the state of a commitment in Ci, this change becomes visible to
all the other agents in the system (see S ).
• Socsi is a set of pragmatic rules from commitments to goals adopted by an
agents; from our point of view these rules define the social strategy of agent i.
Thus, these rules are not used during the planning search, but rather to decide
which goals should be pursued.
– S is the social state shared by all the agents in the SCP system at hand. The social
state can be partitioned into two subsets:
• S C is the set of all the active commitments defined between any two agents in
A; in particular, for each agent i ∈ A, Ci ⊆ S , Ci is the projection of S over
all the commitments in which i appears either as debtor or as creditor.
• S E is the set of all the propositional atoms describing the environment that hold
at a given time; in particular, S E ⊆ U .</p>
      <p>Given an SCP system hU , A, S i, let i ∈ A be an agent, that is described by the tuple
hBi, Gi, Ci, Actsi, Socsii. An SCP problem for i amounts to finding a plan, composed
by Actsi and Socsi, to achieve Gi starting from Bi. In particular:
– Bi is the initial state of the planning task i is responsible for; such a state is a
set of atoms possibly occurring in U , but also occurring in a private set of atoms
describing the internal state of i, and hence these atoms are not traced within the
SCP system. We only assume that i joins the SCP system iff S ∪ Bi 6|= ⊥.
– Gi is a list of goals the agent has to achieve; each goal can be an atom or a
conjunction of atoms in U and possibly in the private set of agent’s atoms. Note that,
differently from classical planning, it is not required that all the goals in Gi hold in
a unique system state.
– Ci is initially empty.
– Φi is a set of domain-dependent actions agent i can directly perform whenever their
preconditions hold. For instance, in a logistic domain, a truck-agent can perform
action drive, whereas a plane-agent can fly.
– Σi can be initialized in different ways; in fact, differently from Φi, this set needs
not to be static; on the contrary, it could change over time according to
contextual conditions. In our preliminary implementation, we have adopted a very simple
solution. Let us consider the ENTICE rule above1. The objective of this rule is to
create a commitment of the form C(i, j, s, u), in order to “entice” another agent j
to bring about s, which is of interest for i. At this initial stage, however, i cannot
know which condition u is of interest for j. Surely enough, i knows which atoms it
can directly achieve by performing its physical actions. Thus, for each atom s ∈ U
such that s never appears as an effect of any action in Φi, agent i creates a
template entice-s whose effect is the creation of a commitment C(i, , s, u), where
denotes any agent willing to satisfy s, and u is any atom in U that appears in
1 Other rules are treated consequently.</p>
      <p>Algorithm 1 Social Continual Planning Strategy
SCP-Strategy(Bi, Gi, Ci, Actsi, Socsi)
1. while Gi 6= ∅ ∨ Ci 6= ∅ do
2. on S change update Gi using Socsi
3. g ← pick up a goal from Gi
4. π ← plan to g
5. status ← execute π
6. if status equals success then
7. Gi ← Gi \ {g}
8. end if
9. end while
the effects of at least one physical action in Φi. Of course, since the entice-s
template can be instanced in different ways, depending on the actual u condition,
agent i will offer first the conditions, that from its point of view, are the cheapest to
achieve.
– Socsi is a static set of rules, decided at design time, that defines the social
behavior of i; namely, how an agent is reliable for bringing about the consequent and
antecedent conditions of the commitments in Ci.
4.1</p>
      <sec id="sec-4-1">
        <title>Social Continual Planning: the Strategy</title>
        <p>
          Basically, the SCP strategy we propose, sketched in Algorithm 1, is a form of continual
planning (see e.g., [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]) in which generative planning is interleaved with plan execution.
The main difference with other approaches is that to achieve a goal, an agent plans
not only its own actions, but also its engagements with others, and depending on how
these interactions carry through, the agent may decide to perform some replanning or
to pursue a different goal.
        </p>
        <p>An agent i follows the SCP strategy as far as there are goals in Gi to be achieved
or Ci is not empty. This second condition assures that an agent does not leave the
system when it is still involved in some active commitments.2 At each iteration, the agent
checks for updates in the social state S (line 2); any change occurring in S, in fact, can
have an impact on the set Gi of goals. For instance, a new commitment C(j, , s, u)
appearing in SC could draw the attention of agent i when u is a condition that i needs
but it cannot achieve on its own, and at the same time i knows how to obtain s. In such a
case, i could accept to be the creditor: s is added to Gi (i will eventually bring about s).
On the other hand, the occurrence of a new atom in SE could make the achievement of
a goal g in Gi no longer necessary, so g is dropped. Of course, these agent’s decisions
are driven by the Socsi behavioral rules.
2 In principle, an agent may remaining situated within the system indefinitely, waiting for agents
to cooperate with. For example, in a logistic domain, a shipper has the high-level objective
of earn money by offering its transportation facilities. This objective does not immediately
translate into an initial goal G, but rather it is better modeled in terms of pragmatic rules (i.e.,
both social actions in Σ, and behavioral rules in Socs), so as the shipper is willing to accept
requests from other agents, but also offers itself shipment services to others.</p>
        <p>Once Gi has been updated, agent i selects one goal g from Gi (line 3); and
synthesizes a plan π reaching g (line 4). It is worth noting that any off-the-shelf planner can be
used to synthesize π since from the point of view of the planner there is no distinction
between social and physical actions (both kinds of actions are translated into PDDL,
see below). We only assume that in case the used planner produces a partial-order plan
(POP), π is one of the possible linearizations of such a POP.</p>
        <p>After the planning step, the agent can start the execution of π (line 5), which
contains both physical actions in Φi, and social actions in Σi. The execution of π proceeds
one action a at a time and in the order. If a is a physical action, it is immediately
executed, and its effects on atoms in U are made available to all the other agents via SE . If
a is a social action, e.g., an entice-s action, the action execution affects SC with the
addition of a new commitment C(i, , s, u), which has to be picked up by some other
agent. The execution of π is therefore suspended; indeed, the entice-s action is part
of π only in case the atom s is a precondition for some subsequent action, and hence
the plan execution cannot proceeds without s. In case an agent j is interested in u, it
accepts the offers by finalizing the commitment in C(i, j, s, u), and eventually it will
bring about s. As soon as s is satisfied, i proceeds with the execution of its plan (u will
be added to Gi the next time i checks for changes in S). When all the actions in π are
performed, the execution phase terminates in success state (i.e., g has been achieved),
and hence g is removed from Gi (line 7).</p>
        <p>However, it is also possible that no agent is interested in the service u offered by i.
To avoid an indefinite wait, i sets up a timer. As soon as the time runs out, the
commitment is canceled from SC, and the plan execution terminates with a failure state. Since
g has not been achieved, it is not removed from Gi. At the next iteration of the strategy,
i first checks whether g is still required (line 2), and then tries to find an alternative plan
reaching it (line 4) that may require a different instantiation for the entice-s action
(i.e., with a different condition offered as consequent of the commitment).</p>
        <p>
          Intuitively, the correctness of the approach relies on the coherence and convergence
properties discussed in [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. In particular, the goal convergence property states that in
the situation in which agent i has a goal G1=G(i, p1, r1, q1, s, f1), another agent j has a
goal G2=G(j, p2, r2, q2, s, f2), and there exists a commitment C1 = C(i, j, s, u) ∈ SC,
then, there is a finite sequence of pragmatic rules that leads to G2’s state equaling
G1’s state. This means that whenever agent j brings about s, satisfying its internal goal
G2, then, also agent i has its own goal G1 indirectly satisfied. This demonstrates the
correctness of the SCP strategy in the sense that whenever a plan π, synthesized by i,
contains an entice action entice-s, which actually creates the commitment C1, then
the plan is:
1. feasible: no action a in π has open preconditions (i.e., atoms that are neither
provided by the initial state nor by any previous action); this implies that the
preconditions that agent i cannot directly produce, are obtained via cooperation with others;
2. correct: if each action is performed successfully, g holds in SE at the end of π;
as noted above, the execution of social action implies the cooperation with other
agents.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Implementation and Proof of Concept</title>
      <p>To verify the feasibility of the SCP strategy, we implemented a proof-of-concept in C
and SICStus Prolog 4.3.2. More precisely, an agent is implemented as an independent
C program that embeds a simple Prolog planner. Each agent takes in input three files:
1. the description of the planning domain (in PDDL 2.2) from the point of view of
a single agent, e.g., the templates of the physical actions the agent is capable to
perform;
2. the definition of the planning problem (in PDDL 2.2) that this specific agent has to
accomplish;
3. the list of environment objects, namely, those objects that constitute the ontological
backbone shared by all the agents in the SCP system. All the possible atoms about
these objects must be known by the all the agents.</p>
      <p>Note that the parsing of the three files creates a number of initial structures within the
Prolog planner, as for instance the list of action templates. This list is subsequently
completed with a list of social actions (i.e., actions in Σ), following the procedure sketched
above. This step consists in instantiating the predefined PDDL templates encoding the
pragmatic rules from goals to commitments. For instance, a number of entice actions
are created by instantiating the following template:
(:action entice
:parameters (?deb ?cre - agent</p>
      <p>?ant ?cons - goal)
:precondition (and
(active-G ?deb ?ant)
(not (achieved ?ant))
(cando ?deb ?cons)
(null-C ?deb ?cre ?ant ?cons)
)
:effect (and
(not (null-C ?deb ?cre ?ant ?cons))
(active-C ?deb ?cre ?ant ?cons)
(increase (plancost) 10)
)))
where a dummy symbol is used to refer to the creditor agent ?cre, not known at this
time. active-G and null-C are terms used to define goals and commitments,
respectively, with their current state. ?ant and ?cons goals are unique identifiers
associated to atoms such as at(pkg1, E). These identifiers are therefore shared by the
agents. This workaround was necessary to overcome the current limits of the PDDL
expressiveness for which nested terms are not admissible. This instantiation is realized as
a C procedure. The generated instances are injected within the Prolog planner by using
the C/SICStus bi-directional interface. Finally, note that the entice action is associated
with a cost, this is used to avoid the planner resorts to them even when they are not
strictly required (e.g., a “lazy” agent could ask others to obtain goals it can achieve by
itself).</p>
      <p>
        The social state is implemented by relying on the Inter-Process Communication
facilities offered by the Unix operating system. In particular, two segments of shared
memory are used, one for SC and one for SE . Initially both segments are empty, but
active processes take turns filling up the SE segment by publishing the public facts they
know about the environment objects (Unix semaphores are used to guarantee the
consistent access to the shared memory segments). If a contradiction arises at this step, the
agent terminates without joining the SCP system (i.e., without attempting to solve its
task). So far, behavioral rules that specify the social strategy Socs are implemented
directly in C. Indeed, only a subset of the rules discussed in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] have been implemented.
For simplicity, we have implemented only progressive rules that any “honest” agent
should follow; so our agents never cancel a commitment, and always pursue the goals
appearing in the antecedent and consequent conditions of commitments in which they
are involved.
      </p>
      <p>After this preliminary steps, each agent can start solving its task by invoking the
embedded planner. Note how the facts maintained by the planner correspond to the private
belief state B, whereas facts that are maintained in the shared memories correspond
to the social state. (For efficiency reasons, though, each planner replicates in its own
working memory the facts in the social state.)
5.1</p>
      <sec id="sec-5-1">
        <title>Example: a Logistic Domain</title>
        <p>Let us exemplify the SCP strategy via a simple problem from the well-known logistic
planning domain. Figure 3 shows the current state of the SCP system at hand: A through
F are cities; C and D have airports, and plane pln1 can fly between them; trucks trk1
and trk2 can drive along the solid edges connecting the cities.</p>
        <p>In such a scenario, the only shared object in the environment is represented by the
package pkg1, currently located at B. Thus, U contains all the atoms about such an
object, which in the logistic domain concern its position, specifically: U ={at(pkg1, A),
at(pkg1, B), . . ., at(pkg1, E), at(pkg1, trk1), at(pkg1, trk2),at(pkg1, pln1)}.The
set of agents is therefore A={trk1, trk2, pln1}; whereas, for the sake of simplicity,
we suppose the social state S is currently empty.</p>
        <p>Note that, since U refers only to the package position, the position of each agent is a
private piece of information. Moreover, also the domain knowledge is partitioned: trk1
just needs to know how to move among A, B, and C, whereas it needs not to know how
the other cities are connected.</p>
        <p>Let us consider the problem from the point of view of truck trk1. Its local planning
task consists in delivering package pkg1 to E. This is formalized as follows:
– Btrk1={at(pkg1, B), at(trk1, A)},
– Gtrk1={at(pkg1, E)},
– Ctrk1=∅,
– Φtrk1={drive(A, B), drive(A, C), . . ., load(pkg1, A), unload(pkg1, A), . . .}
– Σtrk1={entice − at(trk1, , at(pkg1, E), $100),
entice−at(trk1, , at(pkg1, D), $100), entice−at(trk1, , at(pkg1, F ), $100), entice−
at(trk1, , at(pkg1, E), $1000), . . .}
Note that Φtrk1 contains those actions that are typically defined in the logistic domain
for a truck whereas Σtrk1 contains all the social actions agent trk1 is willing to use
during its planning search. In particular, there are more entice actions sharing the same
antecedent but differing in the consequent. This is the result of the instantiation
procedure of the entice template. For instance, trk1 can either pay $100 or $1000 to have
pkg1 at E. Of course, a proper usage of action costs would drive the planner in creating
“cheaper” commitments first.</p>
        <p>Agent trk1 starts the solution of its local planning task by finding a plan reaching
the goal at(pkg1, E). The execution of such a plan starts a course of engagements that
will involve all the agents. Table 3 summarizes the first four runs of the SCP strategy
followed by the agents. Each row in the table shows which goal a specific agent is
pursuing, the plan that has been synthesized by the agent, and how the execution of the
plan (until the first social action) changes the social state.</p>
        <p>The first row of the table shows the plan inferred by trk1: after having picked up
package pkg1, the agent, that cannot physically deliver it to E, offers $ 100 to any agent
willing to take pkg1 to E. Agent trk2 accepts the offer, see row 2, and plans how to
achieve the goal. Also the trk2’s plan contains an offer towards any other agent which
is willing to take pkg1 to D, which is accepted (see row 3) by agent pln1. To keep
the discussion simple we assume that the agents are cooperative, and omit the fact that
pln1 could ask trk2 to do something specific in exchange (e.g., pay for the shipment
service). In row 4 we have that agent trk1 brings pkg1 to C where pln1 is waiting for
loading and flying it to D, from which trk2 will take it to E. Note that the execution of
the agents’ plans will progressively satisfy goals and commitments that will be removed
from the social state.
We have used the logistic domain as a test-bed for a preliminary experimental analysis.
At this stage of development our main objective was to study the feasibility of the
approach, and to highlight possible bottlenecks and shortcomings of the SCP strategy,
in particular as concerns the instantiation of the entice action.</p>
        <p>In a domain involving 2 trucks and 2 planes, we prepared 10 problems. In each
problem, every agent was assigned with one package to be delivered. In all the cases,
the agent could not deliver the package without the help of at least one other agent.
Although the implementation is yet to be engineered, the first data we collected are very
encouraging. On average, the instantiation of the entice action produces 68 instances
for each agent. Such a large number of action could represent a burden for the planner,
but in practice the planner we used (implementing a simple A* search) worked very
efficiently; in fact, the planning times are on average 1500 ms, with a pick to 8000 ms
only in one case. The length of the synthesized plans is 15 actions, on average, with a
pick to 24.</p>
        <p>These results show that, even though the instantiation of the entice action can
produce a relatively large number of actions, the planner is not significantly burdened by
them as in general only a few of them are applicable at the same time. In other words,
the number of entice instances is not directly related to the search branching factor.
6</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Discussion and Conclusions</title>
      <p>In this paper we addressed the SCP problem, and proposed the SCP strategy as a
possible solution. Differently from MAP approaches, where a predefined team of agents
has to find a joint plan solving a given planning task, here we deal with situations in
which each agent is given a planning task which is independent of the others’ ones. The
challenge, thus, is not to find a joint plan, but to find a plan for each agent that solves the
agent’s planning task taking advantage of the cooperation with other agents. Moreover,
agents are free to join and leave the system dynamically.</p>
      <p>The novelties of our proposal are not limited to the openness of the agent team.
While in approaches to MAP agents can be thought of as resources used for solving
the given planning task, in SCP agents are seen as autonomous entities. This change
implies that an agent cannot order another agent to do a job, but the agent can just make
an offer, and as we have seen, social commitments come at handy to model this kind
of relations. More importantly, however, we have to observe that an agent receiving
an offer, being an autonomous entity, can accept or reject the offer depending on its
contextual conditions and its local goals. A rational agent, in fact, should accept an
offer only if the offer brings along some advantages, otherwise the offer should be put
aside.</p>
      <p>
        It is worth noting how the SCP strategy supports the decoupling of agents, that just
share environment objects, whereas they are independent for all the other respects. In
particular, each agent can implement its social strategy (i.e., pragmatic rules in Socs
and Σ) according to local criteria. Moreover, the planning algorithm each agent uses
can be tailored to meet optimization functions that are relevant for the agent itself. Note
also how the cooperation among the agents do not require that an agent knows the
action templates of others (as for instance happens in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]), and, hence, also the agents’
privacy is preserved.
      </p>
      <p>
        Many lines of research and improvement are possible. In the near future we aim
at engineering the implementation of the SCP strategy by exploiting one of the many
agents platforms available. In particular, the JaCaMo+ platform [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] seems to be a good
candidate since it naturally supports the notions of commitments and social states. In
addition, the social behavioral rules in Socs could find an easy implementation as Jason
plans (used to program JaCaMo+ agents). Also the integration with a planner does not
seem to raise to much troubles; as demonstrated in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] where Jason plans have been
integrated with generative planning.
      </p>
      <sec id="sec-6-1">
        <title>Acknowledgments</title>
        <p>We would like to thank Lorenzo Pierini for his contribution to the implementation.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Matteo</given-names>
            <surname>Baldoni</surname>
          </string-name>
          , Cristina Baroglio, Federico Capuzzimati, and
          <string-name>
            <given-names>Roberto</given-names>
            <surname>Micalizio</surname>
          </string-name>
          .
          <article-title>Programming with Commitments and Goals in JaCaMo+</article-title>
          .
          <source>In Proc. of the International Conference on Autonomous Agents and Multiagent Systems (AAMAS'15)</source>
          , pages
          <fpage>1705</fpage>
          -
          <lpage>1706</lpage>
          . International Foundation for Autonomous Agents and
          <string-name>
            <given-names>Multiagent</given-names>
            <surname>Systems</surname>
          </string-name>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>C.</given-names>
            <surname>Boutilier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Dearden</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Goldszmidt</surname>
          </string-name>
          .
          <article-title>Stochastic dynamic programming with factored representations</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>121</volume>
          (
          <issue>1-2</issue>
          ):
          <fpage>49</fpage>
          -
          <lpage>107</lpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ronen</surname>
            <given-names>I. Brafman.</given-names>
          </string-name>
          <article-title>A privacy preserving algorithm for multi-agent planning and search</article-title>
          .
          <source>In Proceedings of Distributed and Multi-Agent Planning Workshop ICAPS</source>
          <year>2015</year>
          , pages
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ronen</surname>
            <given-names>I. Brafman</given-names>
          </string-name>
          and
          <string-name>
            <given-names>Carmel</given-names>
            <surname>Domshlak</surname>
          </string-name>
          .
          <article-title>From one to many: Planning for loosely coupled multi-agent systems</article-title>
          .
          <source>In Proceedings of the Eighteenth International Conference on Automated Planning and Scheduling</source>
          ,
          <string-name>
            <surname>ICAPS</surname>
          </string-name>
          <year>2008</year>
          , Sydney, Australia,
          <source>September 14-18</source>
          ,
          <year>2008</year>
          , pages
          <fpage>28</fpage>
          -
          <lpage>35</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Michael</given-names>
            <surname>Brenner</surname>
          </string-name>
          and Bernhard Nebel.
          <article-title>Continual planning and acting in dynamic multiagent environments</article-title>
          . Autonomous Agents and
          <string-name>
            <surname>Multi-Agent</surname>
            <given-names>Systems</given-names>
          </string-name>
          ,
          <volume>19</volume>
          (
          <issue>3</issue>
          ):
          <fpage>297</fpage>
          -
          <lpage>331</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Pieter</given-names>
            <surname>Buzing</surname>
          </string-name>
          , Adriaan Ter Mors, Jeroen Valk, and
          <string-name>
            <given-names>Cees</given-names>
            <surname>Witteveen</surname>
          </string-name>
          .
          <article-title>Coordinating selfinterested planning agents</article-title>
          .
          <source>Autonomous Agents and Multi-Agent Systems</source>
          ,
          <volume>12</volume>
          (
          <issue>2</issue>
          ):
          <fpage>199</fpage>
          -
          <lpage>218</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Rosaria</given-names>
            <surname>Conte</surname>
          </string-name>
          , Cristiano Castelfranchi, and Frank Dignum.
          <article-title>Autonomous norm acceptance</article-title>
          . In Intelligent Agents V,
          <string-name>
            <surname>Agent</surname>
            <given-names>Theories</given-names>
          </string-name>
          , Architectures, and
          <string-name>
            <surname>Languages</surname>
          </string-name>
          , 5th International Workshop, ATAL '
          <fpage>98</fpage>
          , Paris, France,
          <source>July 4-7</source>
          ,
          <year>1998</year>
          , Proceedings, pages
          <fpage>99</fpage>
          -
          <lpage>112</lpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Jeffrey S Cox and Edmund H Durfee</surname>
          </string-name>
          .
          <article-title>Discovering and exploiting synergy between hierarchical planning agents</article-title>
          .
          <source>In Proceedings of the second international joint conference on Autonomous agents and multiagent systems</source>
          , pages
          <fpage>281</fpage>
          -
          <lpage>288</lpage>
          . ACM,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Jeffrey S Cox</surname>
          </string-name>
          ,
          <string-name>
            <surname>Edmund H Durfee</surname>
            , and
            <given-names>Thomas</given-names>
          </string-name>
          <string-name>
            <surname>Bartold</surname>
          </string-name>
          .
          <article-title>A distributed framework for solving the multiagent plan coordination problem</article-title>
          .
          <source>In Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems</source>
          , pages
          <fpage>821</fpage>
          -
          <lpage>827</lpage>
          . ACM,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Edmund H Durfee and Victor R Lesser.</surname>
          </string-name>
          <article-title>Partial global planning: A coordination framework for distributed hypothesis formation</article-title>
          .
          <source>Systems, Man and Cybernetics</source>
          , IEEE Transactions on,
          <volume>21</volume>
          (
          <issue>5</issue>
          ):
          <fpage>1167</fpage>
          -
          <lpage>1183</lpage>
          ,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Victor</surname>
            <given-names>Lesser</given-names>
          </string-name>
          , Keith Decker, Thomas Wagner, Norman Carver, Alan Garvey, Bryan Horling, Daniel Neiman, Rodion Podorozhny,
          <string-name>
            <given-names>M Nagendra</given-names>
            <surname>Prasad</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Anita</given-names>
            <surname>Raja</surname>
          </string-name>
          , et al.
          <article-title>Evolution of the gpgp/taems domain-independent coordination framework</article-title>
          .
          <source>Autonomous agents and multiagent systems</source>
          ,
          <volume>9</volume>
          (
          <issue>1</issue>
          -2):
          <fpage>87</fpage>
          -
          <lpage>143</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Felipe</surname>
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Meneguzzi</surname>
            and
            <given-names>Michael</given-names>
          </string-name>
          <string-name>
            <surname>Luck</surname>
          </string-name>
          .
          <article-title>Leveraging new plans in agentspeak(pl)</article-title>
          .
          <source>In Declarative Agent Languages and Technologies VI, 6th Int. Workshop, DALT 2008, Revised Selected and Invited Papers</source>
          , volume
          <volume>5397</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>111</fpage>
          -
          <lpage>127</lpage>
          . Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Felipe R. Meneguzzi</surname>
          </string-name>
          ,
          <string-name>
            <surname>Pankaj R. Telang</surname>
            , and
            <given-names>Munindar P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>A first-order formalization of commitments and goals for planning</article-title>
          .
          <source>In Proc. of the 27th AAAI Conference on Artificial Intelligence</source>
          . AAAI Press,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Felipe R. Meneguzzi</surname>
          </string-name>
          ,
          <string-name>
            <surname>Pankaj R. Telang</surname>
          </string-name>
          , and
          <string-name>
            <surname>Neil</surname>
          </string-name>
          Yorke-Smith.
          <article-title>Towards planning uncertain commitment protocols</article-title>
          .
          <source>In Proc. of the 2015 Int. Conf. on Autonomous Agents and Multiagent Systems</source>
          , AAMAS, pages
          <fpage>1681</fpage>
          -
          <lpage>1682</lpage>
          . ACM,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>Raz</given-names>
            <surname>Nissim</surname>
          </string-name>
          and
          <string-name>
            <surname>Ronen I. Brafman.</surname>
          </string-name>
          <article-title>Distributed heuristic forward search for multi-agent planning</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR)</source>
          ,
          <volume>51</volume>
          :
          <fpage>293</fpage>
          -
          <lpage>332</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Munindar</surname>
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>An ontology for commitments in multiagent systems</article-title>
          .
          <source>Journal of Artificial Intelligence in Law</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ):
          <fpage>97</fpage>
          -
          <lpage>113</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Munindar</surname>
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>An ontology for commitments in multiagent systems</article-title>
          .
          <source>Artif. Intell. Law</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ):
          <fpage>97</fpage>
          -
          <lpage>113</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Munindar</surname>
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>Commitments in multiagent systems some controversies, some prospects</article-title>
          .
          <source>In The Goals of Cognition. Essays in Honor of Cristiano Castelfranchi</source>
          , chapter
          <volume>31</volume>
          , pages
          <fpage>601</fpage>
          -
          <lpage>626</lpage>
          . College Publications, London,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Pankaj R. Telang</surname>
          </string-name>
          ,
          <string-name>
            <surname>Felipe R. Meneguzzi</surname>
            , and
            <given-names>Munindar P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>Hierarchical planning about goals and commitments</article-title>
          .
          <source>In Int. conf. on Autonomous Agents and Multi-Agent Systems, AAMAS '13</source>
          , pages
          <fpage>877</fpage>
          -
          <lpage>884</lpage>
          . IFAAMAS,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Pankaj R. Telang</surname>
            ,
            <given-names>Munindar P.</given-names>
          </string-name>
          <string-name>
            <surname>Singh</surname>
          </string-name>
          , and
          <string-name>
            <surname>Neil</surname>
          </string-name>
          Yorke-Smith.
          <article-title>Relating Goal and Commitment Semantics</article-title>
          .
          <source>In Post-proc. of ProMAS</source>
          , volume
          <volume>7217</volume>
          <source>of LNCS</source>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Adriaan</surname>
          </string-name>
          ter Mors, Chetan Yadati, Cees Witteveen, and Yingqian Zhang.
          <article-title>Coordination by design and the price of autonomy. Autonomous agents and multi-agent systems</article-title>
          ,
          <volume>20</volume>
          (
          <issue>3</issue>
          ):
          <fpage>308</fpage>
          -
          <lpage>341</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Michael</surname>
            <given-names>Winikoff</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lin</surname>
            <given-names>Padgham</given-names>
          </string-name>
          ,
          <string-name>
            <surname>James Harland</surname>
            ,
            <given-names>and John</given-names>
          </string-name>
          <string-name>
            <surname>Thangarajah</surname>
          </string-name>
          . Declarative &amp;
          <article-title>procedural goals in intelligent agent systems</article-title>
          . In Dieter Fensel, Fausto Giunchiglia, Deborah L.
          <string-name>
            <surname>Mc</surname>
            <given-names>Guinness</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Mary-Anne</surname>
            <given-names>Williams</given-names>
          </string-name>
          , editors,
          <source>Proc. of the 8th Int. Conf. on Principles and Knowledge Representation and Reasoning (KR-02)</source>
          , pages
          <fpage>470</fpage>
          -
          <lpage>481</lpage>
          . Morgan Kaufmann,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>