• No results found

ULTIMA RATIO A Visual Language for Argumentation

N/A
N/A
Protected

Academic year: 2021

Share "ULTIMA RATIO A Visual Language for Argumentation"

Copied!
8
0
0

Loading.... (view fulltext now)

Full text

(1)

ULTIMA RATIO

A Visual Language for Argumentation

Michael Schroeder

1

, Daniela A. Plewe

2

, and Andreas Raab

3

Abstract

In the third act of Shakespeare’s Hamlet, the hero is unsure whether to kill Claudius the assassin of Hamlet’s father -or not. He argues that if he does kill him, Claudius who is praying at that very moment goes to heaven and if he does not kill him Hamlet’s father is not revenged. A contradiction. Ultima Ratio aims at formalization and visualization of ar-gumentation for agents. An agent is constituted by a set of arguments and assumptions. Facing a particular world, the agent’s believes may be inconsistent triggering a rational monologue to deal with the situation.

Formally, we define a framework for argumentation based on extended logic programming under well-founded seman-tics. The system serves as decision support and is capable of detecting and removing contradictions and deriving conclu-sions of the agent’s arguments.

To demonstrate the structure and dynamics of the agent’s ar-gumentation, we visualise the process as dynamic construc-tion of proof trees. The paper includes screenshots of the logical engine and the visualisation unit as exhibited at the computer arts exhibition Ars Electronica 98.

Introduction

The project Ultima Ratio aims at formalisation and visu-alisation of argumentation for agents. An agent is defined by a set of arguments and assumptions. Facing a particular world, the agent’s beliefs may be inconsistent triggering a rational monologue to deal with the situation. In this paper, we give a theoretical account on how arguments attacking each other are used for conflict resolution and show the an-imated visualisation process. The paper contains screen-shots of the system as exhibited at Ars Electronica. To see the screenshots in colour please visit the URL below.4

In Proc. of Intnl. Conf. on Information Visualisation. Lon-don, UK, July 1999. IEEE Press

1City University London, Northampton Square, London

EX1V 0HB, UK,[email protected]

2Franz-K¨unstler-Str. 2, 10969 Berlin, Germany,

[email protected]

3Department of Simulation and Graphics, University of

Magdeburg, Germany,[email protected]

4www.soi.city.ac.uk/homes/msch/ultima/ars/screenshots.html

Our work is closely related to rational agents (Kowal-ski 1995) and logic programming and formal argumenta-tion (Prakken & Sartor 1997; Dung 1993; 1995; Schroeder, M´ora, & Alferes 1997). Intuitively, argumentation treats the evaluation of a logic program as an argumentation pro-cess, where a goal G holds if all arguments supporting G cannot be attacked anymore. Thus, logic programming is seen as a discourse involving attacking and counter-attacking arguments.

Ultima Ratio is a system that relies on a formalism to represent ambivalence by arguments and to solve them by argumentation. Arguments are modeled by extended logic programs which provide two forms of negation, assump-tions, integrity constraints, and contradiction removal. Us-ing this expressive language, we implement human deci-sion and argumentation including features such as: don’t believe in a statement if there is evidence to the contrary, don’t rely on premises which are defeated, try to find incon-sistencies and remove them by changing relevant assump-tions. This methodological canon works on a knowledge base which contains logical representations of various con-flicts occurring in classical literature. For Hamlet, for ex-ample, it is contradictory to have the goal to take revenge and not to take it. The argument that Claudius killed Ham-let’s father supports HamHam-let’s goal. Subsequently, Hamlet killing Claudius would remove Hamlet’s contradiction, if there was not another counter-argument: Claudius would go to heaven (which is too good for him) if killed while praying. Hamlet is caught in cascades of doubt.

Besides formal argumentation, Ultima Ratio aims at vi-sualizing the process of argumentation in a form under-standable by human beings even without basic knowledge about the foundations of formal logic. To achieve this goal, we use the construction of argumentation trees as visual

metaphor for the process of argumentation. The tree’s

con-struction is a representation of an argument (the logic) and the execution event (the control flow) in the logic program. While visualizing the current state of execution of the logic program can and has been done by tree structures, our ap-proaches mainly differs in the dynamics of the presentation.

