46
Sidner’s artificial negotiation language

Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Embed Size (px)

Citation preview

Page 1: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Sidner’s artificial negotiation language

Page 2: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Sidner: an artificial discourse language for collaborative

negotiation

• Formal account of negotiative dialogue

• negotiation for Sidner– ...

• Has been applied to a dialogue from the AMEX corpus

Page 3: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Sider: basic concepts• state of communication

– beliefs (individual)– intentions– mutual beliefs– stack of open beliefs (OpenStack)– stack of rejected beliefs (RejectedStack)

• messages– agents (a,b) transmit messages with

propositional contents (p)– semantics of messages

• given in terms of postconditions on the state of communication

Page 4: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

messages• primitive message types

– ProposeForAccept PFA(a,p,b)• a expresses p to b, intending b to accept p• When acknowledged, p is pushed on OpenStack

– Reject RJ(a,p,b)• a does not believe p• p is popped from OpenStack and pushed on

RejectedStack

– Accept AP(a,p,b)• a and b now hold p as a mutual belief• p is popped from OpenStack

– RetractProposal RP(a,b,p)• a retracts his proposal p

Page 5: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

other messages• Derived messages

– Counter: CO(a,p,b,q) • a counters b’s proposal of p with q

– AcceptOtherProp: AOP(a,b,p,q)• a accepts b’s proposal of q and rejects his own

proposal p

– ProposeReplace: PR(a,b,p,q)• a proposes p and rejects b’s proposal of q

– ProposeAct: PA(a,b,d,c)• a proposes action d in context c

• Acknowledgement messages– AckReceipt, AckReject, AckRejectedProp

Page 6: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Sample definition

• ProposeForAccept: PFA(a,p,b)– BEL(a,p)– INT(a,Achieve(a, BEL(b,p)))– BEL(a,Communicated(a,b,p))

