1.8 Dissertation Structure
2.1.2 Experiments
We start with a description of the conducted experiments then we show how to use the results of these experiments in analyzing the performance of the methods discussed in section 2.1.1. We implemented the experiments using Java on a Fedora (release 13) based machine3of 4 processors (Intel core i5-750 2.67GHz) and 16GB of memory. Instances of Modgil’s argument system were generated randomly and approximately with equal probability. In particular, if y∈A would attack two arguments and two attacks (note that deciding the number of attacks originated from a given argument can be random as well). Thenx∈A\ {y}is selected to be attacked byywith a probability of
1
|A|−1, and subsequently,z∈A\ {y,x}is selected to be attacked byywith a probability of 1
|A|−2. Likewise, (t,u)∈Ris selected to be attacked byywith a probability of|R1|and then (v,w)∈R\ {(t,u)} is selected to be attacked byy with a probability of |R1|−1. In testing the implemented algorithms, we ran more than 100,000 Modgil argument systems. In the experiments we consider two criteria to measure the behavior of the methods. The first criterion is the average elapsed time in milliseconds denoted asαtime. We used
the Java methodSystem.currentTimeMillis() to measure the elapsed time. The second comparison criterion is the average total of elements ofDprocessed in an execution, we denote this criteria byαd. Note that the second criterion is implementation inde-
pendent. In general, we cannot rely solely on the elapsed time in evaluating different algorithms because such a measure depends on the implementation of the algorithms (i.e. programming/coding) as well as the underlying structure of these algorithms.
Thus, we conducted three experiments for three questions: 1. which method is the most efficient as|A|grows?
2. what is the impact of the increase in|R|on the performance of the methods? 3. how do the methods behave as|D|grows?
In all experiments we pictured the behavior of the methods in solving the credu- lous/skeptical acceptance problems. As to the first experiment, we generated 1000 Modgil argument systems where |A| ranges from 6 to 20, the number of attacks is limited up to 7 per argument and the number of attacks on attacks is limited up to 4 per argument. The behavior of all methods is captured by figures 2.2, 2.3, 2.4 and 2.5. In these figures we use logarithmic scale. In the second experiment, we generated 1000 Modgil argument systems where|R| varies from 12, 24, 36 ... to 132, |A| as 12
and the number of attacks on attacks is 2 per argument. Figures 2.6 and 2.7 trace the results of this experiment. In the third experiment, we generated 1000 Modgil argument systems where|D|varies from 12, 24, 36 ... to 132,|A|as 12 and the number of attacks on arguments is 4 per argument. The outcome of this experiment is shown in figures 2.8 and 2.9. To ensure accuracy, we repeated these experiments on different data with various parameters other than those mentioned above and the trends were completely consistent. Among several versions, we present here only one version of the conducted experiments. Moreover, observe that by these experiments we mean to know which algorithm is the fastest and hence there is no need, although it is possible, to consider very large argument systems as long as there are sufficient clues about algorithms’ behavior under systems not considered to be very large. The size of in- stances might be of concern if the main objective is to study the underlying problem behavior, in that case it might be important to see how the computations are behaving in very large argument systems as well as small ones.
Figure 2.2: Deciding credulous acceptance, trend ofαtimeas|A|grows.
To analyze, figures 2.2, 2.3, 2.4 and 2.5 show the performance for all methods indi- cating that methods 2 and 3 are faster than method 1 in deciding credulous/skeptical acceptance. However, although figures 2.2 and 2.4 suggest that methods 2 and 3 have nearly similarαtimetrends, figures 2.3 and 2.5 indicate that method 2 is more efficient
in terms ofαd. In such situation where two measures do not agree we seek a third one
to decide which method is the most efficient. The overhead of procedure invocation might resolve the conflict, bearing in mind that method 2 is composed of 3 procedures and method 3 comprises two only. Figures 2.10 and 2.11 indicate that method 2 has a higher number of procedure invocations than method 3, and conclusively, methods 2 and 3 perform comparably. By examining the effect of|R|, figures 2.6 and 2.7 sug- gest that method 2 runs faster as|R|grows in deciding credulous/skeptical acceptance. Figures 2.8 and 2.9 indicate that the rise in|D|almost has an inverse impact on the effi-
Figure 2.3: Deciding credulous acceptance, trend ofαdas|A|grows.
Figure 2.4: Deciding skeptical acceptance, trend ofαtimeas|A|grows.
ciency of method 2 in solving the credulous/skeptical acceptance problems. Although figures 2.6, 2.7, 2.8 and 2.9 depict the behavior of method 2, the other methods showed similar trends, which are omitted to avoid redundancy. Data tables for all charts are presented in appendix A.