(2)

Rather than only changing attributes of the visualization (such as color of an argument) in a more or less static view, we generate an interactive animation of the whole process. The goal of this animation is to enable users to navigate through the argumentation space as well as the argumenta-tion process without losing the overall view.

Formal Foundations of Argumentation

In the last 5-10 years researchers have been devoting much work to the semantics of logic programs. Among the dif-ferent approaches that usually either emphasise an opera-tional or a declarative view argumentation semantics turned out to be a very intuitive approach. Rather than defining a semantics in technical terms argumentation semantics uses the metaphor of argumentation as used in politics, law, dis-course, etc. and formalises a part of it sufficient to give a meaning to extended logic programs (Alferes & Pereira 1996). Intuitively, argumentation semantics treats the eval-uation of a logic program as an argumentation process, where a goal G holds if all arguments supporting G can-not be attacked anymore. Thus, logic programming is seen as a discourse involving attacking and counter-attacking ar-guments.

While argumentation in rhetoric comprises a variety of figures such as arguments by example, by analogy, by the consequences, a pari (arguing from similar proposi-tions), a fortiori (arguing from an accepted conclusion to an even more evident one), a contrario (arguing from an accepted conclusion to the rejection of its contrary), and the argument of authority, logic programming can be de-scribed in terms of two figures: Reductio ad absurdum-and ground-attack (Dung 1995) or equivalently rebut absurdum-and undercut (Prakken & Sartor 1997). The former classifies an argument that leads to a contradiction under the cur-rent believes and arguments, and the latter an argument that falsifies the premise of one of the current arguments. Argumentation semantics in extended logic programming has been defined in (Dung 1993; Prakken & Sartor 1997). Our framework is based on (Prakken & Sartor 1997) with a modification avoiding some unintuitive results (Schroeder, M´ora, & Alferes 1997).

Formalizing Argumentation in Literature

Since Prolog became a standard in logic programming much research has been devoted to the semantics of logic programs. In particular, Prolog’s unsatisfactory treatment of negation as finite failure led to many innovations. Well-founded semantics (Gelder, Ross, & Schlipf 1988) turned out to be a promising approach to cope with negation by default. Subsequent work extended well-founded semantics with a form of explicit negation and constraints (Pereira & Alferes 1992; Alferes & Pereira 1996) and showed that the richer language, called WFSX, is appropriate for a spate of

knowledge representation and reasoning forms. Definition 1 Extended Logic Program, Constraints

An extended logic program is a (possibly infinite) set of rules of the form L0 L1LlnotLl 1notLm

0

l m where each Liis an objective literal (0 i m). An

objective literal is either an atom A or its explicit negation

A. Literals of the form not L are called default literals. A subset R of default literals which do not occur in the head of a rule is called revisables. The set of all objective literals is called the herbrand baseH

P. A rule with head L0

is called integrity constraint. The symbol stands for

fal-sity. A program P is inconsistent iff P

, otherwise it is

consistent.

While objective literals have a fixed truth values, default literals have a default truth value. For revisables this truth value may be changed. The limitation of revisability to de-fault literals which do not occur as rule heads is adopted for efficiency reasons, but without loss of generality. We want to guarantee that the truth value of revisables is independent of any rules. Thus we can change the truth value of a revis-able whenever necessary without considering an expensive derivation of the default literal’s truth value.

Consider the excerpt of the third scene in the third act of Shakespeare’s Hamlet below:

1 Hamlet. [approaches the entry to the lobby]

Now might I do it pat, now a’is a-praying-2 And now I’ll do’t, [he draws his sword] and

so a’ goes to heaven,

3 And so am I revenged. That would be scanned: 4 A villain kills my father, and for that

5 I his sole son do this same villain send 6 To heaven...

7 Why, this is bait and salary, not revenge.

Hamlet is caught in a conflict. On the one hand he wants revenge for his father being murdered. On the other he knows that having revenge by killing Claudius, the mur-derer, is not possible since Claudius is praying at that very moment and would go to heaven which contradicts the goal of having revenge. The text can be formalised as follows:

