Wednesday, 23 September 2009

62, Agents that reason and negotiate by arguing

A seminal piece of work ('Agents that reason and negotiate by arguing', 1998, Simon Parsons, Carles Sierra, Nick R Jennings). Finally went through it after 3 years! Need to compare it with my (A)ABA-based ABN framework.

Nice examples of 'negotiation' dialogues (proposal, critique, counter-proposal, explanation) in Section 2.1. Would be nicer if they can be *generated*.

Can't see how the stuff in Sections 3-5 (agent architecture etc) links to the negotiation protocol in Section 2.2.

No concept of 'assumptions' or the ability for agents to reason (make decisions/utterances) despite incomplete information. We allow for this.

No implementation, though it is claimed there is a clear link between the formal (agent architecture) model and its practical instantiation. We support our framework with an implementation.

The framework is based on an ad hoc system of argumentation. Arguments can be classified into rough classes of acceptability, but this is not enough to determine the acceptability of arguments. Also, only inconsistency *between* agents is considered; inconsistency that arises within an agent is not considered/handled. We base our framework on a general argumentation system (AABA) for which the argument acceptability semantics are clearly defined.

This is what I intend to include in the Related Work section of my forthcoming "argmas09paper":
In [61] a negotiation language and protocol is presented that allows for the exchange of complex proposals which can include compelling arguments for why a proposal should be adopted. Whilst [61] does not concentrate on the way in which arguments are built and analysed, the work is extended in [62] by indicating how argumentation can be used to construct proposals, create critiques, provide explanations and meta-information. However, even in [62], further expansion is required for agents to be able to generate and rate arguments, and for any kind of implementation to be produced. In particular, the acceptability classes used in [62] to rank arguments are not sufficient to resolve inconsistencies that may arise within and between agents. A more fine-grained mechanism is required. We use an existing argumentation framework (AABA) for this purpose, that is able to build and determine the acceptability of arguments, even as the knowledge bases of agents change over time (as a result of the dialogues). The AABA framework also allows agents to make assumptions, enabling agents to make decisions even despite incomplete information. Lastly, we supplement our formal model with an implementation.

Friday, 18 September 2009

61, A framework for argumentation-based negotiation

Old paper ('A framework for argumentation-based negotiation', 1998, Carles Sierra et al) but some really good ideas for using negotiation (offer, request, accept, reject and withdraw acts) with persuasion (appeal, threaten and reward acts). However, like most other papers, not fully worked out / generative.

To its advantage, the framework is for multi- (i.e. more than two) agent settings: "Deals are always between two agents, though an agent may be engaged simultaneously in negotiation with many agents for a given deal."

The 'attacks' relationship between "argument pairs" (i.e. argument Arg supporting a formula p) is assumed to be a primitive notion, though however argument pairs are not assumed to be primitive notions. Defining such an 'attacks' relationship could get messy!

An authority relation (between agent roles) is used as the mechanism for comparing arguments, i.e. who puts forward an argument is as important (maybe more so) than what is said. Potentially this doesn't quite make sense in an argument evaluation sense - depends what is meant by "argument". See last paragraph of Section 4.1.1 of 'Argumentation-Based Negotiation' (1998).

Wednesday, 16 September 2009

60, Dialogue games that agents play within a society

Went through this journal paper ('Dialogue games that agents play within a society', 2009, Nishan C. Karunatillake et al) and the accompanying technical report ('Formal Semantics of ABN Framework', 2008, Nishan C. Karunatillake et al) following going through the main author's thesis. Questions similar to the thesis (see 59). In addition, this is what I plan on including in my forthcoming (argumentation-based negotiation social optimality) paper...

"... The argument-based negotiation framework of [60] is supplemented with a number of concrete negotiation strategies which allow agents to exchange arguments as part of the negotiation process. The example scenario/context considered allows for multiple (more than two) agents. However, contrary to our approach, the semantics of arguments is not considered. Instead, the focus is on using argumentation as a metaphor for characterising communication among agents. Also, deals involving more than two agents are not possible, as is required in our resource allocation setting in order to reach optimal allocations. ..."

Tuesday, 15 September 2009

59, Argumentation-Based Negotiation in a Social Context

This ('Argumentation-Based Negotiation in a Social Context', Nishan C. Karunatillake, 2006) is the third thesis I have gone through now. I really liked, and read fully, the first three chapters. Quite a few question marks penned when going through the protocol and operational semantics in Chapter 3 - questions regarding the method of arguing (challenging and asserting). Apparantly these questions are addressed in a later journal paper and technical report, which I will go through now. It is worth noting that the negotiation/argumentation strategies defined in later chapters are far (in my opinion) from using the full capacity of the framework defined in Chapter 3.

I really liked the scenario presented in Chapter 4.1. Very good - lots of scope for play/conflicts/etc. Though however, the system model following this in Chapter 4.2 becomes very mathematics/number-based. The "argue" method doesn't really argue. It is quite similar to my "argmas09" paper - the responding agent provides a reason for rejection which the proposing agent incorporates into its knowledge-base for future proposals.

The strategies defined in Chapter 5.1 for the experimentation (empirical analysis) I thought were rather random - seems to be no justification at all for these strategies over any other. I couldn't quite see the general applicability of the results presented in Chapter 5.3 beyond the specific application setting of this paper. I skipped/glossed over to the summary.

Chapter 6 proceeds by simplifying the experimental scenario defined in Chapter 4.1 for the argumentation strategies to be defined in this chapter. Really not clear what the defeat-status computation (to determine the validity of a claim/premise) used in these strategies is. Also, I couldn't quite work out how the argumentation was done in the strategies - not clear what is being challenged/asserted. This chapter could have done with some examples.

