Policy-Adaptable Methods For Resolving Normative Conflicts Through Argumentation and Graph Colouring
Abstract
In a multi-agent system, one may choose to govern the behaviour of an agent by imposing norms, which act as guidelines for how agents should act either all of the time or in given situations. However, imposing multiple norms on one or more agents may result in situations where these norms conflict over how the agent should behave. In any system with normative conflicts (such as safe reinforcement models or systems which monitor safety protocols), one must decide which norms should be followed such that the most important and most relevant norms are maintained. We introduce a new method for resolving normative conflicts through argumentation and graph colouring which is compatible with a variety of normative conflict resolution policies. We prove that this method always creates an admissible set of arguments under argumentation semantics, meaning that it produces coherent outputs. We also introduce more robust variants of this method, each building upon their predecessor to create a superior output, and we include further mathematical proof of their coherence. Our most advanced variant uses the existing concept of curtailment, where one norm may supersede another without fully eliminating it. The methods we introduce are all compatible with various pre-existing policies for resolving normative conflicts. Empirical evaluations are also performed to compare our algorithms to each other and to others in existing literature.
University of Southampton
Faculty of Engineering and Physical Sciences
Electronics and Computer Science
Policy-Adaptable Methods For Resolving Normative Conflicts Through Argumentation and Graph Colouring
by
Johnny Joyce
September 2020
Supervisor: Timothy Norman
Second Examiner: Corina Cirstea
A dissertation submitted in partial fulfilment of the degree
of MSc Artificial Intelligence
Statement of Originality
——————————
-
•
I have read and understood the ECS Academic Integrity information and the University’s Academic Integrity Guidance for Students
-
•
I am aware that failure to act in accordance with the Regulations Governing Academic Integrity may lead to the imposition of penalties which, for the most serious cases, may include termination of programme.
-
•
I consent to the University copying and distributing any or all of my work in any form and using third parties (who may be based outside the EU/EEA) to verify whether my work contains plagiarised material, and for quality assurance purposes.
——————————
-
•
I have acknowledged all sources, and identified any content taken from elsewhere.
-
•
I have not used any resources produced by anyone else.
-
•
I did all the work myself, or with my allocated group, and have not helped anyone else
-
•
The material in the report is genuine, and I have included all my data/code/designs.
-
•
I have not submitted any part of this work for another assessment
-
•
My work did not involve human participants, their cells or data, or animals.
——————————
1 Introduction
In a computerised or non-computerised system, there may exist one or more autonomous entities, which we call agents. In systems containing at least one agent, one may wish to govern agent behaviour either by giving direct commands or by setting guidelines for how the agent should interact with its environment. We call such guidelines norms. If an agent is given more than one norm to follow, some of these norms may contradict one another on how the agent should act in certain situations. We call this a normative conflict. The goal of this paper is to devise a way of resolving normative conflicts by deciding which norms to keep and which norms to modify or remove such that the agent continues to follow the most relevant and most important norms.
A norm may be an obligation, a prohibition, or a permission. As an example, let us consider agent Andy, who works in retail and must follow the given norms:
Norm 1: “Andy is obligated to go to work each weekday”.
Norm 2: “Andy is prohibited from disclosing confidential work information to employees of other companies”.
Norm 3: “Andy is permitted to take a day off of work if he has requested it in advance”.
Here, we see an example of each type of norm. Generally, a permission is able to override an obligation — in this case, if Andy were to request a day off of work, then norm 3 would override norm 1. Norms may also be conditional — in norm 3, the condition for activation is that Andy must have requested the day off.
Prohibitions and obligations can conflict with one another. For example, if Andy’s company is working together with another company called CompanyCorp on a project, we may decide to introduce a fourth norm together with the previous three:
Norm 4: “Andy is obligated to share information with CompanyCorp about the joint project”.
Now norms 2 and 4 conflict with one another, so we must decide which norms must be prioritised. Two obligations may also conflict with one another if both cannot be fulfilled simultaneously. Suppose we impose the following new norms:
Norm 5: “Andy is obligated to immediately answer the phone when a customer calls”.
Norm 6: “Andy is obligated to attend to customers at the cash register between 10:00-11:00 each weekday”.
Then if the phone were to ring whilst Andy is attending to a customer at the register, he would be unable to fulfil his obligation to answer the phone. Norms 5 and 6 also show examples of time dependencies within norms. Norm 5 is time-sensitive in its fulfilment condition in that Andy must answer immediately (presumably within a given time limit). On the other hand, norm 6 is time-sensitive in that its effects only apply at specific times. For most of this paper, we will not be thoroughly analysing time dependencies of norms.
To resolve normative conflicts, one needs to decide to prioritise certain norms above others, since by definition it is not possible for an agent to follow all conflicting norms it is given. As described by Oren et al., “An agent may drop a conflicting norm […] or temporarily ignore it […] We assume that an agent in this situation has no choice but to drop a norm permanently, and must determine which norms to drop” [1]. We will also make this assumption for the initial sections in this paper, but we will also consider situations later where agents can temporarily ignore norms. When we do so, the specifics of how our assumptions change will be discussed. For now, we will assume that certain norms must be dropped whilst others must be adopted (or admitted). Our goal is to adopt a set of norms which do not conflict with one another such that the set contains the most important and most relevant norms possible. This will ensure that the agent(s) following these norms have a clear, well-defined objective which aligns with the tasks of highest priority. This will also ensure that the agent need not engage in normative reasoning whilst it is deployed, allowing its resources to instead be put towards its own agenda.
In this paper, we will introduce a method for deciding which norms to adopt and for resolving normative conflicts in a way which is versatile and coherent. We want this method to be compatible with some common policies for normative conflict resolution (which we will discuss in detail in Section 3), so this method should be adaptable with respect to policies. This will ensure that the method we introduce will be as flexible as possible to maximise applicability in different settings. We also want the results of this method to demonstrably align with notions in argumentation [2] — that is, we want to be able to show that this method produces a set which is admissible or is a equivalent to an extension (these notions will be discussed in section 2.1). Achieving this goal would ensure that our method produces solutions which are logically sound and which prioritise norms sensibly.
Further to the above goals, we want to extend our method to allow for adoption of norms which directly conflict with one another. In doing so, the set of norms we admit will be moved past the semantics of argumentation, where conflicts can only be resolved by admitting one argument (or norm) or the other.
The structure of the remainder of this paper is as follows:
- •
-
•
In Section 3, we discuss relevant work on policies which have been used for normative conflict resolution — these policies give us a specific objective in judging the adaptability of our system. We also discuss relevant work within argumentation.
-
•
In Section 4, we introduce new methods for resolving normative conflicts using the tools discussed in Section 2. In Section 4.1, we introduce , our first new method which we will build upon throughout the remainder of Section 4. Section 4.2 discusses how our new method can be used with different policies. Section 4.3 highlights a shortcoming of our new result and introduces a remedy, . Section 4.4 further refines our method, resulting in the most robust of all the new methods introduced so far, — this method’s computational complexity is discussed in Section 4.5.
-
•
In Section 5, we compare the empirical results of the new methods we have introduced to existing methods in literature using existing methodology. We also perform our own empirical evaluations.
-
•
In Section 6, we discuss potential areas for further exploration beyond our work.
-
•
Finally, we conclude in Section 7.
2 Argumentation and graph colouring
In standard logic, the discovery of new information does not alter the conclusions at which one has already arrived. The counterpart to this type of reasoning is called non-monotonic logic, where conclusions can be withdrawn or overturned on the basis of new information. For example, if one were looking at a starry sky at night and saw a light, it might be assumed that the light was a star. However, if one then sees that the star is moving, it may be more reasonable to instead assume that the light is a meteor. If one then sees that the light is flashing, one could again revise their assumption and presume that the light belongs to an aeroplane. Non-monotonic reasoning provides a basis for argumentation, which we will now discuss.
2.1 Argumentation
We will need tools to allow us reason about the conflicts between norms directly. To do so, we can use argumentation, a type of framework pioneered by Dung in 1995 [2]. Argumentation involves a set of arguments and an attack relation between these arguments. For two arguments , if there is a tuple , we say that argument attacks argument . In our case, we will view each norm as an argument (and will henceforth use “norm” and “argument” interchangeably) and we will view a conflict between two norms as their corresponding arguments attacking one another. Note that we will therefore be considering attack arguments to be bidirectional — if argument attacks argument , then argument attacks argument . This is not usually the case in argumentation, but this assumption will simplify the remainder of this paper.
By using argumentation, we now have access to notions within the field which are used to reason about which arguments are reasonable and should be accepted and which arguments should be rejected. This will help us resolve conflicts by discarding norms we value less highly than others when a conflict arises. The following list contains some common notions within argumentation which we will be using throughout the remainder of this paper:
Note: We will use to denote a subset of the set all arguments . This is non-standard notation which we are adopting due to a notational conflict which will arise later in Section 2.3.
-
•
We say that a set of arguments is conflict-free iff there are no arguments s.t. attacks
-
•
We say that an argument is acceptable wrt. a set of arguments iff for any s.t. attacks , there exists some s.t. attacks . That is, attacks every argument which attacks (or in other words, defends ).
-
•
We say that a set of arguments is admissible iff it is conflict-free and for every , is acceptable wrt.
-
•
A set of arguments is a complete extension of iff is admissible and for every which is acceptable wrt. ,
-
•
A set of arguments is a preferred extension of iff is a maximal admissible set. That is, .
There are also other notions and types of extensions within argumentation, such as stable extensions and grounded extensions, but we will not consider these in this paper. For further reading on notions in argumentation, the reader is directed to Dung’s seminal paper [2].
2.2 Conflict graphs
Though there are various ways of representing normative conflicts, we will be using conflict graphs, put forth by Oren et al. [1]. The advantage of conflict graphs is that we can use existing work from both argumentation and graph theory to our advantage when resolving conflicts, as well as standard normative reasoning.
In standard graph theory, a graph consists of a finite set of discrete vertices (often also called nodes, as with Oren et al.) and a set of edges . Each edge consists of a pair of two vertices and can be thought of as a link or a relation between vertices and . Edges may be unordered pairs or ordered pairs — if a graph contains ordered pairs as edges, then these edges are said to be directional, and the corresponding graph is called a directed graph, or a digraph. Directional edges represent a relation which is one-sided. On the other hand, graphs without directed edges are called undirected graphs, or simply “graphs”.
In a conflict graph, each vertex represents a norm (or an argument), while each edge represents a normative conflict between two norms. We will assume that edges are undirected — that is, whenever norm conflicts with norm , norm also conflicts with norm . A potential area for further work may involve directional conflicts, but we will not consider these cases in this paper.
As an example, let us consider a system where our agent Andy from before has been given the six norms we discussed in Section 1:
Norm 1: “Andy is obligated to go to work each weekday”.
Norm 2: “Andy is prohibited from disclosing confidential work information to employees of other companies”.
Norm 3: “Andy is permitted to take a day off of work if he has requested it in advance”.
Norm 4: “Andy is obligated to share information with CompanyCorp about the joint project”.
Norm 5: “Andy is obligated to immediately answer the phone when a customer calls”.
Norm 6: “Andy is obligated to attend to customers at the cash register between 10:00-11:00 each weekday”.
Here, we have that norms 2 and 4 directly conflict with one another in their statements. Whenever Andy is busy attending to customers, there is also a conflict between norms 5 and 6 since Andy would be unable to fulfil both duties at once. Therefore, the normative conflict graph would appear as shown in Figure 1. Note that we have not drawn an edge from norm 1 to norm 3 because Andy’s permission to take time off of work can override his obligation to go to work when norm 3 is applicable.
2.3 Graph colouring
As we continue, we will use graph colouring as one of our tools to solve normative conflicts, which we will introduce in this section. Given a graph consisting of vertices and edges, the aim of graph colouring is to assign each vertex a colour such that no two vertices of the same colour are connected by an edge — typically, one tries to accomplish this using the fewest possible number of colours.
A graph colouring which uses at most colours is called a -colouring, and a graph is said to be -colourable if there exists a proper -colouring for . The minimum for which a graph is -colourable is called the chromatic number of , denoted . For a given colour , the set of vertices corresponding to colour is called the colour class of .
In general, deciding whether there exists a -colouring for for a graph is an NP-complete problem. Furthermore, finding the chromatic number for a graph is an NP-hard problem [3]. As such, we will not focus on finding graph colourings which use the exact minimum number of colours. Instead, we will consider known algorithms for creating colourings which may use more colours than the chromatic number, which we will discuss later. Some examples of possible colourings for a graph can be seen in Figure 2. For further reading on graph colouring, the reader is directed to Lewis’ book on graph colouring [4].
Note that for any valid colouring of any graph, each colour class is an independent set — that is, there are no edges connecting any two vertices in the same colour class. This fact will serve as the backbone of the algorithms we will propose, where we will compare colour classes to find independent sets which correspond to the most important norms in the system.
As we continue into subsequent sections, we will use the following notation:
-
•
We will use standard graph-theoretic notation for most objects. will represent a graph with vertex set and edge set .
-
•
When colouring any graph, one can create a bijection from the set of colours to , where is the number of colours being used in the graph (so ). As such, will represent the space of all possible colours which can be used and will represent an arbitrary colour.
-
•
For a graph , a graph colouring is equivalent to a function since each vertex maps to a colour and each colour can be represented by an arbitrary natural number. We will denote arbitrary graph colourings by and the set of possible graph colourings by .
-
•
Since represents the edge set of a graph, this notation conflicts with the standard notation for an extension or a set of arguments in argumentation (also ). Therefore, we will use to denote a set of arguments/norms or a selected set of vertices while will represent the edge set of a graph.
-
•
We will use to denote the set of all arguments in the domain of our problem. Since we are modelling norms as arguments and arguments as vertices in a conflict graph, the set of arguments and the set of vertices represent the same objects seen through a different level of abstraction.
3 Related work on conflict resolution
Having introduced argumentation, we can now discuss existing materials on normative conflicts. Normative conflicts can be resolved using many different approaches, some of which involve argumentation, while others do not. In Section 3.1, we discuss how policies for normative conflict resolution are used, both in settings involving and not involving argumentation. In Section 3.2, we discuss the relation between argumentation and normative reasoning, and also discuss some criteria for how arguments be used to can defeat one another, building upon the policies discussed in Section 3.1.
3.1 Policies for normative conflict resolution
One example of a method for resolving normative conflicts without argumentation comes from Vasconcelos et al. [5]. They show that a normative conflict arises when any action is within scope of two conflicting norms, such as a prohibition and an obligation. That is, a conflict exists when an action is both simultaneously forbidden and obliged by some agent. Vasconcelos et al. also discuss policies for resolving conflicts, including lex posterior (where the more recent norms takes priority over less recent norms) and lex superior (where norms put forth by greater authorities take priority over others).
An appropriate example for demonstrating another type of policy comes from Horty [6], who put forth the following set of conflicting norms as a motivating example:
“Don’t eat with your fingers,
If you are served asparagus, eat it with your fingers.” [6]
Here, neither lex superior nor lex posterior are applicable as we do not have information on the sources of norms nor on when they were imposed. Instead, the policy of lex specialis (where norms which are more specific than others take priority) is more suitable, since the first norm should be ignored when presented with asparagus. Straßer and Arieli [7] have used an approach based on lex specialis to resolve normative conflicts through argumentation. In their work, arguments (or sequents as they call them) are eliminated when they contain another argument which attacks them either via rebuttal (directly refuting the opposing conclusion) or undercutting (refuting one or more of the opposing antecedents).
One of our previously stated aims for creating a new framework for conflict resolution is that we wish for it to be adaptable with respect to policies. Setting this as a specific objective, we wish for our resulting system to be compatible with the policies of lex superior, lex posterior, and lex specialis.
Normative conflicts could also be resolved based on a system of trust. This bears a similarity to how one would apply lex superior, though instead of considering the amounts of authority of individuals who impose norms, we instead consider individuals based on their reputation. Examples include the work of Parsons et al. [8] [9] and of Keung et al. [10]. However, trust-based systems require more involved processes than the previously discussed policies since one would have to derive a measure of trust for each individual rather than using easily obtainable information within the system. That said, given a sufficiently adaptable system, should be possible to include trust-based policies as an “add-on” to the framework.
3.2 Policies and argumentation
Similarly to how policies exist for resolving normative conflicts, there are various criteria which can be used in argumentation for determining which arguments defeat others. One such example is the weakest link criterion. Consider a system where each argument is composed of several elementary arguments, called context arguments, where the conclusion of each context argument leads to the antecedent of the subsequent context argument. Here, the weakest link criterion dictates that the strength of an argument is determined by the strength its weakest context argument [11]. Another example would be the last link criterion, where the strength of an argument is determined by the strength of its final context argument. Our framework will not consider these criteria for defeating arguments and will instead focus on policies which do not involve argumentation-based reasoning. However, an alternate system based upon ours which uses argumentation-specific criteria to decide which norms to follow may be an avenue for future work.
Other criteria for defeating arguments exist where arguments can be attacked without being defeated. For example, Amgoud and Ben-Naim [12] have proposed a system where arguments are sorted by strongest to weakest based upon how many attackers an argument has.
Some frameworks and methods for non-monotonic reasoning have later been shown to have equivalent approaches using argumentation. For example, Liao et al [11] showed that using a “greedy” approach for creating an extension using the weakest link criterion creates a set of conclusions identical to those of an approach by Brewka and Eiter [13] from 17 years prior. It is expected that these parallels between argumentation and non-monotonic logic should exist, since it has been shown that Dung’s argumentation framework is equivalent to classical logic with the addition of the Peirce-Quine dagger (i.e. the “NAND” operator) [14]. As such, approaches with and without argumentation should not be seen as mutually exclusive, with various degrees of overlap existing between different approaches. Therefore, by applying argumentation to normative conflict resolution, loss of detail or generality should not be considered a major concern.
It should be noted that the approaches featured in [11] and [13] require the existence a preference relation over context arguments, which could be derived using policies as in Section 3.1, or they could be given a priori. Other argumentation-based systems, such as those of Modgil and Luck [15], do not require an a priori relation, while other systems which do not involve argumentation also do not require an a priori relation [5]. We can therefore see that whether or not one chooses to involve argumentation in a system or framework does not directly impose a requirement (or lack thereof) for an ordering to be given as a component of the system. However, it is more advantageous to have this relation be derived as a part of the system. As explained by Modgil and Luck, “flexible and adaptive agents need to engage in motivational argumentation over the respective merits of goals. Therefore, argumentation frameworks in which preferences […] are ‘given’, and not themselves subject to reasoning, do not suffice.” [15]. We will follow this philosophy with our own framework, aiming to use preference orderings which can be derived from the properties of norms and arguments, rather than relying on orderings given a priori.
4 Normative conflict resolution
4.1 Graph colouring for normative conflicts
Now that we have access to both graph colouring and conflict graphs, we can use these two tools to begin to solve normative conflicts. Now assume we have an arbitrary heuristic function — calling would appear in the form . That is, takes a graph, a colouring, and a colour as inputs and evaluates the overall importance of the set of norms corresponding to the given colour by returning a real number.
Let us now introduce our first new algorithm ColourResolve in Algorithm 1, which uses graph colouring, conflict graphs, and an arbitrary heuristic to resolve normative conflicts.
ColourResolve first creates a colouring using an arbitrary graph colouring algorithm (we will discuss this further later). On line 1, it then uses the given heuristic to find the colour which maximises the heuristic value, then assigns this to the variable . On line 4, it finds the subset of vertices corresponding to the colour . On line 1, the norms corresponding to the vertices with colour are found, which are then returned on line 1. ColourResolve always produces an admissible set, which we will now prove.
Proposition 1.
Let be any conflict graph. When using ColourResolve on with any proper graph colouring algorithm and any heuristic , the resulting set of arguments is always admissible.
Proof.
To show that is admissible, we need to demonstrate both of the following facts:
-
1.
is conflict-free.
-
2.
For each , is acceptable wrt. . That is, for each s.t. attacks , there exists s.t. attacks .
Let us start with showing that statement 1 holds. Suppose for contradiction that was not conflict-free. Then there exist two arguments such that attacks . Therefore, there exists an edge in the conflict graph. Since and are both in , they must have been assigned the same colour regardless of which heuristic and graph colouring algorithm was used. However, it is not possible to assign the same colour to two vertices connected by an edge in a graph colouring problem. Thus, a conflict cannot exist and so must be conflict-free.
As for statement 2, let and let s.t. attacks . Then there is a normative conflict between and , so there is a bidirectional edge in the conflict graph . Therefore attacks and , so defends itself.
Since statements 1 and 2 hold, we can conclude that is admissible. ∎
Since both the graph colouring algorithm and heuristic in Algorithm 1 are arbitrary, ColourResolve is flexible and can be adapted to suit the needs of the situation at hand. For example, one could use advanced graph colouring algorithms to minimise the number of colours used in the graph, which would thereby maximise the number of vertices corresponding to any given colour — this would therefore maximise the number of norms which are admitted at the end of the algorithm. Alternatively, one could use simpler graph colouring algorithms to save computational time. As an example of a polynomial time algorithm one could use, we will briefly outline the DSatur algorithm [16], which has worst-case running time [4]. This was first put forth by Brélaz in 1979 [16] and can be seen in Algorithm 2.
Here, the degree of saturation of a vertex refers to the number of coloured vertices with an edge or . DSatur prioritises colouring vertices with the highest degree of saturation, thereby focusing on assigning colours to vertices which have the fewest colour options available. Ties are broken by selecting the highest-degree vertex, allowing DSatur to focus on vertices which impose the most constraints upon other vertices. The intended purpose of this example is to show the reader a powerful yet intuitive graph colouring method.
4.2 Heuristics
To demonstrate the flexibility of using arbitrary heuristics, we will now define some possible heuristics one could use with ColourResolve. Definition 1 defines a version of lex posterior adapted for use as a heuristic and Definition 2 defines an adapted version of lex superior. Definition 4 defines a heuristic which selects the colour class corresponding to the greatest number of vertices and therefore admits the greatest number of norms.
Definition 1.
Lex posterior (heuristic version)
Given a graph , a colouring , and a colour , define the heuristic by:
Here, refers to the time at which the norm corresponding to vertex was imposed.
The heuristic finds the number of times any argument corresponding to a vertex with colour defeats another argument by being declared earlier.
Our definition of checks for an edge “”. If we were to generalise our methods to directed graphs, then this edge could either be or , where we would accept either option. We do not need to check the colour of each vertex which each attacks since no two vertices with the same colour can be connected by an edge.
One could further modify this definition by subtracting the number of times each argument corresponding to a vertex with colour is defeated by another argument. In section 5 later, we will perform empirical evaluations on our newly proposed algorithms. There, we will use the modified version of this definition (and similarly modified versions of other definitions in this section). However, the version shown in Definition 1 is simpler to state, which is why this definition has been declared in this way.
Definition 2.
Lex superior (heuristic version)
Given a graph , a colouring , and a colour , define the heuristic by:
Here, refers to the power of the authority who imposed the norm corresponding to vertex .
The preference relation is defined by a weak ordering defined as follows:
For all norms : was imposed by a stronger power than
This relation is a simplified version of one used by Vasconcelos et al. [5, Section 7]. Again, as with our definition for lex posterior, we check for edges going in both directions — and . We can also modify the definition by subtracting the number of times each argument with the specified colour is defeated.
In fact, this preference relation can be generalised to fit any preference ordering over vertices in a conflict graph, and new policies can be created when and where necessary. Definition 3 gives a generalised version of Definitions 1 and 2 which is compatible with any weak ordering over all vertices in the conflict graph.
Definition 3.
Given a graph , a colouring , and a colour , and some weak ordering on , define the heuristic by:
We see that Definition 3 becomes equivalent to Definition 1 if the given weak ordering depends only the time at which norms were declared. It also becomes equivalent to Definition 2 if the given weak ordering depends only on the power of the authority who imposed the given norm. We can also see that Definition 3 generalises lex specialis if the given weak ordering is defined by the following:
For all norms : ant() ant()
…where ant() is the set of antecedents of for any argument (or in the case of a norm, ant() corresponds to the requirements for norm to come into effect).
Since we have shown that is compatible with lex posterior, lex superior, and lex specialis, we have met our criteria for showing that our system is adaptable with respect to conflict resolution policies. In later sections, we will be modifying , but as long as the system continues to use the notion of heuristics, it will remain policy-adaptable.
There is one more heuristic of note which we will define before we consider it further in Section 4.3. This heuristic selects the colour class which corresponds to the greatest number of vertices overall, and can be seen in Definition 4.
Definition 4.
Maximal colour class heuristic
Given a graph , a colouring , and a colour , define the heuristic by:
4.3 Producing argumentation extensions with ColourResolve
Upon inspection, it may appear that using the heuristic with a suitable graph colouring algorithm for ColourResolve would produce a preferred extension. Intuitively, both the preferred extension and the heuristic aim to maximise the number of arguments which are admitted. This certainly is the case with the graph and the colouring shown in Figure 2(b), where the colouring is both optimal and corresponds to a preferred extension under . However, although has the potential to often produce a preferred extension, this is not always the case.
Consider the graph shown in Figure 3(a) – let us arbitrarily call this graph since it has 6 vertices. It is possible to create a valid 3-colouring for , which can be seen in Figure 3(b). Furthermore, it is impossible to colour using only two colours since contains a fully-connected subgraph with three vertices. In other words, contains “triangles”, and these cannot be coloured with two colours since at least one vertex of the triangle would neighbour a vertex with a colour which matches its own. Therefore, the 3-colouring shown in Figure 3(b) uses the optimal number of colours 111Here, we say that is 3-chromatic and that .. By using ColourResolve on with heuristic and an exact graph colouring algorithm, we would admit exactly two arguments — those corresponding to either red, green, or blue.
If we now consider Figure 3(c), we can see that contains a vertex subset of three disjoint vertices, shown in grey. If we consider to be a conflict graph, then these grey vertices would correspond to a preferred extension of the corresponding set of arguments. If we wished to colour the graph in Figure 3, we would need one colour for the three grey vertices, then another distinct colour for each of the three remaining vertices. This would give a 4-colouring, which is sub optimal.
Therefore, an exact graph colouring algorithm used with on a problem with as its conflict graph would admit two arguments, but a preferred extension would contain at least three arguments. So ColourResolve does not always find a preferred extension when using an exact colouring.
This example serves to show that although ColourResolve is highly versatile, there are situations where the results it produces differ from those of preferred semantics. The caveat here is that we assume that using an exact graph colouring algorithm will allow us to admit the highest possible amount of arguments with heuristic , but this may not always be the case. For example, it may be possible that other sub-optimal graph colouring algorithms would assign all vertices in the independent set in Figure 3(c) to a single colour while assigning each of the remaining vertices their own unique colours. This would create a 4-colouring of and would allow heuristic to admit three vertices despite the colouring being sub-optimal. We can therefore see that colouring corresponding to other types of extensions exist, but to find them would depend on the colouring algorithm one uses.
Although a preferred extension is not guaranteed with ColourResolve, it is straightforward to guarantee a complete extension by modifying our algorithm. To do so, we will now introduce a variant of ColourResolve called ColourResolveComplete, which can be seen in Algorithm 3.
The difference between our new algorithm and our original algorithm is the addition of lines 3-3. Here, we loop through each vertex in the conflict graph. For each vertex , we check whether there exists a neighbouring vertex, say , such that and . If no such exists, then we replace the colour of with the colour . Note that our colouring will always remain valid since we have checked for conflicts between neighbouring vertices before changing any colours. We will now prove that ColourResolveComplete always produces a complete extension.
Proposition 2.
Given any conflict graph , any heuristic , and any proper graph colouring algorithm, the resulting set produced by ColourResolveComplete will always be a complete extension of .
Proof.
To show that is a complete extension, we must demonstrate both of the following:
-
1.
is admissible.
-
2.
For every argument which is acceptable wrt. , it holds that .
For statement 1, the fact that is admissible follows the same logic as in Proposition 1.
For statement 2, let us take any argument which is acceptable wrt. . That is, for any where attacks , there exists some s.t. attacks . We need to show that .
Our algorithm ColourResolveComplete created some colouring and chose all vertices corresponding to some colour to be assigned to set . Consider any argument which attacks argument — by assumption, we have that there exists some argument which attacks argument . Therefore, there exists an edge in our conflict graph. Since , we can conclude that .
Since attacks , there also exists an edge in our conflict graph. However, is any arbitrary argument, so no neighbouring vertices of vertex have the colour (since ). Thus, when ColourResolveComplete (Algorithm 3) reaches vertex on line 3, the “if” statement on line 3 will resolve to True. Therefore will be assigned colour on line 3.
Hence , so we have that , so statement 2 holds and therefore is a complete extension. ∎
The proof of Proposition 2 is independent of the order in which we consider vertices to be recoloured, so we will obtain a complete extension regardless of this order. One could iterate through verices in a random order, create an ordering using the heuristic function, or through any other method. However, the complete extension created as a result may be different depending on the method used. Additionally, we cannot recolour all vertices simultaneously since recolouring one vertex may cause another to become the neighbour of a vertex with colour .
4.4 Admitting further norms through curtailment
So far, we have resolved normative conflicts by completely omitting one of the two conflicting norms. As such, only a single colour in the colourings we create is of any value to us in creating the output of the algorithms we have used so far. In this section, we will admit norms corresponding to multiple colours into our algorithm’s output, making the advantages of involving graph colouring more apparent.
We have so far used our heuristic function to find a best colour, but we can easily extend this to find an entire preference relation over all colours. We would define this preference relation for two colours as iff . From this, for any -colouring, we can infer a weak ordering of colours where .
With this ordering, we can first admit all arguments corresponding to our most preferred colour, then those corresponding to the next most preferred colour, and so on, until we have admitted as many arguments as possible. However, a key issue arises here in that we cannot admit two conflicting arguments with our current set of tools — this is where we will need curtailment.
Our inspiration for curtailment comes from Vasconcelos et al. [5, Definition 10]. In their work, curtailment is defined rigorously for constraining one norm with respect to another. Their framework takes into account the times at which norms were declared, when norms come into effect, and when norms expire, and they therefore introduce a robust definition of curtailment which utilises these factors. However, we will consider curtailment to be a generalised concept to keep our framework as broadly applicable and as abstract as possible. Given two conflicting norms, norm 1 and norm 2, we will consider the curtailed variant of norm 2 with respect to norm 1 to be as follows:
Whenever norm 1 is applicable and it is possible to abide by norm 1, then ignore norm 2. Else, abide by norm 2.
Replacing a norm with its curtailed version eliminates the conflict between the two corresponding norms and therefore removes an edge from the conflict graph. The concept of curtailment can also be viewed as another form of contrary-to-duty obligations, where an agent must abide by a secondary norm whenever some primary norm cannot be followed.
As an example, let us consider two norms with time dependencies. Norm says “Between 09:00 and 17:00, Agent 1 should focus on work tasks”. Norm says “Between 12:00 and 13:00, Agent 1 should take a lunch break”. By curtailing norm wrt. norm , we obtain a new norm which does not conflict with . Here, would say “Between 09:00 and 12:00, and between 13:00 and 17:00, Agent 1 should focus on work tasks”. Figure 4(a) shows norms and in a timeline, where we can see a conflict between 12:00 and 13:00. Figure 4(b) shows norms and , where the normative conflict has been resolved through curtailment. This allows the agent to follow norm (take a lunch break) when it is applicable whilst also following norm at all other times. One could view this example as an application of lex specialis since we have prioritised norm over norm as it specifies a narrower time interval.
With curtailment in place, we are now ready to introduce an algorithm which uses every colour in the conflict graph. This can be seen in Algorithm 4, which shows ColourCurtail.
The algorithm starts in the same way as ColourResolve and ColourResolveComplete by creating a -colouring on line 4. However, rather than admitting only the vertices corresponding to a specified colour, we iterate over colours on line 4. Line 4 tells us that we iterate over colours in descending order of value according to our heuristic. On line 4 we select the set of vertices corresponding to the colour on the current iteration of the main loop.
On lines 4 and 4, for each vertex with the colour in question, we find each vertex with an edge connected to where is already admitted into the final set . Since is already admitted and is attacking or vice versa, either or must be curtailed with respect to the other. Since corresponds to a more valuable colour than , we should curtail with respect to , which we do on line 4. Since all arguments corresponding to the current colour are curtailed with respect to all arguments admitted so far, we can now admit all arguments which correspond to the current colour, which we do on line 4. Each time new arguments are admitted, the set remains conflict-free since each possible conflict has been considered beforehand.
With this algorithm, every argument is eventually admitted into the final set, but some may be completely curtailed to the point of having no effect. For example, if we consider our previous example in Figure 4, we curtailed norm wrt. norm . However, if we were to instead curtail norm wrt. norm , then norm would no longer have any effect. However, ColourCurtail would seek to minimise situations where a higher priority norm is curtailed wrt. a lower priority norm since colour classes are considered in descending order of preference according to our heuristic.
As we did with ColourResolve, we can make ColourCurtail more robust by “completing” each colour class when we consider it. This results in our final algorithm, ColourCurtailComplete, which can be seen in Algorithm 5. This utilises all techniques we have seen so far by creating a colouring, iterating through colour classes in descending order of preference, then admitting each colour class with curtailment. The difference between ColourCurtailComplete and ColourResolveComplete is that when we try to complete a colour class with ColourCurtailComplete, we only consider vertices which do not correspond to a colour which has already been admitted into the final set.
On the first iteration of ColourCurtailComplete, a set equivalent to ColourResolveComplete is created, meaning that this set is a complete extension according to Proposition 2. However, on subsequent iterations, we continue to admit further norms into the set. Therefore the set created by ColourCurtailComplete does not fit into notions defined within argumentation (since we have directly altered the norms/arguments by curtailing them), but is nonetheless a superset of a complete extension.
4.4.1 A note on the relative performances of algorithms introduced so far
So far, we have introduced algorithms , , , and . Of these, is our most basic algorithm and serves as a baseline for the remaining algorithms. Given any heuristic, admits the same number or more norms than since it “completes” the extension.
also outperforms in terms of norms admitted since it iterates over each colour class to admit curtailed versions of the corresponding norms. On the first iteration of , the norms corresponding to the strongest colour class are admitted, which is equivalent to the result of — further norms are then admitted on subsequent iterations. We can use similar reasoning to conclude that outperforms
outperforms since it “completes” the colour class at each iteration. Therefore, if a norm is admitted at an earlier iteration (due to completion) than it otherwise would have been, then it will be curtailed with respect to fewer norms than otherwise. Therefore, although and both admit all norms, we can see that admits norms in a less curtailed state.
Since outperforms and outperforms , we see that also outperforms by transitivity.
A visual summary of which algorithms outperform one another can be seen in Figure 5.
4.5 Complexity of final algorithm
Since ColourCurtailComplete in Algorithm 5 is the most robust algorithm out of those we have introduced, let us informally derive its computational complexity.
Suppose we use a graph as an input into ColourCurtailComplete, where for some . Then in the worst-case scenario, we would use one colour for each vertex, creating an -colouring. This would mean that the loop on line 5 would be executed times. Within this loop, on line 5 we would consider at most vertices. However, the other inner loop on line 5 is more computationally expensive. Here, we would consider at most vertices, then for each of these vertices we would consider at most another vertices (which would happen when the vertex in question is connected to every other vertex via an edge).
Therefore, the worst-case computational complexity of ColourCurtailComplete is dependent on three nested loops, each of which considers at most items, so the complexity is . This result assumes that we are not constrained by the complexity of our graph colouring algorithm (as would be the case with DSatur, for example, which has worst-case running time ).
5 Empirical Evaluation
So far, we have mathematically proven results about the algorithms we presented, but we yet to empirically assess these algorithms. As and do not involve curtailment and instead consider binary decisions as to whether each norm should be admitted, we can compare these to the results of Oren et al. [1] — this would be an especially prudent comparison considering that their work formed a basis for our own.
After they presented normative conflict graphs, another contribution from Oren et al. is that they found a preferred extension, then admitted each norm corresponding to an argument in the preferred extension. We will compare the performance of and to the performance of that of a preferred extension. However, we do not expect these algorithms to surpass the performance of a preferred extension. As discussed in Section 4.3, and are not guaranteed to find a preferred extension of a graph — instead, they find an independent set (in the case of ) and extend it to a complete extension (in the case of ). Both of these notions are subsets (or equal to) a preferred extension. However, the merits of and are that they provide a stepping stone towards creating the more powerful variants, and . As such, the fact that and do not outperform a preferred extension should not diminish their worth. These empirical observations instead serve to provide insight into how much performance is lost by using and rather finding a preferred extension. The smaller the gap between the size of sets of admitted norms created by our algorithms and those of a complete extension, the greater a success we can consider our algorithms to be.
In Section 5.1, we will briefly summarise evaluations performed by Oren et al. on their own contributions. In Section 5.2, we will follow the methodology of Oren et al. to obtain a direct comparison of our contributions to theirs. We will then perform further evaluations through our own methodology in Section 5.3.
5.1 Evaluation by Oren et al. on their own work
Oren et al. [1] evaluated the performances of three heuristics for admitting norms with conflict graphs. The first heuristic, random drop, created a conflict-free set by repeatedly selecting a random edge in the conflict graph, then dropping the edge — this process repeats until the graph is conflict-free. The second heuristic, maximal conflict-free set, found the conflict-free set which was maximal wrt. the number of norms it contained, with ties being broken randomly. The final heuristic, preferred extension, found a preferred extension with the conflict graph, then admitted all norms corresponding to arguments in the extension.
These heuristics were evaluated by generating a system of 16 norms. The total number of (directional) conflicts between these norms ranged from 1 to 240 (222Though not explicitly discussed by Oren et al., 240 is the maximum number of edges possible in a directed graph with 16 edges. An undirected graph with vertices may have up to vertices, so an undirected graph with 16 edges has edges. We call a graph with the maximal number of edges a complete graph. A complete directed graph with 16 vertices has twice as many edges, giving 240 total.). For each possible number of conflicts, 10 trials were run for each of the three heuristics and the average number of norms admitted over these 10 trials was recorded. The results can be seen in Figure 6.