a praying claudius b in heaven X kills YX praying X c took revenge on XY kills XY d killed claudiusking e took revenge on XY in heaven Y f goal revenge XY close XZ killed YZ not justified killed YZ g close hamletking h goal revenge

XY not took revenge on

XY i revisable kills

hamletclaudius false

In line 1, Hamlet realizes that Claudius is praying. This is represented as a fact (a). In line 2, Hamlet continues

(3)

that Claudius would go to heaven if killed while praying. Formally, this is an instantiation of the general rule (b). In line 3, Hamlet states that killing Claudius satisfies Hamlet’s desire for revenge. Or more general (c). In line 4, Ham-let starts another line of thinking by mentioning the fact that Claudius killed Hamlet’s father, the king (d). In line 7, Hamlet finds that he does not have revenge if he sends Claudius to heaven (e). Beside this direct translation of Hamlet’s monologue to logic, we have to add further facts and rules which are mentioned throughout the scenes before or which are given implicitly. First of all, we need a rule to express when someone wants revenge (f). I.e. X wants to take revenge on Y if Y killed a person Z being close to X , and the killing is not justified. Left implicitly in the piece is the fact that Hamlet and his father are close to each other (g). To specify conflicting goals we use besides facts and rules integrity constraints. In this scene we state formally that it is contradictory to want to take revenge and not have it (h). Finally, we have to specify the assumptions Hamlet is willing to change to solve conflicts. For this scene, Hamlet adopts the default assumption of not killing Claudius. I.e. (i) states that Hamlet killing Claudius is assumed false ini-tially, but may be changed in the course of argumentation.

To formalise human argumentation as shown in the previous example one has to detect first the assumptions the protagonist is willing to change. These assumptions are made revisable and are assigned to a default value. Secondly, the problem domain has to be modeled in terms of facts and rules. The two negations (not and

) are important for this modeling task. For example,

not justified

killed

XY

expresses that a murder is not justified as long as there is no explicit proof for the contrary. In contrast, took revenge on XY in heaven Y states that there is explicit evidence that X did not take revenge on Y if Y ends up in heaven. Besides the three ingredients of revisable assumptions, facts, and rules, we have to define which conclusions are contradictory. Naturally, we say that, for example, took revenge on

XY and its explicit negation

took revenge on

XY are contradictory, i.e. took revenge on XY took revenge on XY , but for convenience we are at liberty to de-fine further conflicts such as, for example,

goal revenge

XY not took revenge on

XY

The following definitions for argumentation are based on (Dung 1993; Prakken & Sartor 1997). In contrast to the latter we do not distinguish between strict and defensible rules. However, our results can be extended to this direc-tion.

Definition 2 Argument

Let P be an extended logic program. An argument for a conclusion L is a finite sequence Arm

rn of ground

instances of rules ri P such that 1. for every n

i m,

for every objective literal Lj in the antecedent of ri there

is a k i such that Ljis the consequent of rk. 2. L is the

consequent of some rule of A; 3. No two distinct rules in the sequence have the same consequent. A sequence of a subset of rules in A being an argument is called subargument.

Example 3 An argument for the conclusion goal revenge

hamletclaudius is the sequence:

goal revenge hamletclaudius close hamletking killed claudiusking not justified killed claudiusking ; close

hamletking true;

killed

claudiusking true;

The Process of Argumentation

There are two ways of attacking an argument for a con-clusion L. We may prove that the argument for L leads to a contradiction since there is also proof for

L. Such a

counter-argument is called rebut. The second possibility is to attack the premises of the argument for L. If L’s argu-ment is based on an assumption not L we can attack the argument with a counter-argument for L. Such an attack is called undercut.

Definition 4 Undercut, Rebut

Let A1 and A2 be two arguments, then A1 undercuts

A2 iff A1 is an argument for L and A2 is an

argu-ment with assumption not L, i.e. there is an r : L0

L1Llnot Ll 1not Lm A2 and a l

1 j m

such that L Lj. A1rebuts A2iff A1is an argument for L

and A2is an argument for

L. A1attacks A2iff A1

