MULTI-AGENT SUPPLY CHAIN SYSTEM schedules which affects customer orders, and resource demands.

2 MULTI-AGENT SUPPLY CHAIN SYSTEM schedules which affects customer orders, and resource demands.

He originates production requests and supplier orders. He also

A supply chain is a network of facilities that performs the func-

notices the acquisition of resources.

tions of procurement of raw materials from suppliers, transforma- The scheduler is responsible for scheduling and rescheduling tion of these materials into intermediate goods and final products,

activities in the manufacturing enterprise. He receives production and the delivery of these products to customers [8]. The supply

requests from the logistics agent, resource problems from the chain functions range from the ordering and receipt of raw materi-

resource agent, and deviations of the current schedule from the als, to the distribution and delivery of final products, via the

dispatcher. He originates detailed schedules and sends them to the scheduling, production, warehousing, and inventory of intermedi-

dispatcher and to the resource management agent. He also com- ate goods and final products.

municates the deviations of the current schedule to the logistics The integration of the multiple supply chain functions has re-

agent.

ceived a great deal of attention in the recent years [35]. However, The resource management agent is responsible for managing most work addresses only single functions, such as scheduling or

dynamically the availability of resources in order to execute the production. To date there exist little work that addresses the

scheduled activities. He receives the schedule from the scheduler and the consumption of resources from the dispatcher. He also receives information about the acquisition of resources from the logistics agent. He estimates resource demands and identifies scheduled activities. He receives the schedule from the scheduler and the consumption of resources from the dispatcher. He also receives information about the acquisition of resources from the logistics agent. He estimates resource demands and identifies

agreement deadline.

The dispatcher is responsible for executing the scheduled ac- tivities. This agent controls the real time functions of the factory floor. He receives the schedule and the availability of resources.

2.3 Negotiation characteristics

He notices deviations of the current schedule and the consumption Negotiation between agents in a multi-agent supply chain system of resources.

and, we believe, a wide range of similar systems, exhibit the The suppliers sell raw materials and the customers buy finished

following characteristics:

goods. The suppliers receive orders from the logistics agent and transmit their own alternative orders. The customers send orders

1. two or more parties - negotiation may involve two parties to the logistics agent and receive alternative orders.

(e.g., the logistics agent and a customer) or many parties (e.g., the logistics agent and the scheduler, the resource management agent, etc). Multilateral negotiation consists essentially of a set

2.2 Multi-agent coordination via negotiation

of mutually influencing bilateral negotiations (e.g., the logis- tics agent negotiates individually with the scheduler, or with

The individual agents of the supply chain system must work in a the resource management agent, etc). tightly coordinated manner in order to effectively and efficiently

achieve their goals. Coordination is achieved through negotiation.

2. multiple issues – negotiation ranges over a number of interre- lated issues (e.g., price, quantity, quality, date, etc);

Negotiation is a process by which two or more parties verbalize

3. repeated rounds (encounters) – more than one bargaining contradictory demands and move toward agreement by a process of session may occur before reaching an agreement. So, the at- concession making and search for new alternatives [29]. mosphere at the end on one session can influence the atmos- Let us introduce an example to illustrate the negotiation proc-

phere at the next session;

ess in the multi-agent supply chain system. The example concerns mainly the negotiation between a customer and the logistics agent,

4. cooperative or non-cooperative negotiation behavior – nego- but also illustrates the negotiations between the agents within the

tiation may occur between agents within the same organization manufacturing enterprise.

(e.g., between the logistics agent and the scheduler) or be- tween inter-organizational agents (e.g., between the logistics agent and a customer). In the former case, negotiation is coop-

Example. Consider that a customer (C) intends to buy 20 comput- erative in nature. In the latter case, negotiation is purely com- ers and sends the following proposal order to the logistics agent

(L):

petitive;

5. time restrictions – time is an important factor. The time

C: I propose to buy 20 high-quality computers with the price of needed to reach an agreement must be reasonable. Also, the EUR 15000 and the due date for 30 March.

