rithms
3.2.1 The Algorithm of Doutre and Mengin
In [35] Doutre and Mengin (DM for short) present an algorithm to enumerate all preferred extensions using three labels: IN, OUT and UNDEC. As in algorithm 10 that we have presented, DM algorithm starts with all arguments UNDEC and then the algorithm forks via two transitions iteratively. However, there are five differences between DM algorithm and algorithm 10 as illustrated in the following.
Firstly, DM algorithm selects an UNDEC argument for transitions according to somewhat expensive heuristic rules such that if one rule fails to select an argument another rule is applied and so forth. Here we give three DM rules:
R1. DM selects an UNDEC argumentxs.t. the following conditions hold altogether: i. ∀(y,x), yis not IN nor UNDEC andyis attacked byxor an IN argument, ii. ∀(x,z), zis not IN.
R2. DM selects an UNDEC argumentxs.t. for each (y,x)∈R, yis not attacked by an IN (or UNDEC) argument.
R3. DM selects an UNDEC argument x s.t. there existsz∈A s.t. z is IN, (y,z)∈R, (x,y)∈Rand for each (w,y)∈R s.t.w,x, wis OUT.
By comparing only these rules (leaving aside the other DM rules) against our rules (which, we recall, select an UNDEC argument x s.t. for each (y,x)∈R, y is OUT or MUST OUT otherwise the rule selects an UNDEC argument x such that |{x}+| is maximal), one can see that our heuristic rules are potentially computationally lighter than the DM rules. Furthermore, we present in section 3.3 experiments indicating that our rules are more cost-effective than the heuristics of DM.
Secondly, in DM algorithm the counterpart transition of IN-TRANS labels the attackers of an IN argument OUT while in our approach such attackers are labeled MUST OUT. The benefit of the MUST OUT label is to streamline a pruning mechanism as we demonstrate next. DM algorithm stops exploring a branch further and backtracks if there is (x,y)∈R s.t.xis OUT,yis IN and for each (z,x)∈R zis OUT; this is checked aftereverytransition. Nevertheless, algorithm 10 backtracks if a MUST OUT argument is not attacked by an UNDEC argument; this is checked only during the IN-TRANS that produces new MUST OUT arguments. We note that algorithm 10 needs to check the condition of this pruning strategy less frequently than the algorithm of DM. Besides, this pruning check is verified on average more efficiently in algorithm 10 compared to DM algorithm. Notice that searching for a MUST OUT argument runs in the order of|A| while searching for an OUT argument that attacks an IN argument runs in the order of|R|; typically|R|>|A|.
Thirdly, the DM counterpart of IGNORE-TRANS labels the respective argument as OUT instead of IGNORED. To appreciate the benefit of the IGNORED label consider what follows. Once the DM algorithm finds an admissible set, the labels of all argu- ments are either IN or OUT, and thus, one cannot tell which of the OUT arguments are in conflict with the IN arguments. Comparing with our algorithm, an admissible set is reported if and only if all arguments are IN, OUT or IGNORED, and in effect, one easily can see that the OUT arguments attack (or are attacked by) an IN argument while the IGNORED arguments are those which are excluded from the respective admissible set since they might be indefensible by the IN arguments.
Fourthly, to ensure the maximality of the reported preferred extensions DM algo- rithm checks that for eachT⊆ {y:y is OUT},T∪ {x:x is IN} is not admissible. This
is more expensive than the approach of algorithm 10 that simply reports a maximal admissible set S if and only if S is not a subset of a previously decided preferred extension.
Fifthly, we stress that our algorithm utilizes a new pruning mechanism that skips ignoring an argument that is attacked only by OUT or MUST OUT arguments as we illustrated earlier in section 3.1.
3.2.2 The Algorithm of Modgil and Caminada
In [78] Modgil and Caminada (MC) present an algorithm to enumerate all preferred extensions using three labels: IN, OUT and UNDEC. We show six differences between MC algorithm and algorithm 10.
Firstly, MC approach starts with all arguments IN while our approach starts with all arguments UNDEC. We believe that this is not a stylistic issue, the initial state dramatically affects the performance, keeping in mind that the initial state defines what kind of transitions are applicable. Transitions bear two efficiency factors. Firstly, the computations incurred by applying the transition itself. Secondly, the number of applicable transitions by which the algorithm might fork at a time. In what follows we emphasize on these two issues.
Secondly, for transitions MC select an IN argument (super-illegallyin MC terms) that is attacked by a legally IN (or UNDEC) argument. An IN argumentxis legally IN if and only if for each (y,x)∈R, y is OUT. An UNDEC argument x is legally UNDEC if and only ifxis not attacked by an IN argument whilexis attacked by an UNDEC argument. If there are no super-illegally arguments then MC algorithm picks an illegally IN argument, i.e. an argument attacked by an IN (or UNDEC) argument. Contrastingly, algorithm 10 picks up an UNDEC argumentxs.t. for each (y,x)∈R, yis OUT or MUST OUT otherwise algorithm 10 selects an UNDEC argumentxsuch that
|{x}+|is maximal. Therefore, the selection process of MC runs in the order of|R|2while in algorithm 10 the selection process runs in the order of|R|.
Thirdly, in MC approach there is one kind of transition which is completely different from our transitions. In MC transition, an illegally IN argument is changed to OUT and due to this change any OUT argument (illegallyOUT in MC terminology) that is not attacked by an IN argument anymore is changed to UNDEC. Hence, in MC the transitions need to process the attackers of a set of OUT arguments. This set contains the newly OUT argument plus the OUT arguments which are attacked by that newly OUT argument. We note that our transition methods are computationally cheaper than the transition method of MC: the IGNORE-TRANS only processes one argument while the IN-TRANS processes the attackers of the newly IN argument plus the arguments which are attacked by that newly IN argument.
and so, each illegally IN argument induces a transition. Consider the case where every argument attacks all of the other arguments, then there are|A|illegally IN arguments, and subsequently, there are|A| transitions. Afterwards, there are|A| −1 illegally IN arguments and so forth. Thus, MC algorithm runs in the order of |A|! transitions. However, algorithm 10 (DM algorithm as well) runs in the order of 2|A|due to the fact that our algorithm forks via exactly two transitions at any time.
Fifthly, to ensure the maximality (w.r.t. ⊆) of the decided preferred extensions MC algorithm drops, once there is no illegally IN argument, the decided admissible sets which are subsets of the current set of IN arguments. As we have shown, algorithm 10 reports a maximal admissible set if the set of IN arguments is not a subset of any previously decided preferred extension. Then, it is usually the case that algorithm 10 bears fewer computations to warrant the maximality since the number of preferred extensions is typically less than the number of admissible sets.
Sixthly, MC algorithm incorporates a pruning mechanism which is different from the one used in algorithm 10. MC algorithm stops and backtracks if the set of IN arguments is a subset of a previously decided admissible set. In essence experimental evaluation presented in section 3.3 suggests that our pruning mechanism is more powerful.