We assume throughout this work that the agents are able to communicate specified axioms Ax i ={ax i1 , ax i2 , …}. The axioms have the gen-

5 We assume throughout this work that the agents are able to communicate specified axioms Ax i ={ax i1 , ax i2 , …}. The axioms have the gen-

by message passing, that they have a common means of structuring their

eral form:

messages, and that they are able to reach a common agreement of the terms they exchange. We also assume that the agents will not necessarily reveal

int ikm & int ikm (ag 1 ) & …&int ikm (ag n )&conds Æfalse

their beliefs, goals and intentions (plans) truthfully, if asked by other agents.

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

Incompatible

Problem Restructuring

Plan

(adding/removing issues)

Yes

Negotiation Problem

Proposal Problem

Restructuring Structure

Possible? Generation

Structure

(and Evaluation)

(with concessions)

Response from

(without concessions)

Reception and Evaluation

other parties

No

Yes Willingness Key: No Negotiation No - data;

to concede?

deadline?

Agreement?

- process; - input; - output/inf. flow;

Figure 3. The negotiation mechanism (perspective of each agent) where int ikm , int ikm (ag 1 ) and int ikm (ag n ) have the meaning just

negotiation problem structure generation, proposal generation and specified, conds is a list of conditions, false is a 0-ary predicate

evaluation, counterproposal generation without concessions, and symbol, & is the conjunction operator, and

Æ the implication counterproposal generation with concessions. operator. The axioms can be seen as a subset of the agent’s be-

liefs, namely beliefs about which world states are mutually exclu-

5.1 The generic negotiation mechanism

sive under specified conditions. The examination of the negotiation literature from the fields of

4.4 True conflict of interests

psychology [29], economy [30], game theory [32], distributed artificial intelligence [21; 27], and computer support of negotiation

Intentional agents check regularly their adopted plans in order to [17] motivated the development of the mechanism shown sche- detect any potential conflict. Let us assume that ag i detects a

matically in Fig. 3. The mechanism handles multi-party, multiple-

issue and single or repeated rounds, and supports the following …,ag n } involved and asks them to confirm the information used to

conflict. Following this, he identifies all the agents A = {ag 1 ,

primary aspects of negotiation:

1. iterative exchange of proposals and counterproposals; int ikm (ag n )}. We assume that the agents are willing to reveal

detect the conflict – the possible intentions PI = {int ikm (ag 1 ), …,

2. application of non-concession and concession mechanisms for proposal generation;

truthfully the correctness of the information necessary to confirm a conflict. However, as stated above, they do not necessarily reveal

3. learning – discovery of new negotiation issues; information not related to a conflict.

The mechanism defines the essential steps each agent ag i will The confirmation of potential conflicts of interests leads to true

perform in order to solve a negotiation problem NP conflicts of interests.

ik . First, ag i generates a structure NPstruct ik for the negotiation problem NP ik

5 MULTI-AGENT NEGOTIATION

(see subsection 5.2). Next, he generates the preferred negotiation proposal that satisfies the requirements imposed by NPstruct ik .

True conflicts of interests raise negotiation problems. Let A = More specifically, he generates multiple alternative negotiation {ag 1 , …,ag n }, A⊆Agents, be a set of intentional agents. Let

positions, evaluates them using an additive scoring function, and P={p 1k , …, p nk } be a set of plans of the agents in A. Let

selects the preferred one. The selected position is then used to

ag i ∈Agents be an intentional agent. Let p ik

be a plan of ag i in-

prepare the preferred negotiation proposal (see subsection 5.3). A negotiation proposal, broadly speaking, is a partial or a complete

compatible with the plans in P. A negotiation problem from the solution to the problem NP ik that ag faces. Next, ag determines perspective of the individual agent ag i is defined formally as a 4-

tuple: the feasibility of the proposal. If the proposal is acceptable, ag i communicates it to the other parties (agents in A) which, typically,

NP ik = <ag i ,p ik , A, P> respond with counterproposals. A counterproposal is just a pro- This section presents a generic mechanism for designing and

posal made in response to a previous proposal prop ikm and more implementing intentional agents with competence for solving

favorable to the responding agent than prop ikm . negotiation problems. In addition, this section presents a detailed

Following this, ag evaluates the counterproposals and either description of four processes specified by the mechanism, namely

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

Incompatible Plan

Problem Structure

Generation (Initial Structure)

Problem Structure

Plan Addition And Placement

Problem Stru cture Interpretation

Retrieved Plans

Selected Composite Plan

Plan Library

Plan Retrieval

- data; - process;

New Goals

- input; - output

Goal Stack Goal

Figure 4. Negotiation problem structure generation

accept one of them or not. If all the counterproposals are unaccept- Problem structure interpretation consists mainly of selecting an able and the negotiation deadline is not reached, ag i responds by

alternative plan pt ik from the structure of NP ik . Plan decomposi- sending back a counterproposal. He can generate a counterpro-

tion, goal selection and plan retrieval were described above (see

section 3.2). In brief, these processes involve the definition of an subsection 5.4), or (ii) preparing another proposal prop