under-cuts or rebuts A2.

Example 5 The argument took revenge on

hamlet

claudius kills

hamletclaudius can be attacked by the

rebut took revenge on hamletclaudius in heaven claudius; in heaven claudius kills

hamletclaudius praying

claudius;

praying

claudius true Definition 6 Coherent, Conflict-free

An argument is coherent if it does not contain subarguments attacking each other. A set Args of arguments is called conflict-free if no two arguments in Args attack each other.

Definition 7 Defeat, Acceptable

Let A1and A2be two arguments, then A1defeats A2iff A1

is empty and A2incoherent or A1undercuts A2or A1rebuts

A2and A2does not undercut A1. A1strictly defeats A2iff

A1defeats A2but not vice versa. A1is acceptable wrt. a

set Args of arguments iff each argument undercutting A1is

(4)

Our notion of acceptability deviates from Prakken and Sartor’s definition (Prakken & Sartor 1997) where an argu-ment A1is accepted if each defeating argument is accepted.

Our notion is more credulous and leads to more intuitive results.

Example 8 Consider the program P a not b; b

not a;

a , then

a and b not a are acceptable, whereas a not b is not. For Prakken and Sartor’s definition of acceptability there is no acceptable argument which con-tradicts the intuition of

a being a fact.

Definition 9 Characteristic Function

Let P be an extended logic program and S be a subset of arguments of P, then FP

S A

A is acceptable wrt. S

is called characteristic function. A is justified iff A is in the least fixpoint of FP. A is overruled iff A is attacked by a

justified argument. A is defensible iff A is neither justified nor overruled.

Argumentation is closely related to logic programming. While Dung uses argumentation to define a declarative se-mantics for extended logic programs, Prakken and Sartor’s work is driven by their application in legal reasoning. To relate argumentation and extended logic programming, we review WFSX (Alferes & Pereira 1996), a semantics for extended logic programs. While the above fixpoint defi-nition of justified, overruled, and defensible arguments is suitable to give a declarative semantics to argumentation we need additionally an efficient operational semantics. In particular, we need the top-down approach to avoid heavy recomputation when only deciding for or a against a con-clusion or when generating a set of conflicting assumptions which lead to a contradiction. Concerning the top-down proof procedure defined in (Alferes & Pereira 1996) there is an important connection to argumentation. The distinction between undercut and rebut is not necessary in the proof procedure because the simple transformation of adding the default and strong negated not

L to the body of a rule for L covers any rebut

L against L by an undercut

L against not

L.

Proposition 10 Let A1 L Body; rn;; rmbe an

argu-ment, then A2 is a rebut against A1 iff A2is an undercut

against A

1 L Bodynot

L; rn;; rm.

With this proposition we can define the top-down proof procedure as follows.

Definition 11

Let P be an extended logic program, then

P L iff P/0/0t L PM L iff P /0/0M L PLAGAM true PLAGAM L1L2 iff PLAGAM L1 & PLAGAM L2 PLAGAM not L iff PGAGAM L or M t & P/0GAtu L or M tu & PGAGAt L PLAGAt L iff L LA & L L1LlnotLl 1 notLm P & PLA LGA Lt L1LlnotLl 1 notLm PLAGAtu L iff L LA & PGAGAt L & L L1LlnotLl 1 notLm P & PLA LGA Ltu L1LlnotLl 1 notLm The inference operator has three parameters M, LA, and

GA, where M is either t or tu indicating that we want to

prove verity (t) and non-falsity (tu), respectively, LA and

GA are lists of local and global ancestors that allow to

de-tect negative and positive loops which lead to inference of non-falsity and failure, respectively; for details see (Alferes & Pereira 1996). For consistent programs the above infer-ence operator yields the same results as the argumentation process (Schroeder, M´ora, & Alferes 1997):

Proposition 12 Relation of

and Argumentation

Let P be consistent. Pt

L, iff L is a conclusion from a

justified argument. Pt

notL, iff L is a conclusion from

an overruled argument. Pt

L and Ptu

L iff L is a

conclusion from a defensible argument.