mutually accepted due dates are often important. Upon receiving the proposal, the logistics agent negotiates with

the scheduler the feasibility of scheduling the production of the

3 INTENTIONAL AGENTS – INDIVIDUAL

order. He also negotiates with the resource management agent the

PERSPECTIVE

feasibility of producing the desired quantity of computers. The latter negotiations may lead to subsequent negotiations with sup-

This section discusses a single intentional agent from an internal pliers of raw materials. If an execution plan is agreed on, the

point of view, in terms of his mental state and planning process. logistics agent uses it to generate a response to the customer. He

Let us introduce a formal notation in order to describe the con- can respond either by: (i) accepting the received proposal, (ii)

cepts that follow. Let Agents = {ag 1 , …, ag r }, r ∈N, be a set of sending a counterproposal, or (iii) just ignoring the proposal and

intentional agent s. In the remainder of this article, we use ag aborting the negotiation. Suppose that the logistics agent responds

i (or with the following counterproposal:

only i) to denote the generic intentional agent whose characteris- tics we are analysing. We use k and m to denote particular objects

L: I propose to sell 20 high-quality computers with the price of

i (e.g., g ik denote the goal k of ag i , and int ikm denote the intention m contained in the plan k of ag ). We also use the stan-

of ag

EUR 20000 and the due date for 30 July.

The next step would be easy is the customer decides to accept the

counterproposal. In that case, he just needs to send an acceptance dard notations <>, {}, and [] to denote tuples, sets and lists, re- message to the logistics agent. However, if the customer is not

spectively.

satisfied with the counterproposal, he can either send back another counterproposal or abort the negotiation. Suppose that the cus-

3.1 Mental state and mental attitudes

tomer decides to make a concession - he prepares a counterpro- posal that meets his needs worse than the initial proposal. He

The mental state Mi of agent ag i ∈Agents is a 5-tuple: decides to adjust the price of the computers and accepts the due date proposed by the logistics agent:

M i = <B i ,G i , PL i ,I i , Ext i >

C: Okay, in that case, I propose the price of EUR 18000 and where B i is a belief set, G i a goal set, PL i a plan template library, accept the due date for 30 July.

I i an intention structure, and Ext i an external description (see This exchange of proposals and counterproposals will go on until

subsection 4.1).

the agents decide to accept a proposal or quit. The negotiation

Proceedings of the ECAI 2000 Workshop 13 "Agent Technologies and Their Application Scenarios in Logistics" edited by I. J. Timm et al. page 63

Every intentional agent ag i has a set B i = {b i1 , b i2 , …} of be-

Goals

Goal Selection

Selected Goal

liefs representing facts about the world and the agent himself. We assume that beliefs are internally consistent, i.e., individual beliefs

New Goals

do not conflict with one another. In addition, we assume that beliefs persist by default over time and are continuously updated

Plan

Decomposition

Plan Library Plan Retrieval

to reflect changes in the world. Describing the belief updating

process is beyond the scope of this work. The agent ag i has a set G i = {g i1 ,g i2 , …} of goals representing

world states to be achieved. We consider only achievement goals. Composite Plan

Retrieved Plans

An achievement goal, denoted by g ik , states that ag i wants to achieve a world state where g ik holds. Every achievement goal

Plan

Adopted Plans Plan Selection

(goal, for short) has associated a number of factors, including a

Interpretation

(Intention Structure) And Adoption

priority or importance and a degree of urgency. These factors are used by ag i to select the most appropriate goal to accomplish. We

Key:

To Effectors

assume that goals are internally consistent.

- data store; - process;

(Action)

- input; - output.

The agent ag i has a library PL i = {pt i1 , pt i2 , …} of plan tem- plates representing known procedures for achieving specific goals.

Figure 2. Intentional agent architecture (part related to plan generation)

Plan templates can be seen as a subset of the agent’s beliefs, namely beliefs about what procedures are useful for achieving which goals under specified conditions. A plan template pt ik ∈PL i ,

3.2 Plan generation