Oren et al. also point out that as the number of conflicts increases, the number of norms admitted goes down for all three heuristics.
5.2 Evaluations on our work and comparison to Oren et al.
By following the same methodology as Oren et al., we can obtain a direct comparison between the performances of and and the performances of the heuristics proposed by Oren et al.
Although Oren et al. use directed graphs and our algorithms are built for undirected graphs, we can still obtain a direct comparison by allowing directed edges and treating them as though they were undirected. This way, we can go up to 240 edges in our graph. All other hyperparameters for our trials will remain the same as with Oren et al.; the graph will always have 16 vertices, edges will be randomly picked, and each number of edges will be trialled 10 times for each algorithm before the average is taken.
First, let us consider . In Section 4.2, we showed that the policies of lex superior, lex posterior, and lex specialis can all be characterised in our algorithm by an arbitrary weak ordering. As such, we will consider the performance of our algorithm for both a weak ordering (Def. 3) and a heuristic which selects the largest colour overall class (Def. 4). Without loss of generality, a weak ordering was defined over the 16 norms by assigning each norm a unique integer representing their value from 1 to 16. We will use Brélaz’s DSatur algorithm [16] (Algorithm 2) for graph colouring. By following this methodology and the methodology of Oren et al. we obtain results which can be seen in Figure 7
As with Figure 6, we can see in Figure 7 that as the number of conflicts increases, the number of norms admitted decreases as expected. To obtain a direct comparison between our results and those of Oren et al., we can overlay Figures 6 and 7 directly — the results of doing so can be seen in Figure 8 333This was achieved by plotting our results over the same intervals as Oren et al. in each axis. GIMP, a photo manipulation program, was then used to scale raster images of the axes directly on top of one another before duplicate elements were erased..

