Sidner’s artificial negotiation language 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 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 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 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 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 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? AMEX dialogue 0 BC My name is B C and I would like to plan a trip 1 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 there 21 TA yes 22 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 wash 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. 26 BC oh that sounds good 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? 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? over to Stina... Discussion 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 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 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 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 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 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 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 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 proposalmoves 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 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 Negotiable and nonnegotiable 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!”) 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 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 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 Negotiation vs. acceptance • Allwood, Clark: levels of understanding and acceptance – – – – 1. 2. 3. 4. A A A A attends to B’s utterance percieves B’s utterance understands B’s utterance (grounding) 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 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 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] 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 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 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: S: U: S: U: flights to paris on september 13 please there is one flight at 07:45 and one at 12:00 what airline is the 12:00 one the 12:00 flight is an SAS flight 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. 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 Semi-negotiative dialogue • Does not require keeping track of several alternatives • Answers must be revisable (to some extent) • Example of limited seminegotiative dialogue – Swedish SJ system (Philips): ”Do you want an earlier or later train?” 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 nonnegotiable, 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)) 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) Example • IUN is ?lx.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)) B: OK, there’s one flight leaving at 07:45 and one at 12:00 AGENDA = PLAN = PRIVATE = { findout(?lx.sel_flight(x)) } findout((?lx. ccn(x)) book_ticket BEL = {flight(f1), dep_time(f1,0745), ... } TMP = (same structure as SHARED) IUN = < ?lx.sel_flight(x){ f1, f2 } > SHARED = COM = dep_time(f1,0745), dep_time(f2,1200) dest(paris), ... <> LM = {propose(f1), propose(f2), answer(dep_time(f1,07:40),...} QUD = 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 Future work • implementation • exploring negotiation in other domains • relating IUN to global QUD; are they both needed? • dealing with conflicting goals 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