k ∈N, is a 7-tuple: Figure 2 is a block diagram describing part of the architecture of an intentional agent, namely the part related to plan generation.

< id, name, args, type, body, constrs, preconds> The mental attitudes just discussed are modeled as data structures where id is a plan identifier, name is a plan name, args is a list of

and denoted by ovals. The processes that operate on these struc- arguments, type is the type of the plan template (composite or

tures are denoted by rectangles. The belief data structure is not primitive), body is a procedure for achieving the goal specified by

shown, but it provides input to all processes. the name and args, constrs is a list of constraints (imposing a

A plan p is a partially ordered collection of plan templates. The temporal order on the members of the body, on the types of argu-

plan has a structure Pstruct consisting of a hierarchical and tem- ments, on the relations between arguments, etc), and preconds is a

porally constrained And-tree. The nodes of the tree are plan tem- list of conditions that must hold before processing the plan's body.

plates retrieved from the library and instantiated with specific The library PL

i = CPL i ∪PPL i has composite and primitive plan generation is an iterative procedure of: (i) goal selection, (ii) plan templates. A composite plan template cpt ik ∈CPL i has a body retrieval, (iii) plan selection and adoption, (iv) plan interpretation,

values (henceforth, plan templates are just referred as plans). Plan

containing one or more body steps describing the hierarchical

and (v) plan decomposition.

decomposition of the goal specified by the name and args into At any given time, the agent ag i selects a goal g ik ∈G i ,k ∈N, to more detailed subgoals. A primitive plan template ppt ik P i has

achieve and starts the generation of the plan p ik . Goal selection is

a body containing an action (or a sequence of actions) directly done accordingly to a number of factors, notably the priority and performable by the agent.

urgency. First, ag prefers to fulfill goals of higher priority over The intention structure I

i = [it i1

, …, it in ], n ∈N, consists of a

goals of lesser priority. Second, in cases where goals of similar list of intention threads. A single intention thread it ik ,1 ≤k≤n, is a priority are involved, ag i prefers to fulfill goals of higher time

conventional agenda of hierarchically related plan templates. More

urgency.

specifically, each intention thread contains the plan p ik adopted by Plan retrieval consists of searching the plan library PL i and

ag i for achieving the goal g ik ∈G i . This plan is constituted by finding any plan whose name and arguments match the represen-

intentions (int ik1 , int ik2 , …). We assume that intentions are inter- tation of g ik . When suitable matches are found, the plans are re- nally consistent and consistent with the beliefs. It should be

trieved from the library and their arguments are unified with spe- stressed that the term “adopted plan” entails an agent’s commit-

cific values from g ik representation. These plans are called re- ment to execute the plan [28]. The nature of this commitment is

quite complex [3]. In this article, we just assume that the agent ag i Plan selection and adoption involves the evaluation of the ap-

trieved or applicable plans.

commits to the plans he adopts and undertakes to reconsider plicable plans (pt i1 , …, pt ik-1 , pt ik , pt ik+1 ) ∈PL i , the selection of them when they conflict with the plans of other agents. In

. The evaluation and particular, he negotiates a mutually acceptable agreement that

ik , and the adoption of pt ik often leads to plan reconsideration.

the preferred one pt

selection of the applicable plans is done by comparing their costs (scores) and choosing the plan pt ik with the higher cost [14; 25].

The adoption of pt ik consists of adding it to the intention structure

I i . More specifically, pt ik is added to the top of the intention thread

Proceedings of the ECAI 2000 Workshop 13 "Agent Technologies and Their Application Scenarios in Logistics" Proceedings of the ECAI 2000 Workshop 13 "Agent Technologies and Their Application Scenarios in Logistics"

where (ag

1 4 , …, ag n ) ∈Agents. The individual entry Ext i (ag j ) stores

ferred to intention int adopted by ag . It should be stressed that

information about agent ag ∈Agents and is defined as a 3-tuple: the applicable plans (pt

ik1

i1 , …, pt ik - 1 , pt ik+1 ) ∈PL i not adopted are