posal by either: (i) “improving” the rejected proposal prop ikm (see

order among the body members of pt , the addition of the body

ikm+1

ik

satisfying the requirements imposed by NPstruct ik (see subsection members (goals) to a particular goal stack, the selection of a goal, 5.5). Both types of responses require no changes in NPstruct ik .

and the retrieval of all the plan templates stored in the library PL i The exchange of proposals and counterproposals continues until

matching the goal description.

an agreement is found, the possibilities for preparing acceptable Plan addition and placement consists of placing the retrieved proposals have been exhausted, or a decision for introducing new

plan templates at appropriate points in the structure of NP ik (also, issues has been taken. In the latter two cases, ag i needs to re-

according to the procedure described in subsection 3.2). The com- structure the negotiation problem in order to avoid a deadlock.

plete expansion of all alternative plans leads to NPstruct ik . Problem restructuring closes one round of negotiation. Negotiation

proceeds to a new round in which all the tasks described above are repeated. The final outcome is an agreement or a deadlock.

5.3 Proposal generation and evaluation

Let us introduce some formal definitions needed for describing

proposal generation and evaluation. Let F ik = {f ik1 , …, f ikz }, z ∈N,

5.2 Negotiation problem representation

The negotiation problem NP defined above is represented by a ik . A fact is defined formally as a

be the set of facts of NPstruct

ik

tuple:

hierarchical And-Or tree called negotiation problem structure (NPstructik). The description (name and args) of the root node of

fact = <issue, value> is called the negotiation goal (ng ik ) and the descriptions of the

where issue is a negotiation issue and value is a value for the leaf nodes are called facts.

issue. Facts can have associated logical values taken from the set L Let p ik

be the plan of ag i incompatible with the plans in P. The = {true, false, any}. The set of issues under negotiation is repre- negotiation problem structure NPstruct ik is generated from the

sented by Is ik = {is ik1 , …, is ikz } and the generic value of the mth structure of plan p

ik , by expanding all the alternative plan tem- ikm ], 1 ≤m≤z. The issues are defined over finite ranges.