• AckReceipt: AR(a,p,b)– MB(a,b,BEL(b,p))– MB(a,b,INT(a,Achieve(a,BEL(b,p)))– MB(a,b,Communicated(a,b,p))– p is pushed on OpenStack

Page 7: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Analysis of questions

• Question = proposal that agent should perform an action

• Example– “Did John come?”– PFA(a,Should-Do(b,Tellif(b, ‘(john did come)))

• In what sense are questions proposals?

Page 8: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

AMEX dialogue0 BC My name is B C and I would like to plan a trip1 TA and the date you need to leave? ...19 TA there is one on United that leaves Oakland at eleven thirty

p.m. and arrives Chicago five twenty five a.m.20 BC so that's a two hour hold there21 TA yes22 BC waiting for that flight ok any others?23 TA uh not from Oakland. departing from San Francisco it's about

the same actually American has an eleven forty one flight from San Francisco that arrives Chicago five fifty four (and

24 BC that's ) and hour and a half. so that's that's a a wash25 TA yeah or wait just one moment. or United has a twelve oh one

a.m. departure that arrives at Chicago five fifty two a.m.26 BC oh that sounds good

Page 9: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Sidner: application to travel agency dialogue

• Sidner points out that– there are a number of alternative

proposals on offer throughout this section

– there is more going on than just questions and answers

• “Hi, my name is BC” is analysed as a proposal– Why is this counterintuitive?

Page 10: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Counterproposals in the AMEX dialogue

• Example repeated:19 TA there is one on United that leaves Oakland at eleven

thirty p.m. and arrives Chicago five twenty five a.m.23 TA uh not from Oakland. departing from San Francisco it's

about the same actually American has an eleven forty one flight from San Francisco that arrives Chicago five fifty four (and

25 TA yeah or wait just one moment. or United has a twelve oh one a.m. departure that arrives at Chicago five fifty two a.m.

• Analysis:– 19 is analysed as ProposeForAccept– 23 and 25 analysed as Counter

• Why are they not all analysed as proposals?

Page 11: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

over to Stina...

Page 12: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Discussion

Page 13: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Levels in communication

• Allwood, Clark: levels of understanding and acceptance – 1. A attends to B’s utterance– 2. A perceives B’s utterance– 3. A understands B’s utterance (grounding)– 4. A accepts or rejects (the content of) B’s utterance

(uptake)

• In GoDiS– grounding results in modifying SHARED.LU– uptake results in modifying SHARED.QUD and

SHARED.BEL

Page 14: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

GoDiS uses an optimistic approach to utterance uptake

• DPs assume their utterances and moves are accepted (and integrated into SHARED)– If A asks a question with content Q, A will put Q

topmost on SHARED.QUD

• If addressee indicates rejection, backtrack– using the PRIVATE.TMP field

• No need to indicate acceptance explicitly; it is assumed

• The alternative is a pessimistic approach– If A asks a question with content Q, A will wait for an

acceptance (implicit or explicit) before putting Q on top of QUD

Page 15: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

the Information State approach again

• Reformulating postconditions as IS update rules– requires specifying preconditions and

effects of moves/messages– requires specifying exactly when each

update is performed

• This leads to a new view of Sidner’s account

Page 16: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Mixing of optimistic and pessimistic strategies

• We saw that Sidner’s account is asymmetric regarding when different messages are assumed to be taken up– ProposeForAccept requires acknowledgement before

OpenStack is affected (“pessimism”)– But Reject, RP, AP need not be acknowledged before

affecting OpenStack (“optimism”)

• Or, to put it differently– Sidner assumes pessimistic approach to grounding

and uptake of ProposeForAccept– but optimistic approach for Reject, Accept,

RetractProposal

Page 17: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Uptake as negotiation

• the account of proposals etc. amounts to, in part, an account of utterance uptake, which all utterances are subject to– questions are seen as proposals– “My name is B C” is seen as a proposal

• It follows that Sidner views all dialogue as negotiation

• This is negotiation only in the sense that the uptake of any utterance can be negotiated

Page 18: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

A different type of negotiation

• But this is a different kind of negotiation from what’s going on in the AMEX dialogue when different flights are proposed and compared

• We make a distinction between– negotiation of uptake, and – negotiation of alternatives

Page 19: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiation of alternatives

• What distinguishes negotiative dialogue (in our sense) from other kinds of dialogue?

• suggested characterisation of negotiation: – DPs discuss several alternative solutions to some

problem before choosing one of them

• Negotiation does not imply conflicting goals – perhaps not 100% correspondence to everyday use

of the word “negotiation”, but useful to keep collaborativity as a separate dimension from negotiation

– this is also common practice in mathematical game theory and political theory

Page 20: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

What are proposals?

• questions, assertions and answers are not normally proposals

• proposals are dialogue moves on the same level as questions, assertions, instructions etc.

• as with all other moves, DPs can have an optimistic (or pessimistic) approach to grounding and uptake of proposal-moves

Page 21: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Why does Sidner analyse successive proposals as

counterpropsals?

• If they weren’t, there would be nothing indicating that they are related to each other (and 19)– “Wear something warm” is not a

counterproposal to “Take the 11:30 American flight”

– but “Take the 11:42 United flight” is; these to proposals are related

Page 22: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

A problem with counterproposals

• related proposals are analysed as counterproposals, i.e. as conflicting with previous proposals – but often alternative proposals do not

conflict with previous proposals (e.g. buying a CD)

– e.g. a travel agent is usually quite indifferent to which proposal is accepted

– there’s a difference between “laying out options” and actually arguing for one of the options

Page 23: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiable and non-negotiable issues

• Why does it seem strange to view e.g. “My name is B C” as negotiation in our sense?

• Some issues are negotiable, and some are not!– depends on activity– issues may become negotiable, e.g. if a

previous proposal is challenged (“No it’s not, I’ve met you before and your name is A D!”)

Page 24: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Conclusion

• We have analysed Sidner’s account of negotiative dialogue using the information state approach

• We need to – make a distinction between negotiation of

uptake, and negotiation of alternatives – provide a way of explaining how proposals

can be related without being in conflict– make a distinction between negotiable and

non-negotiable issues

Page 25: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Current work: an alternative account of negotiation

• Negotiation– the process of providing a solution (an answer)

to an – Issue Under Negotiation (IUN), represented as a

question

• Proposals – add answers to a set of possible answers

related to an IUN

• Uptake– is handled separately from negotiation, but – when uptake fails, negotiation may be needed

Page 26: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue
Page 27: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue
Page 28: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue
Page 29: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue
Page 30: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

counterproposals

• Counter (CO a p b q):– without rejecting p, a offers q to b

• analysed as two proposals– (PFA a b p)– (PFA a(Supports q (Not p))

• A counterproposal requires that the new proposal conflicts with a previous proposal

• In this way, Sidner can distinguish unrelated proposals from related proposals

Page 31: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiation vs. acceptance

• Allwood, Clark: levels of understanding and acceptance – 1. A attends to B’s utterance– 2. A percieves B’s utterance– 3. A understands B’s utterance (grounding)– 4. A accepts or rejects B’s utterance

• Sidner and others sees negotiative dialogue as proposals and acceptance/rejections

• this means that all dialogue is negotiative

– all assertions (and questions, instructions etc.) are proposals

Page 32: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiation vs. acceptance

• But some dialogues are negotiative in another sense,

–by explicitly containing discussions about different solutions to a problem, and finally deciding on one

–Negotiation in this sense is not Clark’s level 4

• proposals are dialogue moves on the same level as questions, assertions, instructions etc.

• There’s a difference between – accepting a proposal-move, and thereby adding a possible solution, and

– accepting a proposed alternative as the solution

Page 33: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Two senses of “negotiation”

• Negotiation in Sidner’s sense– A: I’m going to Paris[propose P]– B(1): OK, let’s see... [accept P]– B(2): Sorry, we only handle trips within Sweden

[reject P]

• Negotiation in our sense– U: flights to Paris on september 13 please – S: there is one flight at 07:45 and one at 12:00

[propose two flights]– U: what airline is the 12:00 one [ask]– S: the 12:00 flight is an SAS flight [answer]– U: I’ll take the 12:00 flight please [accept flight]

Page 34: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Remedies

• distinguish utterance acceptance from “real” negotiation

• an account of counterproposals which can account for the fact that– a new proposal may concern the

same issue as a previous proposal,– without necessarily being a

counterproposal

Page 35: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiativity

• Negotiation is a type of problem-solving • suggested characterisation of negotiation:

– DPs discuss several alternative solutions to some problem before choosing one of them

• Negotiation does not imply conflicting goals – perhaps not 100% correspondence to everyday use

of the word “negotiation”, but useful to keep collaborativity as a separate dimension from negotiation

– this is also common practice in mathematical game theory and political theory

Page 36: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Negotiation tasks• Some factors influencing negotiation

– distribution of information between DPs – distribution of responsibility: whether DPs must commit jointly

(e.g. Coconut) or one DP can make the comittment (e.g. flight booking)

• We’re initially trying to model negotiation in flight booking– sample dialogue

• U: flights to paris on september 13 please• S: there is one flight at 07:45 and one at 12:00• U: what airline is the 12:00 one• S: the 12:00 flight is an SAS flight• U: I’ll take the 12:00 flight please

– Sys provides alternatives, User makes the choice– Sys knows timetable, User knows when he wants to travel etc.

Page 37: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Degrees of negotiativity

• non-negotiative dialogue: only one alternative is discussed

• semi-negotiative dialogue: a new alternative can be introduced by altering parameters of the previous alternative, but previous alternatives are not retained

• negotiative dialogue: several alternatives can be introduced, and old alternatives are retained and can be returned to

Page 38: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Semi-negotiative dialogue

• Does not require keeping track of several alternatives

• Answers must be revisable (to some extent)

• Example of limited semi-negotiative dialogue– Swedish SJ system (Philips): ”Do you

want an earlier or later train?”

Page 39: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Issues Under Negotiation i (fully) negotiative dialogue• IUN is question e.g. what flight to take• In an activity, some questions are

marked as negotiable issues– other questions are assumed to be non-

negotiable, e.g. the user’s name in a travel agency setting

• Each IUN is associated with a set of proposed answers– Needs a new IS field: SHARED.IUN of type

assocset(question,set(answer))

Page 40: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Alternatives in negotiation

• Alternatives are possible answers to an IUN• a proposal has the effect of introducing a new

alternative to the Issue Under Negotiation• An IUN is resolved when an alternative is

decided on, i.e. when an answer to it is accepted

• In some cases, the answer to IUN may consist of a set of alternatives (e.g. when buying CDs)

Page 41: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Example

• IUN is ?x.sel_flight(x) (“which is the chosen flight”?)

• A: flight to paris, december 13– answer(dest(paris)) etc.;

• B: OK, there’s one flight leaving at 07:45 and one at 12:00– propose(f1), propose(f2),– answer(dep_time(f1,07:45)), answer(dep_time(f2,12:00))

• ....• A: I’ll take the 07:45 one

– answer(sel_flight(X), dep_time(X, 07:45)),– after contextual interpretation: answer(sel_flight(f1))

Page 42: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

PRIVATE =

PLAN =

AGENDA = { findout(?x.sel_flight(x)) }

SHARED =

findout((?x. ccn(x))book_ticket

COM = dep_time(f1,0745),dep_time(f2,1200)dest(paris), ...

QUD = <> LM = {propose(f1), propose(f2),

answer(dep_time(f1,07:40),...}

BEL = {flight(f1), dep_time(f1,0745), ... } TMP = (same structure as SHARED)

IUN = < ?x.sel_flight(x f1, f2 } >

B: OK, there’s one flight leaving at 07:45 and one at 12:00

Page 43: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Issues Under Negotiation: Summary

• proposed alternatives can concern the same issue, without conflicting

• not all issues are negotiable: depends on the activity

• a formal account in line with the use of Questions Under Discussion in GoDiS

Page 44: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

Future work

• implementation• exploring negotiation in other

domains• relating IUN to global QUD; are

they both needed? • dealing with conflicting goals

Page 45: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue

CD dialogue

– U: Records by the Beach Boys– S: You can buy Pet Sounds, Today, or Surf’s

Up– U: Which is the cheapest?– S: Pet Sounds and Today are both 79:-,

Surf’s Up is 149:-– U: Hmm... I’ll get Pet Sounds and Today

Page 46: Sidner’s artificial negotiation language. Sidner: an artificial discourse language for collaborative negotiation Formal account of negotiative dialogue