also added to it for possible future use (they are explicitly re- Ext i (ag j ) = <B i (ag j ), G i (ag j ), I i (ag j )>

ik

corded in Pstruct ik and placed alongside pt ik ). These plans are where B i (ag j ), G i (ag j ) and I i (ag j ) are respectively the beliefs, goals called alternative plans and have a key role in the definition of a

and intentions (plans) ag i believes ag j has. structure for a negotiation problem (see subsection 5.2).

Plan interpretation consists mainly of selecting a composite plan for subsequent decomposition. Typically, the plan pt ik re-

4.2 Potential conflict of interests

cently added to it ik is a composite one and is selected. This plan is Let ag i ∈Agents be an intentional agent and A = {ag 1 , …,ag n }, called the current plan.

be the Plan decomposition consists of processing the precondition list

A ⊆Agents, be a set of agents that interacts with ag . Let I

ii

of the current plan pt ik , and establishing a temporal order for its intention structure of ag i and Ext i = [Ext i (ag 1 ), …, Ext i (ag n )] be body members {g ik1 , g , …}. The temporal order is defined by

his external description. Let p ik

be a plan of ag i including inten-

ik2

the constraint list. The body members {g , g , …} of pt are tion int ikm . Let PP = {p ik (ag 1 ), …, p ik (ag )} be a set of possible

interpreted as subgoals of g

ik and are added to the goal set G

plans

of the agents in A, i.e., plans that ag i believes these agents

(assuming consistency is maintained). have generated. Let PI = {int ikm (ag 1 ), …, int ikm (agn)} be a set of At this point a new cycle begins and all the tasks described are

possible intentions of the agents in A, i.e., intentions that ag i repeated. The first ordered subgoal g ik1 is selected and processed

believes these agents have formulated as part of plans {p ik (ag 1 ), in the same manner as the initial goal g ik . The new adopted plan

…, p ik (ag n )}, respectively.

pt ik1 is added to it ik and placed in Pstruct ik as the left-most child Let us assume that the intentions in PI represent commitments of the plan pt This is then repeated for all the other subgoals,

to achieve mutually exclusive world states. In this situation, the

intentions are called potentially incompatible and represented by: with each new adopted plan being located to the right of any plan

ik

already placed in Pstruct ik . Pot-Incomp (int ikm (ag 1 ), …, int ikm (ag n )) emphasizing the fact that they cannot be executed together. The

plans in PP are also called potentially incompatible and repre- This section defines formally the concepts of external description

4 CONFLICT OF INTERESTS

sented by:

and conflict of interests, and describes axioms for conflict detec- Pot-Incomp (p (ag ), …, p (ag )) tion.

ik

1 ik n

A potential multi-agent conflict of interests from the perspec- tive of ag i and with respect to plan p ik is defined formally as fol-

4.1 External description

lows:

Intentional agents operate in multi-agent environments and must Pot-Conf ik = ∃int ikm ∈I i ∧ ∃int ikm (ag 1 ) ∈Ext generate their plans by taking into account the potential plans of

i (ag 1 ) other agents. They have a data structure called external descrip-

∧ … ∧ ∃int ikm (ag n ) ∈Ext i (ag n ) ∧ tion where the information about the other agents present in the environment is stored. This information is obtained by explicit

Pot-Incomp (int ikm , int ikm (ag 1 ), …, int ikm (ag n )) communication and corresponds to the beliefs, goals and inten-

tions (plans) every agent has regarding the other agents. This It is important to note that potential conflict is defined as being subjective. In other words, the agent ag

i only needs to believe that The external description Ext i of an intentional agent

information may be incomplete and even incorrect.5

the other agents in A intend to achieve specific world states, and does not need to know the real intentions of these agents.

ag i ∈Agents is defined formally as a list: ________________________________________________

4.3 Axioms for conflict detection

4 Intentions are goals not yet achieved and considered achievable - goals restricted to the existence of plans for achieving them [9].

Conflict detection is done individually by each agent using pre-