issue by x[is

plates. More specifically, the generation of NPstruct is an itera- The range of values acceptable to agent ag i for the generic issue m

ik

tive procedure of: (i) problem structure interpretation, (ii) plan is represented as D ikm = [min ikm , max ikm ]. The agent assigns decomposition, (iii) goal selection, (iv) plan retrieval, and (v) plan

different weights to each issue reflecting their importance. The addition and placement. Fig. 4 is a block diagram describing the

weight of the mth issue is represented by w ikm . We assume the generation of a structure for a negotiation problem.

weights are normalized, i.e., ∑ w ikm = 1 . simply a copy of p ’s structure (And tree). Then the iterative

First, an initial structure is generated for NP p

ik . This structure is

ik

procedure starts.

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

Other agents

Position Evaluation

Requirements

and Selection

Negotiation Position

Key: - data; - process;

Figure 5. Proposal generation

Proposal generation involves: (i) problem resolution (problem

same score as contract x ikm .

solution generation), (ii) position generation, (iii) position evalua-

= {f tion and selection, and (iv) proposal preparation. Fig. 5 is a block

ik1 , …, f ikp , f ikp+1 , …, diagram describing the generation of a negotiation proposal.

A negotiation proposal prop

ikm

f ikz } is a revised negotiation position obtained by changing the

A negotiation problem NP flexible facts with the value any to true or false. The agent ag

ik has usually several solutions. A

solution S ikm = {f

with the higher score and changes the ik1 , …, f ikp }, S ikm ⊆F ik , is a set of facts with the

selects the position pos

ikm

logical value true satisfying the negotiation goal ng

ikm to true or false. He can adopt a coop- solution S

values of the facts in FF

ik [17]. The

is obtained from NPstruct by: erative or a non-cooperative behavior by assigning values to these

ikm

ik

facts according to or against the interests of other agents, respec-

1. selecting exactly one disjunct from each Or node; tively. He also may wish to maintain all the flexible facts in the

2. assigning the value true to the facts (f proposal or to withhold judgement on some of them. In the latter

ik1 , …, f ik p) of the tree

={ f ikp+1 , …, f ikq }, CFF ikm ⊆FF ikm of the flexible facts and includes only these facts The facts (f ik1 , …, f ikp ) must have the value true in order to

case, he selects a subset CFF

resulting from step 1.

ikm

in the proposal prop ikm = {f , …, f ,f achieve ng . The issues (is , …, is ) associated with these

ikp ikp+1 , …, f ikq }, q ≤z. This

ik1

proposal is called a negotiation offer. The facts in CFF are facts represent the inflexible issues of negotiation.

A negotiation position Pos ikm = {f ik1 , …, f ikp ,f ikp+1 , …, f called communicated flexible facts and the remaining facts, i.e.,

ikz }

= {f , …, f } are is a a solution S ikm = {f

the facts in RFF

} increased with the remaining

ikm

ikm -

ikm ikq+1 ikz

called retained flexible facts.

facts FF ikm = {f ikp+1 , …, f ikz } of NP ik . The facts in FF ikm are not important for achieving ng ik and get the logical value any. The

5.4 Counterproposal generation without conces-

issues (is ikp+1 , …, is ikz ) associated with these facts are called

sions - bargaining issue manipulation

bargaining issues and represent the flexible issues of negotiation.

The agent ag

The agent ag generates all the negotiation positions and selects

i communicates the negotiation proposal (or offer)

to the other parties which, in turn, evaluate it and typi- the preferred one using an additive scoring function [30]. Let

prop

ikm

V ikm : D cally respond with counterproposals. Upon receiving the counter- ikm ÆR be the component scoring function that gives the proposals, ag i may decide either to accept one of them or to send score (or value) ag i assigns to a value x[is ikm ]∈D ikm of issue

back another counterproposal, i.e., an alternative proposal to m ∈Is ik . The score for contract x ikm = (x[is ik1 ], …, x[is ikp ]) corre-

prop ikm .

sponding to solution S ikm is given by: Counterproposal generation without restructuring the negotia-

tion problem can be done by using: (i) non-concession, and (ii) Vi(xikm) = ∑ w V (x[is ]) ikj ikj ikj

concession mechanisms. Non-concession mechanisms generate j = 1 counterproposals that meet successively the needs of agi without

The score for values (x[is ikp+1 ], …, x[is ikz ]) of the bargaining any significant loss of acceptability. The new counterproposals have a score similar to the score of the previously offered counter-

issues is assumed to be null. As a result, position Pos ikm has the proposals. This subsection introduces a significant non-concession

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

of prop . Generally speaking, a negotiation tactic is a function Real world negotiations often involves strategic misrepresenta-

ikm

tions. For instance, bargainers are often advised that they should tactic: D ikj ÆD ikj , that takes the value x[is ikj ] old of is ikj as input

purposely add to the negotiation agenda issues that they do not and returns the new value x[is ikj ] new of is ikj to be offered in really care about, in the hope that the other parties will feel

prop ikm+1 by ag i , with V ikj (x[is ] old )≥V ikj (x[is strongly about one or more of these issues - strong enough to be

ikj ] new ). In this work, we consider five generic tactics that model dif-

ikj

gaining issue manipulation is a mechanism that allows one party ikj at each point of the ne-

willing to make compensating concessions [30]. To this end, bar-

ferent concessions on a single issue is

to act strategically by exaggerating the importance of some issues gotiation process. A concession on an issue is ikj is defined as a (bargaining issues) in order to extract concessions from the other

change in the value of is ikj that reduces the level of benefit sought parties. More specifically, this mechanism allows one party ag i to

(or score value). The description of the five tactics is as follows: “improve” a rejected proposal prop ikm by selecting one or more

1. Stalemate - models a null concession on is , i.e., the agent bargaining issues with specific values (flexible facts) from RFF

ikj

ag does not change the value of is and adding them to the proposal. The “improved” proposal

ikj ; prop

ikm

2. Tough - models a small concession on is ikj ; ikm+1 and the rejected proposal prop ikm have the same score

3. Moderate - models a moderate concession on is ikj ; (hence, ag i does not make a concession).

4. Soft - models a large concession on is Bargaining issue manipulation is formalized by two functions:

ikj ;

5. Compromise - models a complete concession on is , i.e., the select and add. The function select: 2RFFikm

ÆRFF ikj

ikm assists ag i

in selecting a fact from RFF ikj new of is ikj is the value proposed by another

new value x[is ]

agent for is ikj (or the reservation value for is ikj - see below). input and returns a retained flexible fact f ikx F ikm . The func- Let us introduce some definitions needed to formalize these

ikm . This function takes RFF ikm as

tion add: 2propikmx RFFikmÆ2 propikm+1 maps a proposal tactics. The limit or reservation value RV ikj for issue is ikj is the

prop ikm and a fact f ikx F ikm into a new proposal prop ikm+1 minimum (or maximum) value that ag i is willing to accept before containing f ikx , i.e.,

he definitely breaks off negotiation - depending on whether ag i is maximizing or minimizing is ikj [30]. The demand dem

add (prop ,f ) = prop

.f

ikj of ag i

for is ikj is the value of is ikj proposed by ag i to the other parties at where . stands for concatenation. It should be stressed that several

a specific point in the negotiation. The negotiation interval NI ikj select functions can be defined reflecting the negotiation behavior

for is ikj is the range of values between RV ikj and dem ikj . Typi- of ag i . One such function is:

cally, NI ikj diminishes during the course of negotiation [29, 30]. The new value x[is ikj ] new of is ikj is computed by the following

select (RFF ikm )=f ikx w ikx = max w

where w ikj , (q+1) ≤j≤z, is the weight of the bargaining issues asso- x[is ikj ] new = x[is ikj ] old + (-1) w F RV ikj - x[is ikj ] old  ciated with the retained flexible facts. This function selects the

ikx in RFF ikm corresponding to the bargain- ikj is monotonically decreasing or w = 1 if V ikj is ing issue with the higher weight or importance.

retained flexible fact f

where w = 0 if V

monotonically increasing, and F∈[0, 1] is a factor. This expres- sion assures that x[is ikj ] new ≤ RV ikj . It also models the following

experimental conclusions [29]: (i) a higher limit should produce

5.5 Counterproposal generation with concessions –

larger demands and slower concessions, and (ii) demand will be

negotiation tactics

closer to limit the higher the limit. In addition, the expression assures that x[is ]

Concession mechanisms generate counterproposals that have ikj new ≥ x[is ikj ] old , i.e., once a value is offered

successively lower scores than previous counterproposals. Nego- for is ikj it is not reversed. This is a basic principle of negotiation tiation tactics are the predominant concession mechanisms.

[29, 30] (tradeoffs and problem restructuring are the two notable Negotiation tactics are functions that compute values for sin-

exceptions - however, these mechanisms are distinct from nego- gle issues at every instant in the negotiation. Let prop ikm

be a

tiation tactics).

negotiation proposal submitted by ag to the other parties and The factor F can be simply a constant [19]. The five tactics are

then formalized by considering different values for F. For in- rejected. Let x[is ikj ] old

stance, the stalemate tactic is formalized by setting F=0, the prop ikm by ag i , and D ikj

be the value of the issue is ikj offered in

tough tactic by F∈]0, 0.5[, the moderate tactic by setting F=0.5, for is ikj . Let V ikj

be the range of values acceptable to ag i

be the component scoring function of ag i for the soft tactic by F∈]0.5, 1[, and the compromise tactic by F=1 or issue is . This function is assumed to be either monotonically

F= (x[is nkj ]-x[is ikj ] old )/(RV ikj -x[is ikj ] old ) , where x[is ] is the

ikj nkj

increasing or monotonically decreasing. Let prop ikm+1

be the new

value proposed by other party ag n to the issue is ikj .