Professional Documents
Culture Documents
CNTT Merge
CNTT Merge
Multi-Agent Systems
Chapter 1 - Introduction
Dr Terry R. Payne
Department of Computer Science
Five Trends in the History of Computing
• ubiquity;
• interconnection;
• intelligence;
• delegation;
• human-orientation.
2 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Ubiquity
• Continual reduction in cost of computing makes it
possible to introduce processing power into places and
devices that would have once been uneconomic.
• Google announced
“Home” in May 2016, with
a launch date planned in
Nov 2016
4 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Interconnection
• Computer systems no longer stand alone, but are networked
into large distributed systems.
• One example:
• fly-by-wire aircraft, where the machine’s judgment may be
trusted more than an experienced pilot
• the Grid/Cloud;
• ubiquitous computing;
• semantic web.
• a natural development of computer science; This article is probably the best survey
of the problems and issues associated
• a natural means to handle ever more distributed with multiagent systems. Most of the
systems; and issues are fundamentally still open!
Dr Terry R. Payne
Department of Computer Science
What is an Agent?
• The main point about agents is they are autonomous:
capable independent action.
Perception
}
perce
e dback
fe
pts
Decision
environment
}
action
s
Action
effectors/actuators
• Autonomy is adjustable
• Decisions handed to a higher authority when this is beneficial
4 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Simple (Uninteresting) Agents
• Control Systems
• Example: Thermostat (physical environment)
• delegated goal is maintain room temperature
• actions are heat on/off
• Software Demons
• Example: UNIX biff program (software environment)
• delegated goal is monitor for incoming email and flag it
• actions are GUI actions.
“... We made our agents dumber and dumber and dumber . . . until finally they made money...”
• Deterministic vs non-deterministic.
• A deterministic environment is one in which any action has a single guaranteed effect — there is
no uncertainty about the state that will result from performing an action.
• The physical world can to all intents and purposes be regarded as non-deterministic.
• We'll follow Russell and Norvig in calling environments stochastic if we quantify the non-
determinism using probability theory.
• Non-deterministic environments present greater problems for the agent designer.
• Static vs dynamic.
• A static environment is one that can be assumed to remain unchanged except by the
performance of actions by the agent.
• A dynamic environment is one that has other processes operating on it, and which hence
changes in ways beyond the agent’s control.
• The physical world is a highly dynamic environment.
• One reason an environment may be dynamic is the presence of other agents.
• Real time
• A real time interaction is one in which time plays a part in evaluating an agents performance
• Such interactions include those in which:
• A decision must be made about some action within a given time bound
• Some state of affairs must occur as quickly as possible
• An agent has to repeat some task, with the objective to repeat the task as often as possible
• For example:
• You have one TV in your house; you want to watch a
movie, your housemate wants to watch football.
• A possible deal: watch football tonight, and a movie
tomorrow.
• Benevolence
• Rationality • Whether agents have conflicting goals,
• Whether an agent will act in order to and thus whether they are inherently
achieve its goals, and will not helpful.
deliberately act so as to prevent its
goals being achieved.
• Learning/adaption
• Whether agents improve performance
over time.
• Put crudely, the more we know about a system, the less we need to rely on
animistic, intentional explanations of its behaviour.
• But with very complex systems, a mechanistic, explanation of its behaviour may
not be practicable.
• As computer systems become ever more complex, we need more powerful abstractions and
metaphors to explain their operation — low level explanations become impractical.
• The intentional stance is such an abstraction.
• This intentional stance is an abstraction tool... So why not use the intentional
• ... a convenient way of talking about complex systems, which allows stance as an abstraction tool in
us to predict and explain their behaviour without having to understand
computing — to explain,
how the mechanism actually works.
understand, and, crucially,
program computer systems,
• Most important developments in computing are based through the notion of “agents”?
on new abstractions:
• procedural abstraction, abstract data types, objects, etc
North
North
38 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Abstract Architectures for Agents (2)
• When actions are deterministic each state has only one possible
successor.
• A run would look something like the following:
East
North
39 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Abstract Architectures for Agents
North
North
We could illustrate
this as a graph...
North
North
• Let: R be the set of all such possible finite sequences (over E and Ac);
Ac
R be the subset of these that end with an action; and
RE be the subset of these that end with a state.
R(Ag, Env)
2. ↵0 = Ag(e0 ); and
3. for u > 0,
eu 2 ⌧ ((e0 , ↵0 , . . . , ↵u 1 )) and
↵u = Ag((e0 , ↵0 , . . . , eu ))
Environment
see action
Agent
next state
u:E!R
• Disadvantage:
• difficult to specify a long term view when assigning utilities to individual states.
• One possibility:
• a discount for states later on. This is what we do in reinforcement learning.
58 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example of local utility function
• Goal is to select actions to maximise r = -0.04 (unless stated otherwise)
future rewards 1
r=+1
👍
• Each action results in moving to a state with some r=-1
assigned reward 2
👎
• Allocation of that reward may be immediate or delayed
3
(e.g. until the end of the run)
• It may be better to sacrifice immediate reward to gain 1 2 3 4
more long-term reward
3
• Could also reach the goal accidentally by going the
wrong way round: 1 2 3 4
• p = 0.14 x 0.8 = 0.0001 x 0.8 = 0.00008 p=0.8
• Final probability of reaching the goal: p = 0.32776 p=0.1
Non-Deterministic Environment
• Utility gained depends on the route taken Agent may fail to reach its intended
cell (i.e. probability of success = 0.8, p=0.1
• We will see later how to compute this… but may move sideways with p=0.1
in each direction
• Reinforcement Learning builds upon this type of model
61 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Utilities over Runs
• Another possibility: assigns a utility not to individual states, but to
runs themselves:
u:R!R
• Such an approach takes an inherently long term view.
• Other variations:
• incorporate probabilities of different states emerging.
and clearly:
X
P (r | Ag, Env) = 1.
r2R(Ag,Env)
• That is, for each run we compute the utility and multiply it
by the probability of the run.
“... Compound lotteries can be reduced to simpler ones using the law of
probability. Known as the “no fun in gambling” as two consecutive
lotteries can be compressed into a single equivalent lottery….”
p
e1 e1
p
e0 q e3 is equivalent to e0 q(1-p)
e3
(1-p) e2
(1-p)(1-q) e4
(1-q) e4
67 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Optimal Agents
• The optimal agent Agopt in an environment Env is the one
that maximizes expected utility:
Example 1 as follows:
↵0
P (e0 ! e1 | Ag1 , Env1 ) = 0.4
↵0
P (e0 ! e2 | Ag1 , Env1 ) = 0.6
↵1
P (e0 ! e3 | Ag2 , Env1 ) = 0.1
Consider the environment Env1 = hE, e0 , ⌧ i ↵1
defined as follows: P (e0 ! e4 | Ag2 , Env1 ) = 0.2
↵1
P (e0 ! e5 | Ag2 , Env1 ) = 0.7
E = {e0 , e1 , e2 , e3 , e4 , e5 }
↵0 Assume the utility function u1 is defined
⌧ (e0 !) = {e1 , e2 } as follows:
↵1
⌧ (e0 !) = {e3 , e4 , e5 } ↵0
u1 (e0 ! e1 ) = 8
↵0
There are two agents possible with respect u1 (e0 ! e2 ) = 11
to this environment: ↵1
u1 (e0 ! e3 ) = 70
Ag1 (e0 ) = ↵0 ↵1
u1 (e0 ! e4 ) = 9
Ag2 (e0 ) = ↵1 ↵1
u1 (e0 ! e5 ) = 10
This is equivalent to calculating the sum of the product of each utility for a run
ending in some state with the probability of performing that run; i.e.
e 1) =
e1
u= .5
3+ 4
(e e
u( ⟶
0
2=
u( 0⟶
e 0 5
e0 ⟶ e p(
2)
= e
e2 ) 0.5 2 e0p
=3 = 3
1 (e e 4) . 4
=1 . 5 u( 0 ⟶ =0
7 0
= e e0 ⟶ ⟶ ) e
4 + . 0 3 e2 ) e 2 e 4 4
u = 1 u ( ⟶
0 .5
⨉ e2 ) =0 (e 2
p= =3 .9 p
Find sum of e0 e2
p(
u( e2 ⟶
utilities for p=
u= .50
e2 ⟶
e5 ) Agent 2
e5 ) = e5
each run 3 e2 =2 0.6
74 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example 2 solution
Run Utility Probability
: R ! {0, 1}
: R ! {0, 1}
We could also write this as: A more optimistic idea of success is:
8r 2 R(Ag, Env), we have (r) = 1 9r 2 R(Ag, Env), we have (r) = 1
However, this is a bit pessimistic: if the agent which counts an agent as successful as soon as it
fails on a single run, we say it has failed overall. completes a single successful run.
79 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
The Probability of Success
• If the environment is non-deterministic, the τ returns a set
of possible states.
• We can define a probability distribution across the set of states.
• Let P(r | Ag, Env) denote probability that run r occurs if agent Ag is placed
in environment Env.
• Then the probability P(Ψ | Ag, Env) that Ψ is satisfied by Ag in Env would
then simply be:
X
P( | Ag, Env) = P (r | Ag, Env)
r2R (Ag,Env)
Dr Terry R. Payne
Department of Computer Science
Agent Architectures
• Pattie Maes (1991) • Leslie Kaebling (1991)
“... [A] particular methodology for building
[agents]. It specifies how . . . the agent can be
decomposed into the construction of a set of
“... [A] specific collection of software (or
component modules and how these modules
hardware) modules, typically designated by
should be made to interact. The total set of
boxes with arrows indicating the data and
modules and their interactions has to provide
control flow among the modules. A more
an answer to the question of how the sensor
abstract view of an architecture is as a general
data and the current internal state of the agent
methodology for designing particular modular
determine the actions . . . and future internal
decompositions for particular tasks ...”
state of the agent. An architecture
encompasses techniques and algorithms that
support this methodology ...”
The transduction problem is that of translating the How to symbolically represent information about
real world into an accurate, adequate symbolic complex real-world entities and processes, and
description, in time for that description to be how to get agents to reason with this information
useful. in time for the results to be useful.
This has led onto research into vision, speech This has led onto research into knowledge
understanding, learning… representation, automated reasoning, planning…
• Let:
• ρ be this theory (typically a set of rules);
• ∆ be a logical database that describes the current state of the world;
• Ac be the set of actions the agent can perform;
• ∆ ⊢ρ φ means that φ can be proved from ∆ using ρ.
see : E ! P er
• of course, this is (much) easier said than done.
Possible Actions:
Ac = {turn, forward, suck}
0
Note: turn means “turn right”
0 1 2
2
• ... and so on!
1
• Using these rules (+ other obvious
ones), starting at (0, 0) the robot will 0
clear up dirt. 0 1 2
12 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
The Vacuum World
• Problems: • Typical solutions:
• how to convert video camera • weaken the logic;
input to Dirt(0, 1)?
• use symbolic, non-logical
• decision making assumes a static representations;
environment:
• shift the emphasis of reasoning
• calculative rationality. from run time to design time.
• decision making using first-order
logic is undecidable!
• The key component, which determines how the agent acts, is the
commitment rule set.
• Each commitment rule contains
• a message condition;
• a mental condition; and
• an action.
follows: COMMIT(
( agent, REQUEST, DO(time, action)
}
• important(Prolog) means “sometime in the past it was true
that Prolog was important”
discussed...
• ...how can deductive reasoning be achieved through the use of logic; and This paper introduced agent-oriented
programming and throughout the late
• ...the Transduction and Representation Problems
90ies was one of the most cited
• We introduced the concept of Agent Oriented Programming, articles in the agent community. One
and looked at examples of AOP languages, including: of the main points was the notion of
using mental states, and introduced
• Agent0 and PLACA the programming language Agent0.
• Concurrent MetateM and temporal logic
Dr Terry R. Payne
Department of Computer Science
Pro-Active Behaviour
• Previously we looked at:
• Characteristics of an Agent and its Environment
• The Intentional Stance
• Translating the Formal Agent model into a Deductive Logic framework
• We said:
• An intelligent agent is a computer system capable of flexible autonomous action in some environment.
• Where by flexible, we mean:
• reactive;
• pro-active;
• social.
• This is where we deal with the “proactive” bit, showing how we can program
agents to have goal-directed behaviour.
2. Intentions provide a “filter” for adopting other intentions, which must not conflict.
If I have an intention to φ, you would not expect me to adopt an intention ψ that was
incompatible with φ.
3. Agents track the success of their intentions, and are inclined to try again if their
attempts fail.
If an agent’s first attempt to achieve φ fails, then all other things being equal, it will try an
2.
alternative plan to achieve φ.
!5 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Intentions in Practical Reasoning
4. Agents believe their intentions are possible.
That is, they believe there is at least some way that the intentions could be brought about.
5. Agents do not believe they will not bring about their intentions.
6. Under certain circumstances, agents believe they will bring about their
intentions.
• If I intend φ, then I believe that under “normal circumstances” I will succeed with φ.
!6 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Intentions in Practical Reasoning
7. Agents need not intend all the
expected side effects of their
intentions.
If I believe φ ψ and I intend that φ,
I do not necessarily intend ψ also.
Plan to Achieve
Goal
!10 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
STRIPS Planner
• STRIPS
• The Stanford Research Institute Problem Solver
• Used by Shakey, the robot
• Developed by Richard Fikes and Nils Nilsson in 1971 at SRI
International
!11 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Representations
• Question: How do we represent. . .
• goal to be achieved;
• state of environment;
• actions available to agent;
• plan itself.
!12 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Blocksworld
• We’ll illustrate the techniques with A
reference to the blocks world.
• A simple (toy) world, in this case one where we
B C
consider toys
!14 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Blocksworld Actions
• Each action has:
• a name: which may have arguments;
• a pre-condition list: list of facts which must be true for
action to be executed;
• a delete list: list of facts that are no longer true after action
is performed;
• an add list: list of facts made true by executing the action.
U nStack(x, y)
pre On(x, y) ^ Clear(x) ^ ArmEmpty P utDown(x)
pre Holding(x)
del On(x, y) ^ ArmEmpty
del Holding(x)
add Holding(x) ^ Clear(y)
add OnT able(x) ^ ArmEmpty ^ Clear(x)
!16 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Using Plans
Stack(x, y)
pre Clear(y) ^ Holding(x)
To get from here (left) to here (right)... del Clear(y) ^ Holding(x)
add ArmEmpty ^ On(x, y)
A
A B U nStack(x, y)
C pre On(x, y) ^ Clear(x) ^ ArmEmpty
B C
del On(x, y) ^ ArmEmpty
add Holding(x) ^ Clear(y)
...we need this set of actions:
P ickup(x)
UnStack(A,B)
pre Clear(x) ^ OnT able(x) ^ ArmEmpty
Putdown(A) del OnT able(x) ^ ArmEmpty
Pickup(B) add Holding(x)
Stack(B, C)
Pickup(A) P utDown(x)
pre Holding(x)
Stack(A, B) del Holding(x)
add OnT able(x) ^ ArmEmpty ^ Clear(x)
!17 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Plan Validity
!18 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Formal Representation
• Let’s relate the STRIPS model back to the formal description of an agent we talked
about before.
• This will help us to see how it fits into the overall picture.
• As before we assume that the agent has a set of actions Ac, and we will write
individual actions as α1, α2 and so on.
• A plan is just a sequence of actions, where each action is one of the actions from Ac:
⇡ = (↵1 , . . . , ↵n )
!19 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Formal Representation
• A planning problem is therefore: B0, Ac, I
• B0 is the set of beliefs the agent has about the world.
• Ac is the set of actions, and
• I is a goal (or intention)
• Since actions change the world, any rational agent will change its beliefs
about the world as a result of carrying out actions.
• Thus, a plan π for a given planning problem will be associated with a sequence of sets of
beliefs:
↵1 ↵2 ↵n
B0 ! B1 ! · · · ! Bn
• In other words at each step of the plan the beliefs are updated by removing the items in the
delete list of the relevant action and adding the items in the add list.
!20 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Formal Representation
• A plan π is said to be acceptable with respect to the
problem B0, Ac, I if and only if, for all 1 ≤ j ≤ n, Bj-1 ⊨ Pαj
• In other words, the pre-requisites for each action have to be true right
before the action is carried out.
• We say this because the pre-conditions don’t have to be in Bj-1, we just have to be able to prove
the pre-conditions from Bj-1.
!21 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example - Question 2.b
T h is
is a
que n ex
s t io a m
n fr ple
M oc om
k pa the
per
!22 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
A plan ⇡ is a sequence of actions, where each action results in changing the
set of beliefs the agent has, until the final set of beliefs matches that of the
↵1 ↵2 ↵n
intentions, such that B0 ! B1 ! · · · ! Bn . Therefore, a planner will explore
all the di↵erent possible sequences of actions to determine which one will result
in the final set of intentions.
In this solution, only those actions that result in the final solution are given,
with the set of beliefs that result in each step presented. The aim is to start
with an initial set of beliefs, B0 , and arrive at a final set of beliefs, Bn which
corresponds to the intentions given in the question - i.e.
Belief s B0 Intention i
Clear(B) Clear(A)
Clear(C) Clear(B)
On(C, A) On(B, C)
C
OnT able(A) OnT able(A) A B
OnT able(B) OnT able(C)
ArmEmpty ArmEmpty
The solution is given on the next slide. In each case, the beliefs that hold prior
to the action are given in bold, and the beliefs that are new after the action are
also presented in bold.
!23 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Belief s B0 Action Belief s B1 Belief s B2 Action Belief s B3
Clear(B) U nstack(C, A) Clear(B) Clear(B) P ickup(B) Clear(B)
Clear(C) Clear(C) Clear(C) Clear(C)
On(C, A) On(C, A) OnT able(A) OnT able(A)
OnT able(A) OnT able(A) OnTable(B) OnT able(B)
OnT able(B) C OnT able(B) Clear(A) B Clear(A)
ArmEmpty ArmEmpty OnT able(C) OnT able(C)
A B Holding(C) ArmEmpty A C ArmEmpty
Clear(A) Holding(B)
The beliefs B4, once rearranged, are now equivalent to the intentions.
!24 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Action Definitions are important!!!
One
defi of t
n i ti hese
The ons
othe wo r
r do ks.
esn’
t!
!25 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Implementing Practical Reasoning Agents
!26 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Implementing Practical Reasoning Agents
• see is as before:
Environment
• see: E → Percept
percepts actions
• Instead of the function next…
• which took a percept and used it to update the see action
internal state of an agent Agent
!28 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Implementing Practical Reasoning Agents
• Let’s make the algorithm more
formal with the algorithm opposite Agent Control Loop Version 2
• where I ⊆ Int, i.e the set of intentions, 1. B := B0 ; /* initial beliefs */
2. while true do
• plan() is exactly what we discussed above, 3. get next percept ⇢;
4. B := brf (B, ⇢);
• brf() is the belief revision function, 5. I := deliberate(B);
• and execute() is a function that executes 6.
7.
⇡ := plan(B, I);
execute(⇡)
each action in a plan. 8. end while
!31 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Implementing Practical Reasoning Agents
Agent Control Loop Version 3
1. B := B0 ;
2. I := I0 ;
3. while true do
4. get next percept ⇢;
5. B := brf (B, ⇢);
6. D := options(B, I);
7. I := f ilter(B, D, I);
8. ⇡ := plan(B, I);
9. execute(⇡)
10. end while
!32 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Under Commitment
P. R. Cohen and H. J. Levesque (1990). Intention is choice with commitment. Artificial intelligence, 42(2), 213-261.
!33 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Over Commitment
P. R. Cohen and H. J. Levesque (1990). Intention is choice with commitment. Artificial intelligence, 42(2), 213-261.
!34 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Wise Guy ???
“... After still more tinkering, the manufacturer sends
Willie back, promising no more problems with its
commitments. So, being a somewhat trusting customer,
you accept the rascal back into your household, but as a
test, you ask it to bring you your last beer. [. . . ]
The robot gets the beer and starts towards you. As it
approaches, it lifts its arm, wheels around, deliberately
smashes the bottle, and trundles off. Back at the plant,
when interrogated by customer service as to why it had
abandoned its commitments, the robot replies that
according to its specifications, it kept its commitments as
long as required — commitments must be dropped when
fulfilled or impossible to achieve. By smashing the bottle,
the commitment became unachievable...”
P. R. Cohen and H. J. Levesque (1990). Intention is choice with commitment. Artificial intelligence, 42(2), 213-261.
!35 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Degrees of Commitment
• Blind commitment
• A blindly committed agent will continue to maintain an intention until it believes the
intention has actually been achieved. Blind commitment is also sometimes referred to as
fanatical commitment.
• Single-minded commitment
• A single-minded agent will continue to maintain an intention until it believes that either the
intention has been achieved, or else that it is no longer possible to achieve the
intention.
• Open-minded commitment
• An open-minded agent will maintain an intention as long as it is still believed possible.
!36 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Degrees of Commitment
• An agent has commitment • Currently, our agent control
both to: loop is overcommitted,
• ends (i.e., the state of affairs it both to means and ends.
wishes to bring about), and
• Modification: replan if ever a plan
• means (i.e., the mechanism via goes wrong.
which the agent wishes to
• However, to write the algorithm
achieve the state of affairs). down we need to refine our
notion of plan execution.
!37 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Degrees of Commitment Agent Control Loop Version 4
1. B := B0 ;
2. I := I0 ;
3. while true do
• The previous version was blindly 4. get next percept ⇢;
1. B := B0 ;
2. I := I0 ;
3. while true do
• Blind Commitment 4.
5.
get next percept ⇢;
B := brf (B, ⇢);
• Modification:
3. while true do
4. get next percept ⇢;
5. B := brf (B, ⇢);
• stop to determine whether intentions have 6. D := options(B, I);
succeeded or whether they are impossible 7. I := f ilter(B, D, I);
8. ⇡ := plan(B, I);
9. while not( empty(⇡)
• Our agent now gets to reconsider its or succeeded(I, B)
intentions once every time around the 10.
or impossible(I, B)) do
↵ := hd(⇡);
outer control loop (line 9), i.e., after: 11. execute(↵);
12. ⇡ := tail(⇡);
• it has completely executed a plan to achieve its 13. get next percept ⇢;
current intentions; or 14. B := brf (B, ⇢);
15. if not sound(⇡, I, B) then
• it believes it has achieved its current intentions; or 16. ⇡ := plan(B, I)
17. end-if
• it believes its current intentions are no longer 18. end-while
possible. 19. end-while
!40 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Agent Control Loop Version 6
Intention Reconsideration 1.
2.
B := B0 ;
I := I0 ;
3. while true do
• A dilemma:
4. get next percept ⇢;
5. B := brf (B, ⇢);
6. D := options(B, I);
• an agent that does not stop to reconsider its intentions 7. I := f ilter(B, D, I);
sufficiently often will continue to attempt to achieve its 8. ⇡ := plan(B, I);
intentions even after it is clear that they cannot be 9. while not(empty(⇡)
or succeeded(I, B)
achieved, or that there is no longer any reason for or impossible(I, B)) do
achieving them; 10. ↵ := hd(⇡);
11. execute(↵);
• an agent that constantly reconsiders its attentions may 12. ⇡ := tail(⇡);
spend insufficient time actually working to achieve 13. get next percept ⇢;
them, and hence runs the risk of never actually achieving 14. B := brf (B, ⇢);
if reconsider(I, B) then
them. 15.
16. D := options(B, I);
17. I := f ilter(B, D, I);
Intention Reconsideration
or succeeded(I, B)
or impossible(I, B)) do
10. ↵ := hd(⇡);
11. execute(↵);
12. ⇡ := tail(⇡);
13. get next percept ⇢;
Situation Chose to Changed Would have reconsider(. . .)
14. B := brf (B, ⇢);
number deliberate? intentions? changed intentions? optimal?15. if reconsider(I, B) then
1 No — No Yes 16. D := options(B, I);
2 No — Yes No 17. I := f ilter(B, D, I);
3 Yes No — No 18. end-if
4 Yes Yes — Yes 19. if not sound(⇡, I, B) then
12. ⇡ := plan(B, I)
21. end-if
22. end-while
• In situation (1), the agent did not choose to deliberate, and as a consequence,
23. end-whiledid not choose to change
intentions. Moreover, if it had chosen to deliberate, it would not have changed intentions. In this situation, the
reconsider(. . .) function is behaving optimally.
• In situation (2), the agent did not choose to deliberate, but if it had done so, it would have changed
intentions. In this situation, the reconsider(. . .) function is not behaving optimally.
• In situation (3), the agent chose to deliberate, but did not change intentions. In this situation, the
reconsider(. . .) function is not behaving optimally.
• In situation (4), the agent chose to deliberate, and did change intentions. In this situation, the
reconsider(. . .) function is behaving optimally.
!44 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Optimal Intention Reconsideration
• Kinny and Georgeff’s experimentally
investigated effectiveness of intention
reconsideration strategies.
• ACHIEVE blocks_stacked.
GOAL:
ACHIEVE blocks_stacked;
CONTEXT:
BODY:
EXECUTE print "Goal: Blk1 on Blk2 on Blk3 on Table.\n";
EXECUTE print "World Model at start is:\n";
EXECUTE printWorldModel;
• Note that the body contains a EXECUTE print "ACHIEVEing Block3 on Table.\n";
• When executing, the goals will EXECUTE print "ACHIEVEing Block1 on Block2.\n";
ACHIEVE ON "Block1" "Block2";
!49 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example PRS (JAM) System
Plan: {
• This plan also has a NAME: "Stack blocks that are already clear"
GOAL:
utility associated with it ACHIEVE ON $OBJ1 $OBJ2;
CONTEXT:
!50 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example PRS (JAM) System
• This plan includes an Plan: {
NAME: "Clear a block"
EFFECTS field GOAL:
ACHIEVE CLEAR $OBJ;
CONTEXT:
FACT ON $OBJ2 $OBJ;
instructions.
!51 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Example PRS (JAM) System
Plan: {
• http://www.marcush.net/IRS/ FAILURE:
EXECUTE print "\n\nMove failed!\n\n";
irs_downloads.html }
!52 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Summary
• This lecture has covered a lot of ground on Class Reading (Chapter 4):
practical reasoning.
“Plans and resource-bounded practical
• We started by discussing what practical reasoning was, and reasoning”, Michael E. Bratman, David J.
how it relates to intentions. Israel, Martha E. Pollack. Computational
Intelligence 4: 1988. pp349-355.
• We then looked at planning (how an agent achieves its desires)
and how deliberation and means-ends reasoning fit into the
basic agent control loop. This is an interesting, insightful article,
with not too much technical content.
• We then refined the agent control loop, considering commitment It introduces the IRMA architecture for
and intention reconsideration. practical reasoning agents, which has
been very influential in the design of
• Finally, we looked at an implemented system (the textbook subsequent systems.
discusses a couple of others).
Dr Terry R. Payne
Department of Computer Science
Reactive Architectures
• There are many unsolved (some would say insoluble) problems
associated with symbolic AI.
• These problems have led some researchers to question the viability of the whole
paradigm, and to the development of reactive architectures.
• Although united by a belief that the assumptions underpinning mainstream AI are in
some sense wrong, reactive agent researchers use many different techniques.
Avoid Obstacles
Reset
Inhibition Suppression
Sensors Behaviour Model Actuators
Obstacle
Avoidance
Wall Following
... High
2
2. Any samples carried by agents are dropped back at the if carrying a sample and at the
mother-ship. base then drop sample
Priority
3. If not at the mother-ship, then navigate back there. if carrying a sample and not at
the base then travel up gradient
• The “gradient” in this case refers to a virtual “hill” radio signal that slopes up to
the mother ship/base.
4
if detect a sample then pick
4. Agents will collect samples they find. sample up
Low ...
5
5. An agent with “nothing better to do” will explore randomly.
if true then move randomly
This is the highest-level behaviour (and hence lowest level
“priority”).
17 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Steel’s Mars Explorer System
•Existing strategy works well when samples are 3’
if carrying samples and not at
distributed randomly across the terrain. the base then drop 2 crumbs and
travel up gradient.
•However, samples are located in clusters
4.5
•Agents should cooperate with each other to locate clusters
if sense crumbs then pick up 1
crumb and travel down gradient
•Solution to this is based on foraging ants.
•Agents leave a “radioactive” trail of crumbs when returning
to the mother ship with samples.
•If another agent senses this trail, it follows the trail back to the source of the
samples
•It also picks up some of the crumbs, making the trail fainter.
•If there are still samples, the trail is reinforced by the agent returning to the
mother ship (leaving more crumbs)
•If no samples remain, the trail will soon be erased.
18 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Situated Automata
• Approach proposed by Rosenschein and Kaelbling.
• An agent is specified in a rule-like (declarative) language.
• Then compiled down to a digital machine, which satisfies the declarative specification.
rule-1: kerb-avoidance
if
is-in-front(Kerb, Observer) and
speed(Observer) > 0 and
separation(Kerb, Observer) < KerbThreshHold
then
change-orientation(KerbAvoidanceAngle)
censor-rule-1:
if
entity(obstacle-6) in perception-buffer
then
remove-sensory-record(layer-R, entity(obstacle-6))
Although several of the details here are from your notes, much more description was
originally given in the lecture, and is also available from the course text book.
30 Copyright: M. J. Wooldridge, S.Parsons and T.R.Payne, Spring 2013. Updated 2018
Summary
• This lecture has looked at two further Class Reading (Chapter 5):
kinds of agent:
“A Robust Layered Control System for a
• Reactive agents; and Mobile Robot,”, Rodney A. Brooks. IEEE
Journal of Robotics and Automation, 2(1),
• Hybrid agents. March 1986, pp. 14–23. (also MIT AI Memo
864, September 1985)
agent
to interact in competitive situations.
1 2 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
1 2
1
1/18/2022
3 4
2
1/18/2022
• i prefers all outcomes that arise through C over all outcomes that arise
• With this one, the environment is τ(D,D) = ω1 τ(D,C) = ω2 through D.
controlled by j τ(C,D) = ω1 τ(C,C) = ω2 • Thus C is the rational choice for i.
5 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 6 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
5 6
3
1/18/2022
• Agent j is the row player and gets the lower reward in a cell. i
defect coop
defect 1 4 • Play. . .
• Actually there are two matrices here, one (call it j 1 1
• dominant strategy;
coop 1 4
A) that specifies the payoff to i and another B
4 4
that specifies the payoff to j. • Nash equilibrium strategy;
7 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 8 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
7 8
4
1/18/2022
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
1/18/2022
can do no better than play s2; • In a game like this you can find the NE by coop
2
0
1
0
• I.e. if I drive on the left side of the road, you can do no better than also cycling through the outcomes, asking if either
driving on the left!
agent can improve its payoff by switching its
• under the assumption that agent j plays s2, agent i strategy.
can do no better than play s1. i
defect coop
• I.e. if you drive on the left side of the road, I can do no better than also
defect 5 1
driving on the left!
• Thus, for example, (C, D) is not a NE j 3 2
coop 0 0
• Neither agent has any incentive to
Portrayed by Russel Crowe in the film
because i can switch its payoff from 1 2 1
“A Beautiful Mind”
deviate from a Nash Equilibrium (NE). to 5 by switching from C to D.
11 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 12 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
11 12
6
1/18/2022
13 14
7
1/18/2022
15 16
8
1/18/2022
17 18
9
1/18/2022
19 20
10
1/18/2022
21 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 22 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
21 22
11
1/18/2022
23 24
12
1/18/2022
25 26
13
1/18/2022
27 28
14
1/18/2022
29 30
15
1/18/2022
31 32
16
1/18/2022
stag will escape. Not that you don’t want the plan to succeed: the best 1 4
possible outcome would be for both of you to get the • As usual with Nash equilibrium, theory gives us no
haircut.
real help in deciding what the other party will do.
• In this case the rabbit hunters will have The trouble is,it would be awful to be the only one to
show up with the haircut.That would be the worst The difference from the • Hence the worrying about the haircut.
possible outcome. prisoner’s dilemma is that
some small amount of food and the You’re not above enjoying your friend’s embarrassment. now it is better if you both co-
(remaining) stag hunters will go hungry. If you didn’t get the haircut, but the friend did,and
looked like a real jerk,that would be almost as good as
operate than if you defect • The same scenario occurs in mutinies and strikes.
while the other co-operates.
if you both got the haircut...” • We would all be better off if our hated captain is deposed, but if
• What should each hunter do? MikeWooldridge some of us give in, we will all be hanged.
33 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 34 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
33 34
17
1/18/2022
35 36
18
1/18/2022
Summary
• This chapter has looked at agent
Class Reading (Chapter 11):
37 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
37
19
5/13/2019
Social Behaviour
• Previously we looked at:
• Deductive Agents
• Practical Reasoning, and BDI Agents
• We said:
Multi-Agent Systems •
•
An intelligent agent is a computer system capable of flexible autonomous action in some environment.
Where by flexible, we mean:
Chapters 6/7 - Ontologies & Communication • reactive
• pro-active
Dr. Nguyen Binh Minh • social
Department of Information Systems • This is where we deal with the “social” bit, showing how agents communicate
and share information.
1 2
1
5/13/2019
• There are some limited things that one can do without communication,
but they are…, well…, limited!!!
• Most work on multiagent systems assumes communication.
3 Copyright: Binh Minh Nguyen, 2019 4 Copyright: Binh Minh Nguyen, 2019
3 4
2
5/13/2019
6 7
3
5/13/2019
• In general, a speech act can be seen • Cohen & Perrault (1979) defined semantics of (you don’t ask someone unless
they believe they can do it)
to have two components: speech acts using the precondition-delete- • s believe s want φ
add list formalism of planning research. (you don’t ask someone
• a performative verb: unless you want it!)
• Just like STRIPS planner
• (e.g., request, inform, . . . ) post-condition:
Each of the above speech acts result from
• h believe s believe s want φ
• propositional content: the same propositional content (“...the
door is closed...”), but with different
• Note that a speaker cannot (generally) force a (the effect is to make them
• (e.g., “the door is closed”) performatives hearer to accept some desired mental state. aware of your desire)
8 Copyright: Binh Minh Nguyen, 2019 9 Copyright: Binh Minh Nguyen, 2019
8 9
4
5/13/2019
10 11
5
5/13/2019
12 13
6
5/13/2019
Ontologies Ontologies
• The role of an ontology is to fix the meaning of the terms • Alice:
used by agents. • Did you read “Prey”?
14 15
7
5/13/2019
Ontologies Ontologies
• What is being conveyed about “Prey” here? Types of objects • Part of the reason this interaction works is that Bob has knowledge
1. It is a novel Classes
collections of things with similar
that is relevant.
2. It is a science fiction novel properties • Bob knows that novels are fiction books
3. It is a horror novel Instances • “novel” is a subclass of “fiction book”
specific examples of classes
4. It is about multiagent systems • Bob knows things about novels: they have
Relations
Describe the properties of objects • authors,
• Alice assumes that Bob knows what a “novel” and connect them together • publishers,
• publication dates, and so on.
is, what “science fiction” is and what “horror” Note that we also have these types of
is.
• Because “Prey” is a novel, it inherits the properties of novels. It has
objects in languages such as Java, or
modelling frameworks such as ER
Diagrams. Such languages and
an author, a publisher, a publication date.
• She thus defines a new term “Prey” in terms frameworks also support inheritance.
• Instances inherit attributes from their classes.
of ones that Bob already knows.
16 Copyright: Binh Minh Nguyen, 2019 17 Copyright: Binh Minh Nguyen, 2019
16 17
8
5/13/2019
18 19
9
5/13/2019
• Domain ontology
• Upper ontology
• Contains very general information about the world.
20 21
10
5/13/2019
22 Copyright: Binh Minh Nguyen, 2019 23 Copyright: Binh Minh Nguyen, 2019
22 23
11
5/13/2019
24 Copyright: Binh Minh Nguyen, 2019 25 Copyright: Binh Minh Nguyen, 2019
24 25
12
5/13/2019
•
o
Assumptions Alice join 3AB Alice Alice
1A assert 4A 5A
0.5
1. Each agent knows about different correspondences from different e
ct
j article draft
sources matched-close ob
0.7
2. This knowledge is partial, and possibly ambiguous; i.e. more than one endassert
publication paper
correspondence exists for a given entity 0.6
3. Agents associate a utility (Degree of Belief) κc to each unique
correspondence
26 Copyright: Binh Minh Nguyen, 2019 27 Copyright: Binh Minh Nguyen, 2019
26 27
13
5/13/2019
• Based on description logics <NS1:climate>mostly temperate, but tropical in Hawaii and Florida, arctic in Alaska, semiarid in the great plains west of the
Mississippi River, and arid in the Great Basin of the southwest; low winter temperatures in the northwest are ameliorated occasionally in
January and February by warm chinook winds from the eastern slopes of the Rocky Mountains
• Various flavours with different expressivity / </NS1:climate>
<NS1:terrain>vast central plain, mountains in west, hills and low mountains in east; rugged mountains and broad river valleys in
computability Alaska; rugged, volcanic topography in Hawaii
28 29
14
5/13/2019
30 31
15
5/13/2019
32 33
16
5/13/2019
34 35
17
5/13/2019
36 Copyright: Binh Minh Nguyen, 2019 37 Copyright: Binh Minh Nguyen, 2019
36 37
18
5/13/2019
38 39
19
5/13/2019
40 41
20
5/13/2019
• Note that the intention is adopted after the goal is added. r ’s belief base
• With unachieve, the internal action .drop_desire(open(left_door)) is executed.
open(left_door)
open(right_door)
42 Copyright: Binh Minh Nguyen, 2019 43 Copyright: Binh Minh Nguyen, 2019
42 43
21
5/13/2019
• .send(receiver, untellHow, @p) • The goal !kqml_received is created whenever a message is received
• removes the plan with the plan label @p from the plan library of receiver • Predefined plans can be found in Jason Distribution in
• .send(r, untellHow, “@pOD”) • src/asl/kqmlPlans.asl
44 45
22
5/13/2019
46 Copyright: Binh Minh Nguyen, 2019 47 Copyright: Binh Minh Nguyen, 2019
46 47
23
5/13/2019
Jade Jade
• The FIPA ACL provides a language for writing • In JADE, agents are Java threads running in a “container”.
messages down.
• It says nothing about how they are passed between agents.
• Provides transparent (from the perspective of • All containers register with the main container
the agent designer) transport of ACL messages
48 Copyright: Binh Minh Nguyen, 2019 49 Copyright: Binh Minh Nguyen, 2019
48 49
24
5/13/2019
50 Copyright: Binh Minh Nguyen, 2019 51 Copyright: Binh Minh Nguyen, 2019
50 51
25
5/13/2019
• Rather than define the conditions on a locution in terms of an agent’s mental state, base it on
something external to the agent. aspects of agent ontologies and Agent Communication Languages:
Rethinking the Principles”, Munindar P.
Singh. IEEE Computer: 1998, pp40-49.
communication between agents.
• Move from a “mentalistic” semantics to a social semantics. • It has focussed on the interpretation of locutions/ This is an overview of the state of the
• How? performatives as speech acts, and some art in agent communication (as of
1998), and an introduction to the key
suggestions for what performatives one might use. challenges, particularly with respect to
• Take an agent’s utterances as commitments. • Examples of communication were also given in AgentSpeak /
the semantics of agent
communication.
Jason (Chapter 6 of Bordini et al.)
• But what does it mean to say that “if an agent utters an inform then it is committing to the truth
of the proposition that is the subject of the utterance”? • There is much more to communication that this. . .
• . . . but this kind of thing is required as a “transport layer” to
• Doesn’t stop an agent lying, but it allows you to detect when it does. support the kinds of thing we will talk about later.
52 Copyright: Binh Minh Nguyen, 2019 53 Copyright: Binh Minh Nguyen, 2019
52 53
26
5/20/2019
Working Together
• Why and how agents work together?
Dr. Nguyen Binh Minh • If agents are designed by different individuals, they may not
have common goals
Department of Information Systems
• Important to make a distinction between:
• benevolent agents and
• self-interested agents
1 2 Copyright: Nguyen Binh Minh, Spring 2019.
1 2
1
5/20/2019
• Benevolence simplifies the system design task • Strategic behaviour may be required —
enormously! we will cover some of these aspects in
• We will talk about CDSP in this lecture later lectures
3 Copyright: Nguyen Binh Minh, Spring 2019. 4 Copyright: Nguyen Binh Minh, Spring 2019.
3 4
2
5/20/2019
• Coordination:
produce a solution that maximises the coherence metric?
“... the degree. . . to which [the • What techniques can be used to coordinate the activity of the agents, thus avoiding
destructive interactions?
agents]. . . can avoid ‘extraneous’
• If the system is perfectly coordinated, agents will activity [such as] . . . synchronizing • Answer synthesis
not get in each others’ way, in a physical or a Synthesis
and aligning their activities...” • How can a problem solution be effectively synthesised from subproblem results?
5 6
3
5/20/2019
7 Copyright: Nguyen Binh Minh, Spring 2019. 8 Copyright: Nguyen Binh Minh, Spring 2019.
7 8
4
5/20/2019
• Again this may be hierarchical • how do we decide how to allocate tasks to agents?
• result sharing: Result Sharing
• information (partial results etc) is distributed.
• Different solutions at different levels of • how do we assemble a complete solution from the parts?
abstraction.
• An agent may well need a solution to both
these problems in order to be able to function
in a CDPS environment.
9 Copyright: Nguyen Binh Minh, Spring 2019. 10 Copyright: Nguyen Binh Minh, Spring 2019.
9 10
5
5/20/2019
11 12
6
5/20/2019
Announcement Bidding
• In this stage, the agent with the task sends • Agents that receive the announcement
out an announcement of the task which decide for themselves whether they wish to
Announcement Bidding
includes a specification of the task to be bid for the task.
achieved.
• Factors:
• Specification must encode: • agent must decide whether it is capable of expediting
• description of task itself (maybe executable) task;
• any constraints (e.g., deadlines, quality constraints) • agent must determine quality constraints & price
information (if relevant).
• meta-task information (e.g., “ . . . bids must be submitted
by . . . ”)
• If they do choose to bid, then they submit
• The announcement is then broadcast. a tender.
13 Copyright: Nguyen Binh Minh, Spring 2019. 14 Copyright: Nguyen Binh Minh, Spring 2019.
13 14
7
5/20/2019
15 16
8
5/20/2019
17 18
9
5/20/2019
• Line 4: Initial belief that contractor is • Lines 8-14: introduce the agent to the initiator 3. / / gets the price for the product,
4. / / a random value between 100 and 110.
/ / A gent refusenik in project contractNetProtocol
the initiator.
1.
2. • Line 5: rule that generates a random price for 5. price(_Service,X) :- .random(R) & X = ( 10*R)+100.
6.
3. / / the name of the agent playing initiator in the CNP its service 7. / / the name of the agent playing initiator in the CNP
• Line 8: A belief that In is the agent contractor 4. plays(initiator,contractor). 8. plays(initiator,contractor).
generates a message to In introducing the 5. 9.
6. / / send a message to the initiator introducing the
agent. 7.
8.
/ / agent as a participant
• Bidding - Line 17: Plan @c1 1 0 . / / send a message to the initiator introducing the
1 1 . / / agent as a participant
•
+plays(initiator,In)
12. +plays(initiator,In)
Line 13: A CfP message from an 9. : .my_name(Me)
• On receipt of a cfp message from agent A 13. : .my_name(Me)
10. <- .send(In,tell,introduction(participant,Me)).
initiator agent will generate a refuse 11. (line 17)
14.
15.
<- .send(In,tell,introduction(participant,Me)).
12. / / plan to answer a CFP
message 13. +cfp(CNPId,_Service)[source(A)] • Where A is the initiator, and where the agent can 16. / / answer to Call For Proposal
generate a price for the requested task 17.@c1 +cfp(CNPId,Task)[source(A)]
14. : plays(initiator,A)
18.: plays(initiator,A) & price(Task,Offer)
15. <- .send(A,tell,refuse(CNPId)).
• The agent keeps a mental note of its 19. <- / / remember my proposal
20. +proposal(CNPId,Task,Offer);
proposal (line 19) 21. .send(A,tell,propose(CNPId,Offer)).
• Responds to CfP by making an offer (line 21)
19 Copyright: Nguyen Binh Minh, Spring 2019. 20 Copyright: Nguyen Binh Minh, Spring 2019.
19 20
10
5/20/2019
21 22
11
5/20/2019
23 Copyright: Nguyen Binh Minh, Spring 2019. 24 Copyright: Nguyen Binh Minh, Spring 2019.
23 24
12
5/20/2019
25 26
13
5/20/2019
27 28
14
5/20/2019
29 30
15
5/20/2019
31 Copyright: Nguyen Binh Minh, Spring 2019. 32 Copyright: Nguyen Binh Minh, Spring 2019.
31 32
16
5/20/2019
33 34
17
5/20/2019
35 36
18
5/20/2019
The Centibots robots collaborate to • Inconsistent beliefs arise because agents have different views
• Information pro-actively shared between map a space and find objects.
of the world.
objects.
• May be due to sensor faults or noise or just because they can’t see everything.
• Objects required to know about the interests
of other objects ⇒ inform objects when • Inconsistent goals may arise because agents are built by
different people with different objectives.
relevant information arises.
37 Copyright: Nguyen Binh Minh, Spring 2019. 38 Copyright: Nguyen Binh Minh, Spring 2019.
37 38
19
5/20/2019
• Build systems that degrade gracefully in the face of 2. We both arrive at the copy room with a stack of paper to
photocopy. Who gets to use the machine first?
inconsistency.
39 Copyright: Nguyen Binh Minh, Spring 2019. 40 Copyright: Nguyen Binh Minh, Spring 2019.
39 40
20
5/20/2019
41 42
21
5/20/2019
• Recall how we described agents before: Ag:RE →Ac environment. 1. On even rows the robots move left while in
• As a function which, given a run ending in a state, odd rows the robots move right.
agent to be able to get to. 3. Robots move down when in the leftmost
column of even rows or the second rightmost
• A constraint is then a pair: <E′, α> • From any focal state e F it should be possible to column of odd rows.
• where E′ E is a set of states, and α Ac is an action. get to any other focal state e′ F (though not
necessarily right away).
• This constraint says that α cannot be done in any state
in E′.
• A useful social law is then one that
• A social law is then a set of these does not prevent agents from getting Not necessarily efficient (On2 steps to get
constraints. from one focal state to another.
to a specific square).
43 44
22
5/20/2019
45 46
23
5/20/2019
Joint Intentions
Multiagent Planning
• The terminations condition is that it is mutually believed that: “... You and I have a mutual
• Another approach to coordinate is to explicitly plan
• goal φ is satisfied; or belief that p if I believe p and you what all the agents do.
• goal φ is impossible; or believe p and I believe that you
believe p and I believe that you • For example, come up with a large STRIPS plan for all the agents
• the motivation ψ is no longer present believe that I believe p and ...” in a system.
• The termination condition is achieved when an agent realises
that, the goal is satisfied, impossible and so on.
• Could have:
• But it doesn’t drop the goal right away. • Centralised planning for distributed plans.
• Instead it adopts a new goal — to make this new knowledge mutually • One agent comes up with a plan for everybody
believed.
• This ensures that the agents are coordinated. • Distributed planning
• A group of agents come up with a centralised plan for another group of agents.
• They don’t stop working towards the goal until they are all • Distributed planning for distributed plans
appraised of the situation.
• Agents build up plans for themselves, but take into account the actions of others.
• Mutual belief is achieved by communication.
47 Copyright: Nguyen Binh Minh, Spring 2019. 48 Copyright: Nguyen Binh Minh, Spring 2019.
47 48
24
5/20/2019
49 Copyright: Nguyen Binh Minh, Spring 2019. 50 Copyright: Nguyen Binh Minh, Spring 2019.
49 50
25
11/29/2023
Social Choice
• We continue thinking in the same framework as the previous chapter:
• multiagent encounters
IT4899 • game-like interactions
• participants act strategically
Multi-Agent Systems
Chapter 12 - Making Group Decisions • Social choice theory is concerned with group decision making.
• Agents make decisions based on their preferences, but they are aware of other agents’
Dr. Nguyen Binh Minh preferences as well.
Department of Information Systems
• Classic example of social choice theory: voting
• Formally, the issue is combining preferences to derive a social outcome.
1 2 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
1 2
1
11/29/2023
3 4
2
11/29/2023
5 6
3
11/29/2023
7 8
4
11/29/2023
unhappy with the outcome. • no matter which outcome we choose, a majority of voters will be w1 w2 w3 w4 w1 w2 w3 w4
w2 w3 w2 w3
unhappy with the outcome chosen.
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
11/29/2023
ω2 , ω3 , ω4 , ω1
• Then for every candidate, we can fix an
A compact representation of voter
preferences. With an odd number of voters
• then the first election is between ω2 and ω3...
(no ties) the majority graph is such that:
• The graph is complete.
agenda for that candidate to win in a
• ... and the winner goes on to the second election with ω4 ... • The graph is asymmetric. sequential pairwise election!
•
• ... and the winner of this election goes in the final election with ω1.
The graph is irreflexive.
Such a graph is called a tournament, a
nice summarisation of information about • This idea is easiest to illustrate using a
voter preferences.
majority graph.
11 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 12 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
11 12
6
11/29/2023
• Since the graph contains a cycle, it turns • Note, that there may be multiple agendas that result in the
out that we can fix whatever result we want. same winner:
• All we have to do is to pick the right order of the • ω1 also wins with agenda (ω4, ω2, ω3, ω1)
elections.
13 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 14 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
13 14
7
11/29/2023
15 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 16 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
15 16
8
11/29/2023
• Consider this majority graph (upper) • Remember that the following ranking ω1 ω2 ω1 ω2
• No cycles, therefore the ranking ω1 ≻* ω3 ≻* ω2 ≻* ω4 is acceptable: Consistent
• The graph is consistent has a cost of 1
ω3 ω4
• ω 1 ≻* ω2 ≻* ω3 ≻* ω4
ω3 ω4 ω3 ω4
• By flipping the single edge (ω4, ω1) we would have a consistent
• This majority graph (lower) has cycles Inconsistent Consistent
graph.
• We can have a ranking where one candidate beats another,
although it would loose in a pairwise election ω1 ω2 ω1 ω2 Inconsistent Consistent
• ω 1 ≻* ω2 ≻* ω4 ≻* ω3
• As this is the only edge we would need to flip, we say ω3 ω4 ω3 ω4 • In this case, we would have to flip two edges (ω4, ω1) and (ω3,
ω4) giving a cost of 2 giving
the cost of this order is 1. ω3 ω4 ω3 ω4
17 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 18 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
17 18
9
11/29/2023
• After we have done this for all voters, then the What are the Borda counts of the other
candidates?
totals give the ranking.
19 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 20 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
19 20
10
11/29/2023
21 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 22 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
21 22
11
11/29/2023
23 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 24 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
23 24
12
11/29/2023
25 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 26 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
25 26
13
11/29/2023
• However, of the ones we’ve seen, only sequential majority • Plurality, Borda and sequential majority do not satisfy IIA.
satisfies it.
27 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 28 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
27 28
14
11/29/2023
29 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 30 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
29 30
15
11/29/2023
31 32
16
11/29/2023
Summary
• In this lecture we have looked at mechanisms Class Reading (Chapter 12):
for group decision making.
“The computational difficulty of manipulating
• This has been a bit stylised — we looked at how, if a group an election”, J.J. Bartholdi, C.A.Tovey and
of agents ranks a set of outcomes, we might create a M.A.Trick. Social Choice and Welfare. Vol. 6
227-241, 1989.
consensus ranking.
• This does have a real application in voting systems.
This is the article that prompted the
• Social choice mechanisms are increasingly used in real
current interest in computational
systems as a way to reach consensus.
aspects of voting. It is a technical
• We looked at the behaviour of some existing voting systems scientific article, but the main thrust of
and some theoretical results for voting systems in general. the article is perfectly understandable
without a technical detailed
• most of these results were pretty negative.
background.
33
17
1/3/2022
1
1/3/2022
% List of Agents
• Sandholm (et. al., 1999) identified the following stages: 1,2,3
% Characteristic F unction
1 =5
Coalitional Structure Solving the optimization Dividing the benefits 2 =5
3 =5
Generation problem of each coalition Deciding “who gets what” in the • From this, we form a coalition C Ag 1,2 = 10
Deciding in principle who will work Deciding how to work together, and payoff. Coalition members cannot 1,3 = 10
together. It asks the basic question: how to solve the “joint problem” of a ignore each other’s preferences, • Singleton: where a coalition consists of a single member 2,3 = 10
Which coalition should I join? coalition. It also involves finding how because members can defect: • Grand Coalition: where C = Ag (i.e. all of the agents) 1,2,3 = 25
3 4
2
1/3/2022
• If the game is subadditive: if 𝛎 (U) + 𝛎 (U) >𝛎 (U⋃V) • Example: if 𝛎 ({1, 2}) = 20, then possible outcomes are: ⟨20,0⟩, ⟨19,1⟩, ⟨18,2⟩ … ⟨1,19⟩, ⟨0,20⟩
• However as some games are neither subadditive or superadditive: • Thus, the agent should only join a coalition C which is:
• the characteristic function value calculations need to be determined for each of the possible coalitions! • Feasible: the coalition C really could obtain some payoff than an agent could not object to; and
• This is exponentially complex
• Efficient: all of the payoff is allocated
5 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 6 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
5 6
3
1/3/2022
7 8
4
1/3/2022
•
gets should be the sum of the values it gets in
The Shapley value is one that satisfies the
• But is it “fair” on agent 2 to get only a payoff of 6, if agent 1 gets 14??? axioms opposite!
the individual games.
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
1/3/2022
11 12
6
1/3/2022
13 14
7
1/3/2022
• For example, if Ag = {1,2,3} then the set of all possible orderings, 𝚷 (Ag) is given
as
• 𝚷 (Ag) = {(1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), (3,2,1)}
15 16
8
1/3/2022
17 18
9
1/3/2022
B 5
• i.e., the value of a coalition C Ag Weighted Graph • Shapley value can be calculated in polynomial
is the weight of the subgraph time
induced by C 1
D 𝛎 ({B,D}) = 5+1 =
D
𝛎 ({D}) =
6 • i.e. an agent gets half the income from the edges in the
5 5 5
graph to which it is attached.
19 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 20 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
19 20
10
1/3/2022
22 23
11
1/3/2022
Summary
• In this lecture we have looked at mechanisms for identifying Class Reading (Chapter 13):
coalitions.
• The notion of a stable coalition game was presented, through the idea of a
“Marginal contribution nets: A compact
Core.
representation scheme for coalition games”,
• The Shapley Value was then introduced, to determine the contribution that S. Ieong and Y. Shoham. Proceedings of
different agents may have on a coalition. the Sixth ACM Conference on Electronic
Commerce (EC’05), Vancouver, Canada,
2005.
• The problem of representing coalitional games and
characteristic functions was then discussed, including: This is a technical article (but a very
• Induced Subgraphs nice one), introducing the marginal
• Marginal Contribution Nets. contribution nets scheme.
28
12
1/18/2022
Overview
• Allocation of scarce resources amongst a number
of agents is central to multiagent systems.
IT4899Q • A resource might be:
Multi-Agent Systems • a physical object
• the right to use land
Chapter 14 - Allocating Scarce Resources • computational resources (processor, memory, . . . )
1 2
1
1/18/2022
Web/Internet • Concerned with traders and their allocations of: information may be an offer to buy at a
given price, in the case of a bid, or an
• Frictionless commerce • Units of an indivisible good; and offer to sell at a given price, in the case
of an ask — and which gives priority to
• Money, which is divisible. higher bids and lower asks...”
3 4
2
1/18/2022
5 6
3
1/18/2022
7 8
4
1/18/2022
• at most you know the winning price after the auction. • First-price
• Sealed Bid
• It is in the bidders’ interest to bid their true value.
Classified in the terms we used above:
• One-shot • incentive compatible in the usual terminology.
• Second-price
• In the First-Price Sealed-Bid (FPSB) auction
Governments often use this mechanism to sell
• Sealed Bid
treasury bonds (the UK still does, although the US
recently changed to Second-Price sealed Bids).
• However, it is not a panacea, as the New Zealand • One-shot
the highest bid wins as always Property can also be sold this way (as in Scotland). government found out in selling radio spectrum rights Historically used in the sale of stamps and other
paper collectibles.
• As its name suggests, the winner pays that highest price • Due to interdependencies in the rights, that led to strategic bidding,
(which is what they bid). • one firm bid NZ$100,000 for a license, and paid the second-highest price of only NZ$6.
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
1/18/2022
Why does the Vickrey auction work? Proof of dominance of truthful bidding
• Suppose you bid more • Suppose you bid less than • Let 𝜐 i be the bidding agent i’s value for an item, and bi be the agent’s bid
than your valuation. your valuation. • The payoff for bidder i is:
• You may win the good. • You stand less chance of winning
• If you do, you may end up paying the good.
more than you think the good is • However, even if you do win it,
worth. you will end up paying the same.
• Assume bidder i bids bi > 𝜐 i (i.e. overbids)
• If maxj≠i bj < 𝜐 i, then the bidder would win whether or not the bid was truthful. Therefore the
strategies of bidding truthfully and overbidding have equal payoffs
• If maxj≠i bj > bi, then the bidder would loose whether or not the bid was truthful. Again, both
strategies have equal payoffs
• If 𝜐 i < maxj≠i bj < bi, then the strategy of overbidding would win the action, but the payoff would
be negative (as the bidder will have overpaid). A truthful strategy would pay zero.
11 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 12 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
11 12
6
1/18/2022
13 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 14 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
13 14
7
1/18/2022
• (The FCC spectrum auctions, however, did • Another useful idea is free disposal:
not use a combinatorial auction mechanism) • In other words, an agent is never worse off having more stuff.
15 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 16 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
15 16
8
1/18/2022
17 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
17 18
9
1/18/2022
19 20
10
1/18/2022
21 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 22 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
21 22
11
1/18/2022
OR Bids OR Bids
• Here is another example!
• With OR bids, we are prepared to • B3 =({e, f, g}, 4) OR ({f, g}, 1) OR ({e}, 3) OR ({c, d}, 4)
pay for more than one bundle v/33 ({ e} ) = 3
• A bid β = (Z1, p1) OR … OR (Zk, pk) defines k • This gives us: v/33 ({ e,f } ) = 3
v/33 ({ e,f ,g} ) = 4
valuations for different bundles v/33 ({ b,c,d,f ,g} ) = 4+ 1= 5
• An allocation of goods Z’ is assigned given a set v/33 ({ a, b,c, d,e,f ,g} ) = 4+ 4= 8
v/33 ({ c,d,e} ) = 4+ 3= 7
W of atomic bids such that:
• Every bid in W is satisfied by Z’ • Remember that if more than one bundle is satisfied, then you pay for each
• No goods appear in more than one bundle; i.e. Zi ∩ Zj = for of the bundles satisfied.
all i,i where i ≠ j
• Also remember free disposal, which is why the bundle {e,f} satisfies the bid ({e}, 3) as the agent
• No other subset W’ satisfying the above condition is better: doesn’t pay extra for f
23 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 24 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
23 24
12
1/18/2022
• 𝜐 ({a}) = 1, 𝜐 ({b}) = 1, 𝜐 ({a,b}) = 1 • Typical approach is to code the problem as an integer linear
program and use a standard solver.
• This is NP-hard in principle, but often provides solutions in reasonable time.
• OR bids also suffer from computational complexity • Several algorithms exist that are efficient in most cases
• Given an OR bid β and a bundle Z, computing 𝜐 β(Z) is NP-hard • Approximate algorithms have been explored
• Few solutions have been found with reasonable bounds
25 26
13
1/18/2022
27 28
14
1/18/2022
29 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 30 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
29 30
15
1/18/2022
Summary
• Allocating scarce resources comes down to auctions Class Reading (Chapter 14):
• We looked at a range of different simple auction mechanisms.
• English auction “Expressive commerce and its application to
• Dutch auction sourcing: How to conduct $35 billion of
generalized combinatorial auctions”, T.
• First price sealed bid Sandholm. AI Magazine, 28(3): 45-58
• Vickrey auction (2007).
• The we looked at the popular field of combinatorial This gives a detailed case study of a
auctions. successful company operating in the
area of computational combinatorial
• We discussed some of the problems in implementing combinatorial auctions for industrial procurement.
auctions.
31
16
1/3/2022
1
1/3/2022
% List of Agents
• Sandholm (et. al., 1999) identified the following stages: 1,2,3
% Characteristic F unction
1 =5
Coalitional Structure Solving the optimization Dividing the benefits 2 =5
3 =5
Generation problem of each coalition Deciding “who gets what” in the • From this, we form a coalition C Ag 1,2 = 10
Deciding in principle who will work Deciding how to work together, and payoff. Coalition members cannot 1,3 = 10
together. It asks the basic question: how to solve the “joint problem” of a ignore each other’s preferences, • Singleton: where a coalition consists of a single member 2,3 = 10
Which coalition should I join? coalition. It also involves finding how because members can defect: • Grand Coalition: where C = Ag (i.e. all of the agents) 1,2,3 = 25
3 4
2
1/3/2022
• If the game is subadditive: if 𝛎 (U) + 𝛎 (U) >𝛎 (U⋃V) • Example: if 𝛎 ({1, 2}) = 20, then possible outcomes are: ⟨20,0⟩, ⟨19,1⟩, ⟨18,2⟩ … ⟨1,19⟩, ⟨0,20⟩
• However as some games are neither subadditive or superadditive: • Thus, the agent should only join a coalition C which is:
• the characteristic function value calculations need to be determined for each of the possible coalitions! • Feasible: the coalition C really could obtain some payoff than an agent could not object to; and
• This is exponentially complex
• Efficient: all of the payoff is allocated
5 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 6 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
5 6
3
1/3/2022
7 8
4
1/3/2022
•
gets should be the sum of the values it gets in
The Shapley value is one that satisfies the
• But is it “fair” on agent 2 to get only a payoff of 6, if agent 1 gets 14??? axioms opposite!
the individual games.
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
1/3/2022
11 12
6
1/3/2022
13 14
7
1/3/2022
• For example, if Ag = {1,2,3} then the set of all possible orderings, 𝚷 (Ag) is given
as
• 𝚷 (Ag) = {(1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), (3,2,1)}
15 16
8
1/3/2022
17 18
9
1/3/2022
B 5
• i.e., the value of a coalition C Ag Weighted Graph • Shapley value can be calculated in polynomial
is the weight of the subgraph time
induced by C 1
D 𝛎 ({B,D}) = 5+1 =
D
𝛎 ({D}) =
6 • i.e. an agent gets half the income from the edges in the
5 5 5
graph to which it is attached.
19 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 20 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
19 20
10
1/3/2022
22 23
11
1/3/2022
Summary
• In this lecture we have looked at mechanisms for identifying Class Reading (Chapter 13):
coalitions.
• The notion of a stable coalition game was presented, through the idea of a
“Marginal contribution nets: A compact
Core.
representation scheme for coalition games”,
• The Shapley Value was then introduced, to determine the contribution that S. Ieong and Y. Shoham. Proceedings of
different agents may have on a coalition. the Sixth ACM Conference on Electronic
Commerce (EC’05), Vancouver, Canada,
2005.
• The problem of representing coalitional games and
characteristic functions was then discussed, including: This is a technical article (but a very
• Induced Subgraphs nice one), introducing the marginal
• Marginal Contribution Nets. contribution nets scheme.
28
12
1/18/2022
Overview
• Allocation of scarce resources amongst a number
of agents is central to multiagent systems.
IT4899Q • A resource might be:
Multi-Agent Systems • a physical object
• the right to use land
Chapter 14 - Allocating Scarce Resources • computational resources (processor, memory, . . . )
1 2
1
1/18/2022
Web/Internet • Concerned with traders and their allocations of: information may be an offer to buy at a
given price, in the case of a bid, or an
• Frictionless commerce • Units of an indivisible good; and offer to sell at a given price, in the case
of an ask — and which gives priority to
• Money, which is divisible. higher bids and lower asks...”
3 4
2
1/18/2022
5 6
3
1/18/2022
7 8
4
1/18/2022
• at most you know the winning price after the auction. • First-price
• Sealed Bid
• It is in the bidders’ interest to bid their true value.
Classified in the terms we used above:
• One-shot • incentive compatible in the usual terminology.
• Second-price
• In the First-Price Sealed-Bid (FPSB) auction
Governments often use this mechanism to sell
• Sealed Bid
treasury bonds (the UK still does, although the US
recently changed to Second-Price sealed Bids).
• However, it is not a panacea, as the New Zealand • One-shot
the highest bid wins as always Property can also be sold this way (as in Scotland). government found out in selling radio spectrum rights Historically used in the sale of stamps and other
paper collectibles.
• As its name suggests, the winner pays that highest price • Due to interdependencies in the rights, that led to strategic bidding,
(which is what they bid). • one firm bid NZ$100,000 for a license, and paid the second-highest price of only NZ$6.
9 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 10 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
9 10
5
1/18/2022
Why does the Vickrey auction work? Proof of dominance of truthful bidding
• Suppose you bid more • Suppose you bid less than • Let 𝜐 i be the bidding agent i’s value for an item, and bi be the agent’s bid
than your valuation. your valuation. • The payoff for bidder i is:
• You may win the good. • You stand less chance of winning
• If you do, you may end up paying the good.
more than you think the good is • However, even if you do win it,
worth. you will end up paying the same.
• Assume bidder i bids bi > 𝜐 i (i.e. overbids)
• If maxj≠i bj < 𝜐 i, then the bidder would win whether or not the bid was truthful. Therefore the
strategies of bidding truthfully and overbidding have equal payoffs
• If maxj≠i bj > bi, then the bidder would loose whether or not the bid was truthful. Again, both
strategies have equal payoffs
• If 𝜐 i < maxj≠i bj < bi, then the strategy of overbidding would win the action, but the payoff would
be negative (as the bidder will have overpaid). A truthful strategy would pay zero.
11 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 12 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
11 12
6
1/18/2022
13 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 14 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
13 14
7
1/18/2022
• (The FCC spectrum auctions, however, did • Another useful idea is free disposal:
not use a combinatorial auction mechanism) • In other words, an agent is never worse off having more stuff.
15 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 16 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
15 16
8
1/18/2022
17 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
17 18
9
1/18/2022
19 20
10
1/18/2022
21 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 22 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
21 22
11
1/18/2022
OR Bids OR Bids
• Here is another example!
• With OR bids, we are prepared to • B3 =({e, f, g}, 4) OR ({f, g}, 1) OR ({e}, 3) OR ({c, d}, 4)
pay for more than one bundle v/33 ({ e} ) = 3
• A bid β = (Z1, p1) OR … OR (Zk, pk) defines k • This gives us: v/33 ({ e,f } ) = 3
v/33 ({ e,f ,g} ) = 4
valuations for different bundles v/33 ({ b,c,d,f ,g} ) = 4+ 1= 5
• An allocation of goods Z’ is assigned given a set v/33 ({ a, b,c, d,e,f ,g} ) = 4+ 4= 8
v/33 ({ c,d,e} ) = 4+ 3= 7
W of atomic bids such that:
• Every bid in W is satisfied by Z’ • Remember that if more than one bundle is satisfied, then you pay for each
• No goods appear in more than one bundle; i.e. Zi ∩ Zj = for of the bundles satisfied.
all i,i where i ≠ j
• Also remember free disposal, which is why the bundle {e,f} satisfies the bid ({e}, 3) as the agent
• No other subset W’ satisfying the above condition is better: doesn’t pay extra for f
23 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 24 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
23 24
12
1/18/2022
• 𝜐 ({a}) = 1, 𝜐 ({b}) = 1, 𝜐 ({a,b}) = 1 • Typical approach is to code the problem as an integer linear
program and use a standard solver.
• This is NP-hard in principle, but often provides solutions in reasonable time.
• OR bids also suffer from computational complexity • Several algorithms exist that are efficient in most cases
• Given an OR bid β and a bundle Z, computing 𝜐 β(Z) is NP-hard • Approximate algorithms have been explored
• Few solutions have been found with reasonable bounds
25 26
13
1/18/2022
27 28
14
1/18/2022
29 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 30 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
29 30
15
1/18/2022
Summary
• Allocating scarce resources comes down to auctions Class Reading (Chapter 14):
• We looked at a range of different simple auction mechanisms.
• English auction “Expressive commerce and its application to
• Dutch auction sourcing: How to conduct $35 billion of
generalized combinatorial auctions”, T.
• First price sealed bid Sandholm. AI Magazine, 28(3): 45-58
• Vickrey auction (2007).
• The we looked at the popular field of combinatorial This gives a detailed case study of a
auctions. successful company operating in the
area of computational combinatorial
• We discussed some of the problems in implementing combinatorial auctions for industrial procurement.
auctions.
31
16
12/28/2023
Overview
• How do agents agree on what to believe?
• In a court of law, barristers present a rationally justifiable
position based on the arguments put forward.
• If all of the evidence and arguments were consistent, there would be no
disagreement
•
COMP310 •
But often, the positions are contradictory or inconsistent
1 2
1
12/28/2023
3 4
2
12/28/2023
• Arguments are presented as abstract symbols • ⊳ is a set of attacks between arguments in Σ • r : Since today is a holiday, I don’t have to go
to work.
• The meaning of an argument is irrelevant • p : Since the weather today is sunny, I’m • (𝜑, ψ) ⊳ denotes the relationship: 𝜑 attacks ψ • s : Since I took the day off, I don’t have to go
going to go out on my bike. to work.
• If accepting one argument q means rejecting • q : Since today is a weekday and I have to
go to work, I can’t go out on my bike. • For example: ⟨{p, q, r, s}, {(r, q), (s, q), (q, p)}⟩
another argument p, we say that: • r : Since today is a holiday, I don’t have to • There are four arguments, p, q, r, s (see opposite) r
• go to work.
q attacks argument p
• There are three attacks:
• q is a counterexample of p; or • s : Since I took the day off, I don’t have to q p
go to work. • r attacks q
• q is an attacker of p.
• s attacks q
• This can be written as (q, p) or alternatively q ⟶ p • q attacks p s
• However, we are not actually concerned as to what p and q are. • The question is, given this, what should we believe?
5 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
6
Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
5 6
3
12/28/2023
attacks another member of S. • s : Since I took the day off, I don’t have to go
to work.
• These positions are mutually defensive: • s : Since I took the day off, I don’t have to go
to work.
• If an argument a is attacked by another a′, then it is defended • ∅, {r}, {s}, {r, s}, {p, r}, {p, s}, {r, s, p}
by a′′ if a′′ attacks a′ • The position {p, r} is defended, because if we have the case that
r r
• The position is Internally consistent another argument q is added to the position {p, r}, then although
q attacks r, p defends r as it attacks q
q p q p
• The conflict-free sets in the previous system • Note that {p}, {q} are not mutually defensive
are: s
• The position {p} is not defended if another argument (e.g. q) is
s
• ∅, {p}, {q}, {r}, {s}, {r, s}, {p, r}, {p, s}, {r, s, p} added to it
• Thus p is defended by r and s 7 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 8 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
7 8
4
12/28/2023
9 10
5
12/28/2023
a b c d c d e f
c a
b h
In this case, a and b are mutually
These two arguments are
mutually attacking.
With an odd number of
arguments attacking in a cyclic
attacking, and thus there will be at • The set of arguments above has two preferred extensions: {a, b, d, f} and {c, e, g, h}
As either could attack the other, pattern, there can be no
least two preferred extensions. As • Note that d and e mutually attack each other.
they both attack c, d is defended.
there are two preferred consistent state. Thus, the • Therefore we have two maximal admissible sets, depending on whether d attacks e, or e attacks d
Therefore, we have the two
extensions: {a} and {b} preferred extension is ∅.
extensions: {a,d} and {b,d}
11 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 12 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
11 12
6
12/28/2023
g
can define: to go out on my bike.
a • q : Since today is a weekday and I have to go
• An argument is sceptically accepted if it is a to work, I can’t go out on my bike.
member of every preferred extension; and • r : Since today is a holiday, I don’t have to go
c d e f to work.
• An argument is credulously accepted if it is a • s : Since I took the day off, I don’t have to go
to work.
member of at least one preferred extension
b h
• The set of arguments above has only one preferred extension: {a, b, d, f} accepted is also credulously accepted. q p
• Both c and e are now attacked by d and neither are defended
• In our original example:
• Therefore neither can be within an admissible set
• p, r and s are all sceptically accepted s
• q is neither sceptically or credulously accepted
13 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 14 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
13 14
7
12/28/2023
15 16
8
12/28/2023
17 18
9
12/28/2023
• Preferred Extensions:
• Mutually Defensive Accepted:
c d e • {b, d, f, h}
• ∅, {B, C}
• B, C
• {c, e, h}
• {A,D} is not mutually defensive,
A E D because neither are defended from C • Grounded Extension: • Credulously Accepted:
• {A,E} is not mutually defensive, • ∅
because A does not defend E from • b, c, d, e, f
an attack by D • Every argument is attacked by at g
least one other argument, so it is not
possible to determine any arguments • Sceptically Accepted:
• Admissible: that are IN (and consequently other
arguments that are out) •h
C • ∅, {B,C}
h
• These are the only positions that are
both conflict free and mutually
• Grounded Extension:
defensive •∅
19 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 20 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
19 20
10
12/28/2023
• However, arguments have a structure, which can be exploited when • Ground/Support (Fact, Evidence, Data)
reasoning • A fact one appeals to as a foundation for the claim.
can be challenged.
21 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018 22 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
21 22
11
12/28/2023
23 24
12
12/28/2023
25 26
13
12/28/2023
27 28
14
12/28/2023
29 30
15
12/28/2023
Summary
• This chapter has looked at Class Reading (Chapter 16):
interactions than the negotiation mechanisms we This paper reviews Dung’s original
looked at last chapter. notions of complete, grounded,
preferred, and stable semantics, as
well as subsequently proposed notions
• Argumentation can be used for a like semi-stable, ideal, stage, and CF2
semantics, considering both the
extension-based and the labelling-
range of tasks that include negotiation. based approaches with respect to
their definitions.
• Also allows for inquiry, persuasion, deliberation.
31 Copyright: M. J. Wooldridge, S. Parsons and T.R. Payne, Spring 2013. Updated 2018
31
16