To compute revisions, we define conflicts which are sets of default assumptions that lead to a contradiction and show how to solve the conflicts by changing the assumptions so that all conflicts are covered. Such a cover is called hitting set, since all conflicts involved are hit.

Definition 13 Conflict

Let P be an extended logic program with default literals D and revisables R. Then C D is a conflict iff

P c not c C c c C

and a positive subset R not R of the defaults negated

revisables R is called revision iff P R has no conflicts. Example 14 Consider the Hamlet example above. There are two conflicts not kills

hamletclaudius and

kills

hamletclaudius and no revisions. I.e. Hamlet is

in the unfortunate situation that whether he kills Claudius or not, he is always caught in a conflict.

To compute revisions we use REVISE 2.4 (Dam´asio, Pereira, & Schroeder 1997) an algorithm which adopts Re-iter’s hitting set algorithm (Reiter 1987; Greiner, Smith, & Wilkerson 1989) for contradiction removal in extended logic programs. The derivation procedure and contradiction removal algorithm are extended to generate proof traces which are then used for visualisation.

The derivation procedure and contradiction removal al-gorithm are extended to generate proof traces.

(5)

Definition 15 Trace

The traces are composed of the following speech-act-like tags:

1. Derivation of default negated literals not L is accompa-nied with the tags propose not

L entering the definition of not L and accept not

L if the proof for L fails and reject not

L otherwise.

2. If a revisable Lis encountered during the proof the tags revisable assumed

L and revisable not assumed

L are generated depending on the current truth value of L 3. If a literal L is part of a loop the tag loop

L is generated 4. If L is a fact then fact

L is generated

5. If the proof involves rules for a goal L, then rule

LBody indicates the rule used in the proof and

no rule

L that there is no rule. If a rule’s body is proven rule succeeds

LBody is generated and

other-wise rule fails

LBody

6. If a partial revision R is assumed then assume

R is generated and if R turns out to be a solution assume solution

R otherwise assume closed

R

Having developed the argumentation theory we turn now to the functionality of the implemented system.

Visualizing Extended Logic

Advocates of logic programming sometimes sum up their view of computing with Kowalski’s (Kowalski 1979) phrase

ALGORITHM= LOGIC+ CONTROL

which has some interesting implications for visualizing logic programs. Logic, interpreted as formulating premises and queries can be seen as static since it forms a well-founded argumentation space in which the actual proof for a given query is found. Control means the process of de-riving a solution and is inherently dynamic since it requires inference, backtracking etc.

Previous work such as (Dewar & Cleary 1986), (Brayshaw & Eisenstadt 1991) and (Neufeld, Kusalik, & Dobrohoczki 1997) has primarily focused on visualizing the control flow in an AND/OR tree by displaying success of failure of rules and the associated unification process. While these approaches are well suited for debugging or an-alyzing the execution of a logic program they are not very “visually pleasing” and require a good portion of knowl-edge about the execution of logic programs. Also, the de-tection and removal of contradictions, a central point of ex-tended logic can not be visualised easily by the techniques used so far.

In contrast, Ultima Ratio aims at visualizing the process of argumentation in a form understandable by human be-ings even without basic knowledge about the foundations

of formal logic. To achieve this goal, we use the construc-tion of proof trees. The construcconstruc-tion is a representaconstruc-tion of an argument (the logic) and the execution event (the control flow) in the logic program. While visualizing the current state of execution of the logic program can and has been done by tree structures, our approaches mainly differs in the dynamics of the presentation. Rather than only changing at-tributes of the visualization (such as color of an argument) in a more or less static view, we generate an interactive an-imation of the whole process. The goal of this anan-imation is to enable users to navigate through the argumentation space as well as the argumentation process.

Argumentation Space

As has been mentioned above, a significant place to start the visualization with is the argumentation space. It is more or less the background for the reasoning taking place during the process of argumentation. This space, although contain-ing sets of pre-defined (i.e. static) facts and rules, may be used in different contexts and therefore lead to different re-sults. To emphasise this non-absolute behaviour, the visual-ization of an argumentation space is not static – it provides a dynamic background on which the actors (the synthetic agents) perform its “discussion”.

