An Introduction to Abstract Argumentation Dr. Pierpaolo Dondio, DIT – School of Computing 2012/2013 1 Agenda » Introduction » What is argumentation theory? » Abstract Argumentation Frameworks (Dung 1995) » Stable, Grounded and Preferred Semantics » Instantiating Abstract Argumentation » Applications » Probabilistic and Uncertain Argumentation 2 What is argumentation Theory » the interdisciplinary study of how conclusions can be reached through logical reasoning » Key Questions: » How arguments are built? » How humans negotiate, discuss, argue? » Who wins? i.e. how can we identify acceptable valid arguments and discard invalid? » We focus on AI developments » Computational Logic & Non-monotonic reasoning » Abstract Argumentation 3 Nonmonotonic logic » Standard logic is monotonic: » If S |- ο¦ and S ο S’ then S’ |- ο¦ » But commonsense reasoning is often nonmonotonic: » John is an adult, Adults are usually employed, so John is presumably employed » But suppose also that John is a student and students are usually not employed … » We often reason with rules that have exceptions » We apply the general rule if we have no evidence of exceptions » But must retract our conclusion if we learn evidence of an exception Source of non-monotonicity » » » » » » Exceptions Moral Rules Legal Rules (False) Generalizations Limited knowledge … 2012/2013 - DT228/4 5 Some nonmonotonic logics » » » » Default logic (Ray Reiter) Logic programming (Robert Kowalski) … Argumentation logics » Argumentation Logics, and in particular Abstract Argumentation Frameworks studied here, have the same expressive power as Default Logic Argumentations are nonmonotonic Paul is a good at Maths A Paul is not good at Maths B Paul got 90% in his final Maths test Exam result is not a valid evidence C Exam was very easy this year If you get high marks in a Maths test you are good at Maths Exam result is not a valid evidence Paul was never able to help me with my Maths homework What Mary said is not trustworthy D E Mary said Paul copied the exam Mary is a well-known layer Abstract Argumentation Frameworks A C B D E (Dung 1995) An argumentation framework is a pair π΄πΉ = < π΄π, π > where π΄π is a set of arguments, and π is a binary relation on π΄π, i.e. π ο π΄π × π΄π. » For two arguments A,B, the meaning of π (π΄, π΅) is that A represents an attack against B. The Key Problem » I want to say something about arguments : » Which arguments are acceptable? Which are not? » When to abstain? » A argumentation semantics sets the rules (postulates) used to answer the above questions » In the labelling approach, we label each argument » IN – Argument is accepted » OUT – Argument is rejected » UNDEC – Nothing can be said on argument status 2012/2013 - DT228/4 9 Starting Point » Given π΄πΉ = < π΄π, π > we define a labelling function as a total function over π΄π: πΏ: π΄π → ππ, ππ’π‘, π’ππππ » We also define the ππ(πΏ) = π ∈ π΄π πΏ π = ππ } » Starting basic idea. We label all arguments according to these simple rules: 1. An argument in each labelling is either IN or OUT 2. An argument is ‘in’ iff all arguments defeating it are ‘out’. 3. An argument is ‘out’ iff it is defeated by an argument that is ‘in’. 2012/2013 - DT228/4 10 Example » A: Mark is good at Math, he got 90%! » B: John said Mark copied the test! » C: John is a well-known layer! A B C » Our rule works fine. We expect » » » » 2012/2013 - DT228/4 A in B out C in This is called reinstatement; A is reinstated by C. 11 Example 2 » D: Sarah says that John is honest! A B C D » And now? The graph is cyclic! Our basic rule does not work anymore! » Multiple solutions: 2012/2013 - DT228/4 A B C D A B C D A B C D 12 Complete Semantics » Grounded (Pollock, Dung) » Preferred (Dung) » Stable (Dung, Caminada) » Many more.. Semi-stable, CF2.. 2012/2013 - DT228/4 13 Complete Semantics: Conflict-free A set S of arguments is said to be conflict-free if there are no arguments A,B in S such that A attacks B . B S A Arg (A ο S 2012/2013 - DT228/4 & attack(A,B)) =>BοS 14 Complete Semantics - Admissibility An argument A is admissible with respect to a set S if S can defend A with an argument B ο S against all attacks C on A. We want to accept arguments for which there is an admissibility set A S B C (A ο Arg & attacks(C,A)) 2012/2013 - DT228/4 15 Complete Semantics » It accepts all the conflict-tree and admissible arguments » In general multiple labelings are valid » It can be proven that the following labelling rules exactly compute the complete semantics » if A is labelled in then all attackers of A are labelled out » if all attackers of A are labelled out then A is labelled in » if A is labelled out then A has a attacker that is labelled in, and » if A has a attacker that is labelled in then A is labelled out » A is labelled undec iff at least one attacker is undec and thre is no attacker labelled in 2012/2013 - DT228/4 16 Complete Semantics » Many sub-semantics have been defined over a complete labeling. Let π΄πΉ = (π΄π , π ) Grounded » L is a complete labellings such as undec(L) is maximal w.r.t. to set inclusion Preferred » L is a complete labellings such as in(L) is maximalw.r.t. to set inclusion Stable » L is a complete labelling such that undec(L) = ∅ 2012/2013 - DT228/4 17 Hierarchies of Semantics (Caminada) 2012/2013 - DT228/4 18 Example » Grounded: all undecided » Stable: IN={b,d} ; OUT={a,c,e} » Preferred: » IN={b,d} ; OUT={a,c,e} » IN={a} ; OUT={b} ; UNDEC={c,d,e} 2012/2013 - DT228/4 19 The example of floating assignment » Grounded: all undecided A » Preferred: » IN={b} ; OUT={c,a} » IN={c} ; OUT={b,a} B C » Stable: same as preferred 2012/2013 - DT228/4 20 The Nixon Diamonds & 3-Cycle » Grounded: undec » Preferred: » IN={a}, OUT={b} » IN={b}, OUT={a} C B » Stable: same as preferred » Grounded: undec » Preferred: undec » Stable: none 2012/2013 - DT228/4 A B C 21 Credulous vs Sceptical Acceptability » After each labelling, we are left with three set of arguments In general, there are multiple labelings (one for grounded, maybe many for preferred or stable) How can I accept arguments? » Credulous acceptance. » If there is at least one labelling where argument A is labeled IN, accept it » Sceptical acceptance » An argument must have the same labels in all the labelings » Grounded acceptance implies sceptical preferred or stable acceptance 2012/2013 - DT228/4 22 Instanciating an AA » Nothing is said about argument internal arguments structure » Arguments as modus-ponens rules π΄, π΄ → π΅ β’ π΅ » How can these rule be attacked? » Rebuttals: attack π΅ » Undercutting: attack π΄ → π΅ » Undermining : attack π΄ » The red light example » If an object looks red, it is red » What if the object is illuminated by red light? 2012/2013 - DT228/4 23 Arguments as logical consequences » propositional language πΏ whose atoms is a finite set {a, b, c … } and its connectives are {∧,∨, →, ¬}. » The symbol β’ means logical consequence. » for π ⊆ πΏ and a formula πΌ in πΏ, π, πΌ is an argument iff π β’ πΌ and it does not exits π ′ ⊆ π so that π ′ β’ πΌ » Given argument π = π, πΌ , we call π the support of π and πΌ the claim of π. » Given two arguments π and π, we define rebuttal and undercut attacks in the following way: » π rebuts π if πππππ(π) β’ ¬πππππ(π) » π undercuts π if there is π ⊆ π π’πππππ‘(π) such that πππππ(π) ≡ ¬ ∧ π 2012/2013 - DT228/4 24 Some Applications » Legal Reasoning (Prakken) » Computational Trust » Dondio (2007 – 2013, Phd) » Multi-Agents Conflict Resolution » Decision Support Systems » Healtchare (Longo 2012) » … many more 2012/2013 - DT228/4 25 Trust as a form of Argumentation PP+ + - + Sim+ R- = A1 = = A3 A2 » » » » » π·π·+ : if agent has high level of past performance, then trust it πΊππ+ : if agent is similar to Carol, then trust him πΉ− : if agent has low reputation, then distrust him π¨π : if task context is new to the agent, then invalidate argument PP π¨π : if past performance are high an reputation is low, then prefer past performance » π¨π βΆ if past-performance are out of date, then invalidate argument PP 2012/2013 - DT228/4 26 Problems with Abstract Argumentation » Nothing is said about arguments. There is the danger to model impossible situations or derive useless conclusions » Too coarse! » Many times, you are left with no arguments or multiple labelings and nothing to choose about » Arguments are perceived with difference strength, importance, maybe based on their likelihood or certainty level or subjective preferences.. » How can we build a numerical argumentation? 2012/2013 - DT228/4 27 Towards Argumentation with Strengths » First attempt: Pollock » » » » Arguments are modus ponens rules Two premises: fact and assumption π΄, π΄ → π΅ β’ π΅ Strength ππ΄ , ππ΄→π΅ , ππ΅ are numbers in [0,1] Strength of a conclusion – Weakest Link: ππ΅ = πππ(ππ΄ , ππ΄→π΅ ) » If C attacks B, B strength is ππ΅ = πππ₯(ππ΅ − ππΆ , 0) » Multiple attacks. No accrual, chose the max only » What is this strength? Ad-hoc? » Rejection of probability, is this justified? A B 2012/2013 - DT228/4 C D 28 Weighted Argumentation » Abstract Argumentation with weights » Inconsistency Tolerance (Dunne 2009) » Baroni / Toni 2013 proposal (ordinal functions for attack and support), Pollock-like » Same criticism: what’s the meaning of the numbers used to quantify argument importance? » Social Argumentation » Weights (importance) attached to each arguments come form a voting systems (online forums etc..) 2012/2013 - DT228/4 29 Probabilistic Argumentation Li (2011), Hunter (2012), Dondio (2012) » Real world arguments are clearly affected by uncertainty. » Probabilistic uncertainty is well studied (probability calculus) and clear understood (maybe….) » Allow arguments to be probabilistic in nature. Source of probability: » Randomness, stochastic processes » Statistical information » Subjective Beliefs » Example: If you have fever, 80% is flu 30 Probabilistic Argumentation » A PAF is a tuple (AF,P) where » AF = (Ar,R) is an abstract argumentation framework and » π: 2π΄π → [0,1] is a joint probability over arguments. If statistical independence holds, π is a scalar function: π: π΄π → [0,1] 0.5 0.7 0.4 ππ¨ ππ© ππͺ 31 How to compute a PAF? » We need to find the probability that an argument is labelled IN, OUT, UNDEC » Probabilistic arguments implies multiple scenarios (2π ) each obtained by assuming that each argument claim hold or not. » Each scenario has its own probability (computed using P) » Each scenario corresponds to a sub-graph of the argumentation framework 32 Notation for group of sub-graphs » π΄π΅ = 2 sub-graphs, all the sub-graphs containing π and not π » π΄ + π΄π΅πΆ = 5 sub-graphs not containing π or all the sub-graphs containing π, π, π togheter » π΄π΅πΆ = 1 sub-graph, π π΄π΅πΆ = π π π π π(π) 33 Computing PAF » We can label arguments in each sub-graph, assigning the OUT label if the argument is not present in the sub-graph (defeated by its own)! » We then group all the sub-graphs where a generic argument π is labelled ππ , ππ’π‘, π’ππππ » We call these sets π΄πΌπ , π΄πππ , π΄π » We compute the probabilities of these sets summing up the probabilities of all the sub-graphs in each set. 34 Brute Force Brute force approach for π¨π°π΅ , π¨πΆπΌπ» , π¨πΌ Given ππ΄πΉ = ( π΄π, π , π). Chose argument π in π΄π for each sub-graph π of πΊ = (π΄π, π ) assign a label π(π) to π in π using the chosen semantics if π π = ππ add π to π΄πΌπ if π π = ππ’π‘ add π to π΄πππ if π π = π’ππππ add π to π΄π π π΄πΌπ , π π΄πππ , π π΄π are computed using π and they are the probabilities we were looking for 35 2-Layer Approach » π π is not π ππΌπ » π π is the probability that argument a claim holds in isolation » π ππΌπ is the probability that the argument claims holds after the argumentation process 2012/2013 - DT228/4 36 Example / Grounded Case Scenario (Sub-graph) A U B U C U U U O I O I I O O O O I O I O O O I O O O P(s) » π π΄πΌπ = π π 2 + π π 3 = 0.25 » Not a very clever approach (w.r.t. computation) » We can skip many scenarios and reduce the problem space 2012/2013 - DT228/4 37 Notation for Grounded labelling » π΄πΉ = π΄π, π , π΄π = π, πΊ =< π΄π, π >, π» is the set of all the sub-graphs of πΊ » Under grounded semantic there is one unique labelling for each sub-graph π called β π (π). Sets of interests: π΄πΌπ = π ∈ π»: π ∈ ππ(β π (π)) ; π΄πππ = π ∈ π»: π ∈ ππ’π‘(β π (π)) π΄π = π ∈ π»: π ∈ π’ππππ(β π (π)) π΄πΌπ = π΄π΅ (2 sub-graphs) π΄πππ = π΄ + π΄π΅πΆ (5 sub-graphs) π΄π = π΄π΅πΆ (1 subgraph) 2012/2013 - DT228/4 38 Preferred Case » There are multiple labelings for each sub-graph » An argument can be IN and OUT in the same scenario (but in different labelings) » Solution 1: give a probability for credulous acceptance (possibility) and 1 for sceptical acceptance (necessity) » Solution 2: use principle of indifference, splitting the probability of a single sub-graph among all the valid preferred labeling 2012/2013 - DT228/4 39 Preferred Sets » π΅ππ π = set of labelings for a scenario s » Preferred credulous sets: ππ+ » π΄πΌπ = π ∈ π: ∃ β ππ π ∈ π΅ππ π βΆ π ∈ ππ β ππ , π ππ+ » π΄πππ = π ∈ π: ∃ β ππ π ∈ π΅ππ π βΆ π ∈ ππ’π‘ β ππ , π ππ+ » π΄π = π ∈ π: ∃ β ππ π ∈ π΅ππ π βΆ π ∈ π’ππππ β ππ , π » While the skeptical sets are: ππ− ππ ππ− ππ ππ ππ » π΄πΌπ = π΄πΌπ β π΄πππ βπ΄π ππ ππ » π΄πππ = π΄πππ β (π΄πΌπ βπ΄π ) ππ− » π΄π 2012/2013 - DT228/4 ππ ππ ππ = π΄π β (π΄πππ βπ΄πΌπ ) 40 Preferred Case ππ+ ππ+ » π΄πΌπ = π΄π΅ + π΄π΅πΆ (note that π΄π΅πΆ also in π΄πππ ) ππ+ » π΄πππ = π΄ + π΄π΅πΆ + π΄π΅πΆ (6 scenarios) ππ− » π΄πΌπ = π΄π΅ ππ− » π΄πππ = π΄ + π΄π΅πΆ ππ− » Necessity is π(π΄πΌπ ) = 0.25 ππ+ » Possibility is π(π΄πΌπ ) = 0.375 » Indifferent probability π 2012/2013 - DT228/4 π΄ππΌπ = π π΄π΅ 1 + P(ABC) 2 = 0.3125 41 Brute force is not efficient » w.r.t. computational time » w.r.t. the length of the expression of π΄πΌπ » 56 sub-graphs in π΄πΌπ » It can be reduced to 3 clauses only π΄πΌπ = π΄π΅π· + π΄π΅πΈ π· + π΄π΅πΈπΊ π· » Wasted of computational time. Some cases do not need to be comptued / recomputed » Idea: assign sets of sub-graphs at each computational step » Recursive and decision-tree-like argument (Dondio 2013) 42 A Recursive Algorithm (grounded) » It decomposes the grounded semantics computation. It applies the rules of a complete labelling + maximise undec. » The algorithm. Visit the transpose graph from root π and imposes the following two rules: 1. π΄πΌπ = π΄ ∩ π1 πππ ∩ π2 πππ ∩ β― ∩ ππ πππ ππ = ππ‘π‘ππππππ ππ π 2. Aπππ = π΄ ∪ π΄ ∩ X1 πΌπ ∪ X2 πΌπ ∪ β― ∪ Xπ πΌπ » Terminal conditions » if π₯π is required to be in then ππ πΌπ = ππ » if node π₯π is required to be out then ππ πππ = ππ » Cycles » If a cycle is detected, end the recursive step and return ∅ » Some optimizations 43 Recursive Algorithm / Example Node, Constraint label 1↓ 2↓ 3= 4= 5↑ 6↑ Parent Comment List is present and =OUT is out when b is not present or exists and = in or = in =IN when is present and =OUT. Cycle with , is initial 44 Some Optimizations 1. Generate non-overlapping solutions π΄ + π΅ + πΆ + β― can be rewritten as disjoint sets in the form π΄ + π΄π΅ + π΄ π΅πΆ + β―, condition 2 is rewritten as: π΄πππ = π΄ ∪ π΄ ∩ π1 πΌπ ∪ π1 πΌπ π2 πΌπ ∪ π1 πΌπ π2 πΌπ π3 πΌπ ∪ β― ∪ π1 πΌπ … ππ−1 πΌπ ππ πΌπ 2. Optimizing condition 1: returning empty set π΄πΌπ = π΄ ∩ π1 πππ ∩ π2 πππ ∩ β― ∩ ππ πππ 3. Exploiting Rebuttals it is π΄πππ = π΄ instead of π΄πππ = π΄ + π΄π΅πΌπ when π rebutts π 4. Re-using computations if πΆ1 (π₯) = πΆ2 (π₯) 2012/2013 - DT228/4 45 Recursive Algorithm Example /2 1 1.1.1 Condtion 1 Condition 2b (with reordering) 2b after rebuttals detection. Since c rebuts b, c cannot label b. Terminal node 1.1.2 Terminal node 1.1 Solution of the recursive step 1.1 1.2 Condition 2b Rebuttals optimization applied, cannot defeat Final Solution 1.1 1 ADT – Arguments Decision Tree » Decision Tree-like Algorithm. Select an argument, split, analyse the two spit sub-graphs » Which is the criteria for selecting the splitting argument? » Dialectical Strength. the dialectical strength of an argument π₯ w.r.t. π, called π·ππ (π₯), is defined as follows: » If π₯ is initial, π·ππ (π₯) is the number of arguments that are defeated by π₯ plus the arguments that result disconnected from π once the arguments defeated by π₯ are removed from πΊ. » Note that, if π₯ directly attacks π, then π·ππ π₯ = |π΄π|. » If x is not initial, π·ππ (π₯) is the number of arguments that are disconnected from π after π₯ is removed. 47 ADT /2 - Example π΄πΌπ = πΉ + πΉ π΅πΆ π·πΈ 48 Applications / Legal Reasoning Paul and John are under trial for the assassination of Sam. Evidence collected: » πΉπ± : John was alone in the room between 1 to 3; the medical test says that Sam died between 1 and 3 [0.6] → John shoot Sam » πΉπ· : Paul was alone in the room between. 3 and 5; the medical test says that Sam died between 3 and 5 [0.4] → Paul shoot Sam » π΄π : The medical test is void [0.1] → nothing can be said on Sam’s time of death » We also π π π½ ∧ π π = 0, since Sam either died btw. 1 and 3 or btw. 3 and 5. » ππ· : The fingerprints are Paul’s [0.7]→ Paul shot Sam btw 3 and 5 » π»π : The weapon was tampered and the test is void [0.5] → fingerprints are not a valid evidence » πΎ: A witness heard a shot at 2pm [0.8], John was in the room at 2 → John shot Sam and Sam died between 1 and 3 » The number in square brackets is the probability of each premise (assume 1 if no number is specified) 2012/2013 - DT228/4 49 Argumentation Graph for the Legal Case Argument Probability 0.6 0.4 0.1 0.8 0.5 0.7 All arguments independent » John is guilty when argument R J is in or W is in. Therefore: » P(Gj ) = P(R J IN ∨ WIN ) = 0.6278 » GP = R P IN ∨ FP IN = 0.284 How is π(πΊπ ) changing if π(π) changes? » πPIN (GP ) πP(W) = −0.519 Good points of PAF » Solid axioms » Much richer computation » Maybe useful for prob. reasoning? 50 Merging Probabilistic KB » Probabilistic KB contains facts with their own probability, such as π π = 0.6 » And conditional rules of the form π π π = 0.8 » Due to uncertainty, PKB could be inconsistent, i.e. there is no probability distribution able to satisfies all facts and rules. This happens especially when 2 PKB merge » Probabilistic argumentation can be used to convert rules and fact into arguments and then resolve conflicts and produce necessity/possibility measures for all the KB statements (see Thrimm 2012) 51 Evidential Reasoning, DS Rule » How can I combine two independent belief assignments? » DS rules » It ignores contradictions (no belief assigned). All the mass (belief) assigned to the agreement Mass 1 » » » » (In)famous Example Doc. 1: 1% tumor, 99% nothing Doc. 2: 1% tumor, 99% meningitis DS Merging t1 n1 m2 t2 » 100% tumor » P. Smets adjustment » 0.01% Tumor, 99.9% unknown Mass 2 52 Dempster-Schafter Rule and Semantics Mass 1 t1 n1 m2 t2 P Which semantic is this? Mass 2 Not grounded, not preferred An implicit undercutting argument in favour of the statements that agrees. Smets correction behaves like grounded sem. Can we use probabilistic argumentation semantics to propose an alternative? 53 Fuzzy Argumentation » My ongoing proposal » Basic idea: use the same scenarios (sub-graph) approach used for probabilistic argumentation » If each argument has a degree of truth ππ , with a degree of truth π − ππ the negation holds » Example: » A: witness 1 said the murder was tall » B: witness 2 said witness 1 is very unreliable ππ A B ππ 54 Problems » Computational problems » Middle excluded not guaranteed: ππ ∧ ππ ≠ π » No similar properties as total probability: ππ ∨ ππ ≠ π » Semantics Problem with rebuttal attacks » » » » » » B: It is Blue! A: It is Red! Do they contradict? It depends… Fine if ππ΅πΏππΈ + ππ πΈπ· ≤ 1 R B But if ππ΅πΏππΈ + ππ πΈπ· > 1 Weak Conjunciton ππ΅πΏππΈ ∧ ππ πΈπ· = max(ππ΅πΏππΈ , ππ πΈπ· ) Strong conj. ππ΅πΏππΈ ∧ ππ πΈπ· = mππ(ππ΅πΏππΈ + ππ πΈπ· − 1,0) 55 What’s next » Applications: any use in data analytics? » Any use in Bayesian Network? » I am focusing on Uncertain Argumentation, try to publish some proposals » Revisiting Dempster-Schafter Rule » First proposal of fuzzy abstract argumentation » A unified approach for uncertainty management in argumentation 56 Thanks for your attention Q&A? 57