Figure 8 shows us that outperforms the random drop heuristic in terms of number of norms admitted both when using a weak ordering and the maximal colour class heuristic. The amount of norms admitted when using the maximal colour class heuristic appears to be approximately on par with the maximal conflict-free set heuristic by Oren et al. This is encouraging as it shows that our use of graph colouring has not restricted us to only being able to select sets which are significantly smaller than the largest independent set (though as discussed in Section 4.3, there are cases where restrictions exist). When using weak orderings, was marginally outclassed by the maximal conflict-free set heuristic in terms of number of norms admitted — however, this is to be expected since the weak ordering heuristic’s strength comes from being able to admit the most important norms rather than the greatest overall number of norms. We can also see that the weak ordering and maximal colour class heuristic were both outperformed by the preferred extension heuristic, which as explained earlier in this section, is wholly expected
Let us now consider the performance of . We know that will always admit either the same amount of norms or more than when given the same heuristic. By following the same evaluation procedures, we obtain results which can be seen in Figure 9. In particular, Figure 9(b) shows these results laid over those of Oren et al., as we did earlier. Again, we see that performs roughly similarly to the maximal conflict-free set heuristic when we use the maximal colour class heuristic. However, a key difference compared to is that when we use a weak ordering as a heuristic, the number of norms we admit is roughly similar to the amount admitted under the maximal conflict-free set heuristic. Therefore, we can see that by “completing” our set of admitted norms, the number of newly added norms is greatest when we use a weak ordering, so heuristics based on weak orderings benefit the most from completion.