Arguments, seen as sequences of rules, are arranged hi-erarchically to communicate the dependencies between the argument and its sub-arguments. For efficient use of screen real estate its layout is arranged in 3D, allowing to focus on the argument at hand while still having contextual in-formation of the overall inin-formation flow. This type of vi-sualization, also known as implicit distorting views (Noik 1994), has been used to visualise complex nested struc-tures by exploiting perspective transformations of 3D ob-jects on 2D screens (Mackinlay, Robertson, & Card 1991; Robertson, Mackinlay, & Card 1991).

Argumentation Process

Due to the limited number of execution events in Definition 15, visualising the dynamics of an argumentation process is done using a forest of trees for the different argumentation processes based on different assumtions and coloured nodes representing arguments’ conclusions.

The tags in Definition 15 are visualised as follows: The tag assume indicates the generation of a new argu-mentation tree.

Once the tree is fully processed assume closed and

assume solution indicate a derivation of a conflict or not.

This event is represented by two rotating, orange ellipses. If a conflict is derived (assume closed) the ellipses inter-sect, otherwise they do not.

The structure of the tree is determined by the tags rule creating internal nodes in the tree and f act creating the

(6)

Figure 1: Compass-like User Interface of Ultima Ratio

leaves of the argumentation tree. Initially, the tree is con-structed rapidly moving from the root to the leaves. All nodes are left open and rotate indicating that it is not yet known whether they are valid or not.

In the next phase the tree is traversed bottom-up and nodes are filled in yellow if they form a valid conclusion (rule succeds) or blue otherwise (rule f ails, no rule). Interestingly, users favoured the visualisation combining a fast top-down traversal followed by a slow and detailed bottom-up traversal to pure top-down or bottom-up. This is very remarkable since this corresponds technically exactly to the magic-set algorithm used in deductive databases. This algorithm combines the advantages of top-down and bottom-up evaluation to improve performance and appears to capture closely human reasoning.

Ultima Ratio’s Functionality

Figure 1 shows Ultima Ratio’s graphical user interface whose form is derived from a compass. At the rim of the compass one can select menus which appear as a sphere. With a joystick the user rotates the sphere until the entry of choice is in the centre. Via the compass menu the user selects one of the following functions:

