Argumentation¶
Overview¶
Brief overview:
Dung’s abstract framework: set of arguments \(\mathcal{A}\) and an attack relation \(\mathcal{R} \subseteq \mathcal{A} \times \mathcal{A}\). Several semantics are defined which give the sets of acceptable arguments (often called extensions). The arguments themselves and the attack relation are left abstract.
Extensions are “binary”: an argument is either in or out. To generalise this people have considered labellings, which assign each argument a label. A common set of labels is \(\{\texttt{in}, \texttt{out}, \texttt{undec}\}\).
Argumentation formalisms instantiate the abstract framework by constructing arguments and attacks, e.g. from a knowledge base. Potentially see Instantiating abstract argumentation with classical logic arguments: Postulates and properties for some well-known formalisms. This is also called structured argumentation.
Once arguments are constructed and acceptable arguments found, conclusions can be drawn based on the structure of the acceptable arguments (?). This is how argumentation can be used for non-monotonic reasoning: construct arguments from a knowledge base of sentences (in some logical language), find acceptable arguments, draw conclusions and convert back to sentences. These are then the sentences that are entailed by the knowledge base (something along those lines anyway).
Relevant extensions to the basic framework include the following.
Bipoloar argumentation¶
As well as attacks between arguments, one can also consider arguments that support each other
This notion of support can be independent of the attack relation. Contrast this with Dung’s framework, where \(A\) supporting \(B\) means that \(A\) attacks some attacker of \(B\). There are examples in [CLS05b] where the this is not sufficient and two independent notions are required.
Graded/gradual/ranked semantics¶
Rather than the binary situation or accepted/not-accepted, these semantics give a ranking to the arguments (i.e. the strongest to the weakest)
Some work is extremely similar to our truth discovery work, where nodes in the argumentation graph are iteratively assigned scores based on the scores of their neighbours
Axioms have also been considered for ranked semantics (see the email to Richard from Srdjan for some papers)
Fuzzy argumentation frameworks are similar in that sets of arguments can be accepted to varying degrees [JDCV08] (although in the fuzzy case the attack relation is fuzzy too)
More reading required here
Trust and argumentation¶
Argumentation is used to reason about trust and belief in [AD14] (see notes on the paper)
While not directly related to trust, there is work on argumentation where the arguments themselves are already ranked in order of “strength” or “preference”. This could be related to the case where information comes from sources of differing reliability or trust levels.
The above is done explicitly in [PTS+11]. In that paper, trust between agents leads to belief values in propositional formulae, from which arguments are constructed. Arguments are ranked based on the belief in their support sets.
More reading required here
Truth discovery and argumenation¶
The intro example of the paper uses a sort of informal argumentation approach where we reason step-by-step about why \(f \fle g\). It would be good to formalise the type of arguments in play so that we can actually form an argumentation framework and use argumentation semantics to get the accepted arguments, from which total preorders could potentially be derived.
Things to do include:
Figure out the form of the arguments involved and how the attack or support each other
Figure out how trust will come into it.
Focus for now on the simple example in the paper, and try to get an argumentation framework and derive some conclusions.
Think about where a TD operator can correspond to semantics in the argumentation context. Initially we could consider just binary TD operators, where the source and facts rankings have just two levels.
In the case of ranked semantics, there are axioms in the literature very similar to our ones for TD. If a TD operator can be cast as ranked semantics, then the axioms should be compared.
Initial (separate) ideas for arguments are as follows:
Arguments of the form ‘\(s\) should be trusted’ and ‘\(f\) should be believed’.
Source and fact arguments mutually support each other whenever \(s\) claims \(f\).
Arguments for distinct conflicting facts mutually attack each other
Could also have source arguments attacking fact arguments which conflict with their claims. I.e if \(a{\mathcal{R}_{sup}}b\) and \(b\mathcal{R}_{att}c\) then we add \(a{\mathcal{R}_{att}}c\).
Take the approach of [AD14] and formulate trust and belief relationships in a logical language. Then arguments are built from the knowledge base representing our TD network, and argumentation is performed.
Take a fuzzy approach. See the interactive demo.