5.3 Further evaluation
We have so far compared our results to those of Oren et al. by using the same methodology. We can also do some brief comparisons between the algorithms we have presented so far. Figure 10 shows a direct comparison between the performances of and . The number of norms admitted is roughly the same for each algorthim under the maximal colour class heuristic, which serves to reaffirm our hypothesis that completing the admitted set is most beneficial when using a weak ordering. We can also see that the benefits of doing so are most pronounced when we have fewer conflicts between norms — this is to be expected, since it is easier to append more norms to the admitted set if there are fewer conflicts preventing us from doing so.
We can also observe that the maximal colour class heuristic appears to admit approximately the same number of norms under and , meaning that fewer extra norms are admitted by completing the colour class. This implies that, in practice, the largest colour class in a graph is often equal to the maximal independent set of vertices despite this not being a mathematical certainty.
Our evaluation has so far focused on the number of norms admitted by each algorithm. However, this metric neglects the importance of each norm when we use a weak ordering. We can evaluate this by using the same methodology we have been using throughout this section, though instead of counting the number of vertices admitted, we will count the number of times each norm we admit is more preferred than a conflicting norm which was not admitted. In other words, we will measure the value of the arbitrary weak ordering heuristic over the set of norms we admit. Further to this, the number of times each vertex in the set is less preferred than a conflicting vertex, we will subtract 1 from the heuristic’s value. This way, the sum of the heuristic values over all norms is 0, so we can judge the worth of an admitted set of norms by how much greater is value is than 0.
Since we are no longer following the methodology of Oren et al., we will no longer allow two edges between each vertex in the conflict graph and we will run 250 trials per number of edges rather than 10 trials. The results of measuring the heuristic values for and can be seen in Figure 11(a). Additionally, Figure 11(b) shows the same results, except where the score of the admitted set is measured as an average over the admitted vertices.
Surprisingly, we can see that using rather than did not result in a change in either the per-vertex score or the overall score of the set of admitted norms. We can also see from Figure 11(b) that the average score per vertex approaches 15 as the number of conflicts approaches its maximum of 120. This is as expected since when we have 120 conflicts, every norm conflicts with every other norm. The heuristic will therefore choose the most preferred norm in the whole set — this outranks every other norm in the weak ordering and therefore scores 15 by scoring 1 in each of its conflicts. On the other hand, when there are very few conflicts, the average score per vertex is near 0. This is to be expected since in this case we are likely to admit a large number of norms, only a few of which are involved in any conflicts.
5.3.1 A note on empirical evaluation of and
Although and were not evaluated, their performances outclass those of and respectively (see Section 4.4.1). However, the introduction of curtailment means that we cannot use similar methodology to Oren et al. since the question of a norm’s admittance is no longer binary. Rather, we choose the extent to which a norm should be curtailed. This requires more complex and nuanced evaluation, which we will not include in this paper. However, evaluating the performances of and relative to other methods of resolving normative conflicts may be a potential avenue for future research.
6 Further work
The framework we have introduced opens up various avenues for further work. For example, one could attempt to create a similar system where instead of following a heuristic equivalent a policy for normative conflict resolution, the system would resolve conflicts by using semantics and criteria within the field of argumentation. Such criteria may include the last link or weakest link criteria for defeating arguments [11], as discussed in Section 3.2. It may also be interesting to attempt to find other heuristics which cannot be characterised as a weak ordering (as with the maximal colour class heuristic). Trust-based heuristics [8, 10] may fall under this category.
Alternatively, one could consider a system similar to ours which relies on a conflict graph, though where the edges in the conflict graphs are directed — that is, one argument could attack or conflict with another without the other attacking back. This would allow for graph pruning algorithms, such as those put forth by Oren et al. [1], to be used. These would reduce the number of normative conflicts and therefore reduce the number of edges in the conflict graph. Having fewer edges in the graph generally allows us to use fewer colours when colouring the graph and therefore allows more arguments to be admitted.
One could also investigate whether the algorithms presented in this paper could be modified to produce a preferred extension or a stable extension (detailed in [2]). It may be possible to produce these types of extensions by using a specific graph colouring algorithm which prioritises a specific colour class and therefore assigns as many vertices as possible to this colour — one could then use the heuristic to select this large colour class. The challenge here arises from guaranteeing that this large colour class is a maximal independent set. For a further challenge, one could try to create a colouring which corresponds to a stable extension, where each argument which is not in the extension is attacked by an argument which is in the extension. To achieve this, one would have to ensure that each vertex either belongs to a given colour class or is connected to a vertex with the given colour class via an edge whilst remaining a valid colouring.
Another area for investigation is how the order in which vertices are considered in ColourResolveComplete (Algorithm 3) affects which complete extension is found. For example, one could raise the question of whether a specific heuristic generate a preference ordering which always results in a preferred or stable extension.
For many of the challenges listed in this section, it may be prudent to investigate the link between maximum independent sets in graphs and graph colouring. For this, the work of Eppstein [17], which involves finding exact graph colourings by listing independent sets, may be useful. It may also be useful to investigate preference-based graph colouring, as with Koseki et al. [18]. Other avenues may include using more robust graph colouring algorithms, where methods such as those discussed by Lewis et al. [19] could be used.
7 Conclusion
We have used normative reasoning as the baseline for our problem with the goal of resolving normative conflicts. From there, we applied argumentation in the style of Dung [2] and conflict graphs in the style of Oren et al. [1], allowing us to use results from the field of graph theory. In our case, we applied graph colouring and briefly showed the efficient and easily comprehensible DSatur graph colouring algorithm by Brélaz [16].
We introduced the notion of a heuristic function to assign a value to each conflict-free set of norms corresponding to each colour class, allowing us to introduce our first algorithm, ColourResolve, in Algorithm 1. We discussed the versatility and shortcomings of ColourResolve and showed in Proposition 1 that ColourResolve always produces an admissible set. We showed some possible heuristics one could use with ColourResolve and demonstrated the equivalence of heuristics based off of weak orderings when using our algorithm. We then introduced ColourResolveComplete (Algorithm 3), which we proved would always produce a complete extension.
We then discussed the notion of curtailment in the style of Vasconcelos et al. [5], allowing us to create a preference ordering over colours and admit norms corresponding to more than one colour in ColourCurtail (Algorithm 4). By combining this with the logic of ColourResolve, we introduced our most robust algorithm, ColourCurtailComplete (Algorithm 5), which has computational complexity . ColourCurtailComplete finds a graph colouring, then generates an order of preferences over norms corresponding to each colour class according to some heuristic. It then iterates over each colour class in descending order of preference and admits as many vertices as possible into the given colour class. It then uses curtailment to resolve any conflicts between the current colour class and any colour classes which have been admitted so far, then admits the colour class into the resulting set of norms.
Empirical evaluations were performed to compare and both to each other and to heuristics by Oren et al. [1]. We observed that, in practice, and performed approximately similar to choosing a maximal conflict-free set despite their theoretical limitations. We also observed that when we use a weak ordering as a heuristic, and achieve approximately the same heuristic score for admitted vertices.
In terms of our original goals we outlined in Section 1 and refined in Section 3, we have successfully created a system which is compatible with the policies of lex superior, lex posterior, and lex specialis, and we have successfully ensured that the results align with argumentation-based notions (in our case, complete extensions). By using the notion of curtailment, we were also able to successfully admit norms which directly conflict with one another, allowing all norms to be admitted in some form.
The results put forth in this paper could potentially be used in their own right or could be used to create more complex methods of conflict resolution via graph colouring. In terms of direct applications, single-agent or multi-agent systems which use norms may benefit from the algorithms proposed in this paper, including models for safe reinforcement learning, real-world intelligent agents, or systems aiming to uphold safety constraints. There may also be further avenues for research into the links between argumentation, normative reasoning, and graph theory. Other graph-theoretic notions involving independent sets may hold interesting results since they necessarily translate into conflict-free sets of norms.
References
- [1] Nir Oren, Michael Luck, Simon Miles, and Timothy J Norman. An argumentation inspired heuristic for resolving normative conflict. In Proceedings of the Fifth Workshop on Coordination, Organizations, Institutions and Norms in Agent Systems, 2008.
- [2] Phan Minh Dung. On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming and -person games. Artificial Intelligence, 77(2):321–357, 1995.
- [3] Richard M Karp. Reducibility among combinatorial problems. In Complexity of computer computations, pages 85–103. Springer, 1972.
- [4] Rhyd Lewis. A Guide to Graph Colouring: Algorithms and Applications. Springer, 1st edition, 2015.
- [5] Wamberto W Vasconcelos, Martin J Kollingbaum, and Timothy J Norman. Normative conflict resolution in multi-agent systems. Autonomous Agents and Multi-Agent Systems, 19(2):124–152, 2009.
- [6] John F Horty. Moral dilemmas and nonmonotonic logic. Journal of Philosophical Logic, 23(1):35–65, 1994.
- [7] Christian Straßer and Ofer Arieli. Normative reasoning by sequent-based argumentation. Journal of Logic and Computation, 29(3):387–415, 2019.
- [8] Simon Parsons, Elizabeth Sklar, and Peter McBurney. Using argumentation to reason with and about trust. In International Workshop on Argumentation in Multi-Agent Systems, pages 194–212. Springer, 2011.
- [9] Simon Parsons, Yuqing Tang, Elizabeth Sklar, Peter McBurney, and Kai Cai. Argumentation-based reasoning in agents with varying degrees of trust. In The 10th International Conference on Autonomous Agents and Multiagent Systems, volume 2, pages 879–886, 2011.
- [10] Sarah N Lim Choi Keung and Nathan Griffiths. Using recency and relevance to assess trust and reputation. In Proceedings of AISB 2008 Symposium on Behaviour Regulation in Multi-Agent Systems. The Society for the Study of Artificial Intelligence and Simulation of Behaviour, volume 4, pages 13–18, 2008.
- [11] Beishui Liao, Nir Oren, Leon van der Torre, and Serena Villata. Prioritized norms and defaults in formal argumentation. Deontic Logic and Normative Systems (2016), 2016.
- [12] Leila Amgoud and Jonathan Ben-Naim. Ranking-based semantics for argumentation frameworks. In International Conference on Scalable Uncertainty Management, pages 134–147. Springer, 2013.
- [13] Gerhard Brewka and Thomas Eiter. Preferred answer sets for extended logic programs. Artificial intelligence, 109(1-2):297–356, 1999.
- [14] Dov M Gabbay. Dung’s argumentation is essentially equivalent to classical propositional logic with the peirce–quine dagger. Logica universalis, 5(2):255, 2011.
- [15] Sanjay Modgil and Michael Luck. Argumentation based resolution of conflicts between desires and normative goals. In International Workshop on Argumentation in Multi-Agent Systems, pages 19–36. Springer, 2008.
- [16] Daniel Brélaz. New methods to color the vertices of a graph. Communications of the ACM, 22(4):251–256, 1979.
- [17] David Eppstein. Small maximal independent sets and faster exact graph coloring. J. Graph Algorithms Appl, 7(2):131–140, 2002.
- [18] Akira Koseki, Hideaki Komatsu, and Toshio Nakatani. Preference-directed graph coloring. In Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, PLDI ’02, page 33–44, New York, NY, USA, 2002. Association for Computing Machinery.
- [19] Rhyd Lewis, J Thompson, C Mumford, and J Gillard. A wide-ranging computational comparison of high-performance graph colouring algorithms. Computers & Operations Research, 39(9):1933–1950, 2012.
Appendix A Copy of code used
The Python code shown below was used to run trials with . Equivalent trials were run with by removing the block of code which “completes” the admitted set.
After the above code has was run, the code below was used to run trials where the heuristic scores of vertices in the admitted set were measured.