1. Cascades of Doubt - Struggling Agents. The user se-lects an agent according to the author’s version. Cur-rently the knowledge base contains Shakespearce’s Ham-let, Ilsa and Rick in Casablanca, Siegfried, Krimhild, Brunhild, Hagen and Etzel of the German saga Nibelun-genlied, Euripides’ Medea, Moli`ere’s Don Juan, the artist

Figure 2: Cascades of Doubt - Struggling Agents: Should Hamlet take revenge on Claudius who is praying? In the foreground the orange node labelled praying(claudius) in-dicates the successful proof of this fact. Where possible conclusions are adorned with suitable video sequences. The background shows the rest of the proof tree.

Duchamp and his readymades, Robocop, and Macchi-avelli. The arguments for these agents are online.5 Consider Hamlet, for example. The argumentation pro-cess which is represented by a proof tree is visualised as a 3D tree. Premises which are not yet proven are repre-sented by rotating circular rims. If they are successfully proven an orange disc moves to the rotating rim and fills it out (see Figure 2). If the proof failed the disc is blue. If the argumentation finally results in a conflict two ro-tating and intersecting ellipses appear at the conflicting nodes. If the potential conflict did not occur the ellipses do not intersect. The user can navigate in the argumenta-tion space or switch to auto-pilot. For the auto-pilot, we combined top-down and bottom-up derivation. Techni-cally, the system performs the proof top-down, but users felt more comfortable with a bottom-up proof starting with the facts and leading to a conflict in the end. We have combined both by the camera moving directly from the root of the proof tree to the leaves and then moving step by step bottom-up from the facts.

2. Crossovers - Tracing Motifs. Crossovers allow to trace motifs in the complete argumentation space. In the on-line knowledge base6one can see, for example, that the arguments for revenge occurring in Hamlet are also part of the Nibelungenlied and of the agent property “re-vengeful”. Similarly, the topic of offences connects Don Juan to Medea. Visually, the tree structure of the argu-ments is shown and different regions in the 3D space cor-respond to different agents. The same argument occur-ring in different regions is connected by a bridge of grey

5http://www.soi.city.ac.uk/homes/msch/cgi/aec/kbwww/cod.html 6http://www.soi.city.ac.uk/homes/msch/cgi/aec/kbwww/co.html

(7)

Figure 3: Crossovers - Tracing Motifs: Hamlet’s rules for revenge are also part of Krimhild and Etzel, Agents of the Nibelungensaga. The cubic bridge in the foreground con-nects the arguments of both pieces one of which shown in the background.

cubes (see Figure 3) leading from one agent to another. Besides this 3D visualisation, the above online knowl-edge base provides and an applet showing the dependen-cies of arguments

.

3. War of Convictions - Arguments as Forces. The war of conviction function focuses on conflicts in general, independent of their instances for particular agents and worlds. The online knowledge base7 lists all conflicts and arguments together with cross-references showing on which arguments conflicts are based and how argu-ments support and attack each other.

4. Reasoning Running Wild. In contrast to the above logi-cal modes, Ultima Ratio also provides a visual metaphor for reasoning running wild: The proof trees move very fast so that their structure is not graspable anymore, ad-ditionally the user’s head tracker is switched on leading to a distorted view depending on the user’s head move-ments.

Figure 6 shows the stand as exhibited at Ars Electronica 1998.

Conclusion and Future Work

Ultima Ratio is a system for formal argumentation and its visualisation. Ultima Ratio allows to specify an agent and

7http://www.soi.city.ac.uk/homes/msch/cgi/aec/kbwww/woc.html

Figure 4: Crossovers - Tracing Motifs: A 2D dependency graph of all arguments. The advantage of the 3D represen-tation in Figure 3 and 5 is obvious.

Figure 5: Crossovers - Tracing Motifs: Similar representa-tion to Figure 3, however, implemented in VRML.

(8)

the world it is situated in as an extended logic program. Us-ing argumentation, it is possible to detect and remove con-flicts the agent is facing. Given the agent’s arguments and a world it faces, Ultima Ratio unfolds a process of argu-mentation in which arguments and counter-arguments are exchanged to detect conflicts and remove them. The visual-isation enables users to navigate through the argumentation space and the argumentation process which is constructed dynamically as the argumentation process evolves.

For future work we’d like to follow up three points: First, we would like to include various types of agent credibil-ity. Depending on the type of counter-arguments allowed one can define more credulous and skeptical agents. Here, (M´ora, Alferes, & Schroeder 1998) is relevant. Further-more, it would be interesting to extend our implementation to a multi-agent setting as described in (Schroeder, M´ora, & Alferes 1997). Finally, it would be interesting to extend our system to allow for interactive story telling as in (Hayes-Roth & van Gent 1997), for example.

Acknowledgement We’d like to thank Bela Bargeld and Joachim B¨ottger for helping with the visualisation, Uwe K¨ussner and Manfred Stede for the audio output and Dirk Weinreich, Tris-tan Thunnissen, Jens Eidinger, Martin Dahlhauser, Pik You Chan, Tilo Meisel of Softimage Operation for the video.

References

Alferes, J. J., and Pereira, L. M. 1996. Reasoning with Logic

Programming. (LNAI 1111), Springer-Verlag.

Brayshaw, M., and Eisenstadt, M. 1991. A practical graphical tracer for prolog. International Journal of Man-Machine Studies 35(5):597–631.

Dam´asio, C. V.; Pereira, L. M.; and Schroeder, M. 1997. RE-VISE: Logic programming and diagnosis. In Proceedings of the

Conference on Logic Programming and Non-monotonic Reason-ing LPNMR97. LNAI 1265, SprReason-inger–Verlag.

Dewar, A. D., and Cleary, J. G. 1986. Graphical display of complex information within a prolog debugger. International

Journal of Man-Machine Studies 25(5):503–521.

Dung, P. M. 1993. An argumentation semantics for logic pro-gramming with explicit negation. In Proc. of the 10th

Interna-tional Conference on Logic Programming, 616–630. MIT Press.

Dung, P. M. 1995. On the acceptability of arguments and its fun-damental role in nonmonotonic reasoning, logic programming and n-person games. Artificial Intelligence 77(2):321–357. Gelder, A. V.; Ross, K.; and Schlipf, J. S. 1988. Unfounded sets and well-founded semantics for general logic programs. In

Proceeding of the 7th ACM Symposium on Principles of Databse Systems. Austin, Texas. 221–230.

Greiner, R.; Smith, B. A.; and Wilkerson, R. W. 1989. A cor-rection of the algorithm in reiter’s theory of diagnosis. Artificial

Intelligence 41(1):79–88.

Hayes-Roth, B., and van Gent, R. 1997. Story-making with im-provistional puppets. In Proceedings of First Internationl

Con-ference on Autonomous Agents, AA97, 1–7. ACM Press.

Kowalski, R. A. 1979. Algorithm = logic + control.

Communi-cations of the ACM 22(7):424–436.

Kowalski, R. A. 1995. Using meta-logic to reconcile reactive with rational agents. In Apt, K. R., and Turini, F., eds.,

Meta-logics and Logic Programming. The MIT Press. chapter 9, 227–

242.

Mackinlay, J. D.; Robertson, G. G.; and Card, S. K. 1991. The perspective wall: Detail and context smoothly integrated. In

Pro-ceedings of CHI ’91, Conference on Human Factors in

Comput-ing Systems, 173–179. ACM.

M´ora, I.; Alferes, J. J.; and Schroeder, M. 1998. Argumentation and cooperation for distributed extended logic programs.

Sub-mitted. SubSub-mitted.

Neufeld, E.; Kusalik, A.; and Dobrohoczki, M. 1997. Visual metaphors for understanding logic program execution. In Davis, W.; Mantei, M.; and Klassen, V., eds., Graphics Interface, 114– 120.

Noik, E. G. 1994. A space of presentation emphasis techniques for visualizing graphs. In Proceedings of Graphics Interface ’94, 225–234.

Pereira, L. M., and Alferes, J. J. 1992. Well founded semantics for logic programs with explicit negation. In B. Neumann (Ed.),

European Conference on Artificial Intelligence. John Wiley &

Sons. 102–106.

Prakken, H., and Sartor, G. 1997. Argument-based extended logig programming with defeasible priorities. Journal of Applied

Non-Classical Logics 7(1).

Reiter, R. 1987. A theory of diagnosis from first principles.

Artificial Intelligence 32(1):57–96.

Robertson, G. G.; Mackinlay, J. D.; and Card, S. K. 1991. Cone trees: Animated 3D visualizations of hierarchical information. In Proceedings of CHI ’91, Conference on Human Factors in Computing Systems, 189–194. ACM.

Schroeder, M.; M´ora, I.; and Alferes, J. J. 1997. Vivid agents ar-guing about distributed extended logic programs. In Proceedings

of the Portuguese Conference on Artificial Intelligence EPIA97.

References

Related documents

It soon became clear from an investigation of the USA NGDC/Geodas websites and those of the countries that had or have active research programmes, that a large amount of geological

Lactating females experience lower harassment rates if they spend more time with a particular male, whereas nonlactating females’ harassment rates do not depend on their allocation

Such freezing shall expire upon communication by the ancillary system (via an „end-of-cycle“ message). By confirming the freezing of the balance on the participant’s sub-account,

Thus, it can be assumed that femtocell networks can position themselves as the Mobile Virtual Network Operator (MVNO) player in the mobile value chain, which is

Installation & maintenance: For installation guidelines (wall-to-wall) and maintenance information please visit www.moquetasrols.com to download our product specific Quick

We developed a significant and positive impact of remittances, migration and GDP per capita on poverty reduction, and we have estimated a significant and positive

The sequence of generated policies converges (to an optimal policy of the aggregate problem) with monotonic cost improvement (for the aggregate problem), and a more favorable

[Education Code 48903 (a)] A student who accumulates more than 20 days of suspension in a school year shall be recommended for expulsion to the Aspire Board of Directors..