Friday, 4 September 2009

Karunatillake's Thesis - Chapter 3

My first set of questions sent to Nishan C. Karunatillake regarding chapter 3 of his thesis:
Thanks for the response.

Sorry if my questions are really technical/low-level. It's just that I am developing a model for multi-agent argumentative negotiation, I came across your work and I am trying to see if my model could map to your language, protocol etc. I have not read beyond Chapter 3 yet, so I apologise if some of my questions are answered later. Please let me know if that is the case.

I'll try ask only a few questions at a time, as occurred to me whilst working sequentially through the chapter, so as not to bombard you and in case questions that occurred later become clear.

Here goes...

- Looking at the 'Challenge' communicative predicate described as part of the protocol (page 79), one of the pre-conditions for challenging a rejection (or assertion) is that there be no 'reason' for the rejection (assertion respectively) in the agent's knowledge-base. Could it not be possible (in the context of this thesis) that there is a reason for rejecting, as well as a (counter-)reason for not rejecting in the agent's knowledge-base at the same time? Or is it meant here that 'the reason for rejecting' is stronger than 'the reason for not rejecting' in an argumentative semantic/heuristic sense?

- Also, the only valid response following a Challenge is for the other agent to Assert the justification (H). Could it not be possible (in the context of this thesis) for the agent that is to respond to *not* have a justification? What if the agent has no justification (if possible), how would the dialogue then proceed? What is meant by justification - that the justification is 'valid' according to the agent's knowledge-base, or is justification here meant more simply in a kind of deductive sense?

Hope that makes sense.
The response...
I see. I reckon it should be not that difficult. You may need to define your own domain language (one that describes your context or argumentation schema/modal). Then link that domain language with the comm. language and protocol defined in the thesis. If you wish to do this formally, then, you might need to alter some of the rules of the axiomatic and operational semantics to suit your application.

OK. Before I get to your specific question, I would recommend you to read the AIJ paper, which followed this thesis (instead of the thesis). This is better than reading the version in the thesis, as I introduced some minor alterations afterwards to both the axiomatic semantics and the operational semantics. Since AIJ doesn't allow on-line appendices we also published the complete semantics as a different technical paper. The links to both these documents are:

AIJ paper -
Tech report -

Now to your question.

In defining the comm. language I used a notion similar to operation overloading. In other words, certain language predicates are used for more than one, similar, but not identical, purpose. The objective is to limit the number of language predicates and not unnecessarily duplicate. For instance both the proponent and respondent can use the Open-Dialogue predicate, but they would have different pre- and post- conditions. Thus, the distinction becomes clear at the semantics level (both axiomatic and operational semantic level) and not necessarily at the syntax level. Both Challenge and Assert are used this way. In particular, Challenge locution can be used for two purposes (i) by the proponent to challenge the reason for rejecting a proposal (ii) by either the proponent or respondent to challenge the reason for a particular assertion. This is also there in the use of Assert, Close-Dialogue locutions.


As mentioned above, Challenge is used for two purposes. This question, as I understand it, is related to the first purpose, Challenging the reason for rejection (the second being Challenging a particular Assertion)

In more detail, the respondent may chose to either accept a particular proposal or reject it. This decision is based on the respondent's R2 decision mechanism (see page 951 on the AIJ paper or page 85 on the thesis).

Yes, you are right the respondent may have zero or more reasons for accepting a particular proposal and also zero or more reasons for rejecting. The decision is based on which is the more compelling reason.

My agents are computational agents who attempts to maximise utility. So, they calculate what is the cost vs benefit in this proposal. If the benefit is more accept otherwise reject. From an argumentation sense this can be if the reason(s) for accepting is more stronger than the reason(s) for rejecting accept otherwise reject.

So when the proponent Challenges (the reason for rejecting a particular proposal), the respondent will pass on its reason(s). It would say it was compelled to reject because of this and this reason (to reject) was much stronger than this and this reason (to accept).

If this reason is in conflict with the Proponent's knowledge-base, then the dialogue may shift an persuasive dialogue trying to correct any inconsistencies in each others reasons (proponents reasons why the proposal should be accepted vs respondents reasons on why it was rejected).


Yes, the only valid response to a Challenge locution is an Assert. See also Figure 4 (page 948 in the AIJ) and in more detailed level Figure B1 (page 979 in the AIJ).

Case 1: If the challenge was a challenge the reason for reject, then that reason is asserted. In my context, it would say I believe the benefit of the proposal due to this and this reason is this, but the cost of accepting this proposal due to this and this reason is this. So cost is higher than the benefit. Thus, the reason for rejection.

Case 2: If the challenge was the justification for a particular assertion he has made, then the reason behind such an assertion will be returned. This follows the schema in the form of deductive equations (5) and (6) in page 943 if the AIJ.

Yes, theoretically the reason can be null.

In the first case, may simply mean, of reason for rejection, I don't have any reason to accept (no reward), so I rejected. It doesn't make much complication. The proponent will analyse why it thinks it should accept (proponent's reason, if he have any) vs this given null reason from the respondent. If there is a conflict, argue that (why for instance he may have misunderstood the reward) or give an alternative proposal with a reward.

In the latter case, may mean, I don't have a reason for asserting X, but I believe X to be true. Again the other party will compare this with its own reason (why X should be false) and will either argue to correct the oponents' knowledge or correct its own knowledge.

Hope this clarifies things a bit.
Will continue skimming through the thesis anyway, despite the suggestion otherwise, before moving on to check out the journal paper and technical report.