Title: Adaptive Systems Lecture 8: Artificial Adaptive Systems
1Adaptive SystemsLecture 8 Artificial Adaptive
Systems
- Dr Giovanna Di Marzo Serugendo
- Department of Computer Science
- and Information Systems
- Birkbeck College, University of London
- Email dimarzo_at_dcs.bbk.ac.uk
- Web Page http//www.dcs.bbk.ac.uk/dimarzo
2Lecture 7 Review
- Models
- Games
- Cellular Automata
- Agent-based models
- Neural networks
- Simulations
3Lecture 8 Overview
- Taxonomy / Classification (Lecture 8)
- Static Optimisation Problems
- Ant-Colony Optimisation
- Particle Swarm Optimisation
- Dynamic Optimisation Problems
- Trust-based access control
- Artificial Swarms (Lecture 9)
- Robots
- Spiders-based systems
- Manufacturing Control
- Immune Computer
- P2P systems and protocols
- Autonomic Computing and Ambient Intelligence
4Taxonomy / Classification
5Taxonomy / Classification
6Taxonomy / Classification
7Taxonomy / Classification
8Static Optimisation Problems
- Static Problems Solving Ant foraging based
algorithms - Travelling Salesman Problem
- Given a number of cities and the costs of
travelling from any city to any other city, what
is the cheapest round-trip route that visits each
city once and then returns to the starting city? - Quadratic assignment problem
- Given a number of n activities assigned to n
locations. A distance is specified among each
pair of locations, and weight or flow is
specified among pairs of activities (representing
transfer of data, material, etc.) The problem is
to assign all activities to different locations
(permutation) with the goal of minimising the sum
of the distances multiplied by the corresponding
flows. - Quadratic
- cost function depends on multiplication of
distances by flows
9Static Optimisation Problems
- Job-shop scheduling
- Given m machines and j jobs. A job is an ordered
sequence of operations ojm. Each operation ojm
has to be processed on a machine m for t time
units. The goal is to assign operations to time
interval in order to minimise the maximum time,
and no two jobs are processed at the same machine
at the same time. - Graph colouring
- Find the minimal number of colours such that two
adjacent (link with an edge) nodes in a graph
have two different colours. - Applications
- partitioning of conflicting entities, e.g.
assigning several variables to registers in a
program execution avoiding conflicts - time tabling and scheduling finding the minimum
number of time slots, while avoiding conflicts - minimising the number of different frequencies
assigned to mobile radios (close radios have
different frequencies / distant radios can have
shared frequencies)
10Static Optimisation Problems
- Swarm Intelligence
- Ant Colony Optimisation
- Ants find shortest routes
- To solve discrete optimisation problem
- e.g The Travelling Salesman Problem
- Particle Swarm Optimisation
- Optimisation of function
- Searches for optimum in multi-dimensional space
of real-values
11Ant Colony Optimisation
- Travelling Salesman Problem
- Given a number of cities and the costs of
travelling from any city to any other city, what
is the cheapest round-trip route that visits each
city once and then returns to the starting city?
http//mathworld.wolfram.com/TravelingSalesmanProb
lem.html
12Ant Colony Optimisation
- Graph description (ants environment)?
- Nodes are cities
- Links among nodes represent path among cities
- Pheromone and distance information attached to
links - Description of pheromone
- Intensity of pheromone trail among nodes of graph
(positive feedback)? - Evaporation rate (negative feedback)?
13Ant Colony Optimisation
- Algorithm
- Place an ant at randomly selected node
- Ants visit each node (memorise tour and length)?
- Choice of next city to visit
- Based on probability depending on pheromone
intensity and heuristics - distance of next city
from current city) - Ants compare solution to current best
- Update of pheromone
- Ants update the pheromone intensity of visited
links - Shortest length ? more pheromone
- Longer length ? less pheromone
- Pheromone evaporation
- Ants start a new tour
- Algorithm find shortest route at each tour
14Ant Colony Optimisation
- Graph G (V, E) , V cities, E links
- pheromone on edge from i to j
- At time t, ant k at node i, will take path (ij)
with probability -
- Ni nodes adjacent to i
- Pheromone evaporation and update (by ant
traversing link)
15Ant Colony Optimisation
- ACO Ingredients
- Colony of ants
- Probabilistic transition rule (for determining
next city)? - Pheromone value on each edge
- Heuristic desirability of next city
16Particle Swarm Optimisation
- Finding optimum in search space of real values
- Function to optimise
- Variables of function (vectors)
- points in multidimensional search space S
- Individuals (of the swarm)?
- Points (or particles) in the search space S
- Their change over time is represented as
movements - Points in search space have a value
- Mapping
17Particle Swarm Optimisation
- Behaviour of individuals in the swarm
- Compare to their neighbours
- Evaluate themselves
- influenced by their own previous behaviour
- Imitate (better) neighbours
- influenced by experience of others
18Particle Swarm Optimisation
http//www.cs.utk.edu/mclennan/Classes/420-594-F0
4/
19Particle Swarm Optimisation
20Particle Swarm Optimisation
- position of particle i
- current velocity of particle i
- best position found by i
- best position found by neighbours
(global or local)? - Next velocity and position of i are given by
- are positive random vectors
21Particle Swarm Optimisation
- Particle maintains its direction
- Influenced by its own best finding
- Influenced by others best finding
- random vectors
22Particle Swarm Optimisation
- Algorithm
- Initialise each particle (position, velocity -
random)? - t 1
- while t lt max_t
- for each particle i
- if g(xi) gt g(pi) then pi xi
- g i
- for each neighbour j
- if g( pj ) gt g( pg ) then g j
- endfor
- update velocity
- update position
- endfor
- t t1
- endwhile
23Dynamic Optimisation Problems
- Routing in Telecommunication Networks
- Problem
- Traffic from sources to destinations
- Maximise network performance
- Minimise costs (delays, throughputs, )
Alternative path
24Dynamic Optimisation Problems
- Routing in Telecommunication Networks
- Ant routing algorithm (AntNet - Simulation)
- Ant colonies
- explore the network
- build routing tables adapted to traffic
conditions - Routing tables provide the name of the next
machine to visit in order to reach the desired
destination - Two types of ants
- Forward ants from destination to source
- Roam the network and collect information on
traffic - Backward from source to destination
- Propagate back result on the nodes
25Dynamic Optimisation Problems
- Routing in Telecommunication Networks
- Ant routing algorithm (AntNet - Simulation)
- Forward ants are regularly launched in the
network from every node to a random destination - Next node to visit is chosen based on current
routing table (probability) and actual queue of
node - At each node, forward ants store time information
- At destination node, a backward ant is generated
- Follows same path in opposite direction
- Backward ant updates routing table (probability)
on the basis of time information stored to the
node
26Dynamic Optimisation Problems
- Vehicle Traffic Control
- Avoiding traffic congestion in cities
- Ant routing algorithm
- AntNet algorithm variant for routing the traffic
- Artificial ants move in a virtual street network
- nodes correspond to crossroads.
- each node has a routing table used for guiding
the cars
27Trust-based Systems (1)
- Human notion of trust
- Uncertainty and partial knowledge
- Human beings make choices, take decisions, learn
by experience, adapt their behavior - Decisions implicitly rely on trust
- Peers
- Legal institutions
- Business companies
28Trust-based Systems (2)
- Software entities
- Part of decentralized and distributed systems
- Autonomous, roaming
- Highly changing environment
- Information changes and is not permanently valid
- Interactions occur locally
- Partial knowledge about the entities, and the
environment - Take decisions with local and incomplete
knowledge - Trust-based schema helps evaluating
- Good faith, correct functioning
29Trust-based access control
- Grant or deny access on the basis of current
trust - Principals
- interacting set of entities (human/computers,
trusted or untrusted) - Local trust values
- Principals maintain local trust values about
other principals - Evidence
- Direct observations evaluated outcome of an
interaction - Recommendations asked or received (indirect
observation)
30Trust-based access control
- Scenario
- Request of interaction
- Decision making process
- Recognise principal
- Evaluate trust value, evidence, risk implied by
requested interaction - Application of Control Policy
- Access granted or denied
- After interaction trust value updated on the
basis of evaluated outcome of the interaction - Trust evolves with time
- Allows to adapt behaviour of principal
31Goals
- Investigate the application of trust as a basis
for security - Explicit reasoning about trust and risk when
collaborating with other entities. Deployment of
verifiable security policies - Develop a framework for trust management to allow
validation of the approach in the context of the
formal model
32Framework (1)
Trust Box
Trust Box
Principal_1
Principal_3
Trust Box
Trust Box
Principal_4
Principal_2
33Framework (2)
Request (p, action)
Request Analyzer
Trust Calculator
Trust Box
Risk Evaluator
Access Control Manager
Principal_1
Evidence Store
Entity Recognition
Principal_1
34Computational Trust Model
- Trust is a mapping from pairs of principals (P)
to trust information (T) - m P ? ( P ? T)
- m(p)(q) principal ps trust in principal q
- The behaviour of a principal is defined in terms
of its trust policy - pp P ? P ? T ? P ? T
- Global Trust Function
- P P ? P ? T ? P ? P ? T
35Computational Trust Model
- Information ordering
- Amount of information available for a particular
statement - Ex number of interactions (total)
- (positive, negative, unknown)
- Trust ordering
- Higher level of trust
- More evidence in favor of particular statement
- Ex more positive interactions, less negative
interactions - (positive, negative, unknown)
- No Information does not mean No Trust
36Decision Making Process
Request
Recognize Principal
Risk Parameters
Trust(P)
Access Control Policy
Decision
37Trust Formation and Evolution
Produce Observation
Collect Recommendation
Evaluate(ev, Tcurr)
Tcurr
Evolve(Tcurr)
Tnew
38Risk Analysis
- Operations are broken down into trust-mediated
actions - Actions are mapped to possible outcomes
- Each outcome has an associated cost / benefit to
the principal - The trust model helps determine the likelihood of
each outcome - Decisions are based on costs, likelihoods and
local security policy
39Security Policy
- Security policy specification
- Definition of trust-based security policies
- Risk and trust as first class objects
- Follow human intuition about trust
- Security mechanism (reference monitor)
- Trust-based access control policies
- Trust-based resource sharing
- Determine risk
- Decide if sufficient trust exists to mitigate
risk
40Implementation
- Java API of
- kernel
- Entity Recognition
- Tamper-proof wrt user code
- 7000 LOC
- SPAM filtering application
41Example e-Purse
- Principals
- Bus company, users (e-purses), Bank
- Trust Values d1,d2 in 0,100
- amount of e-cash bus company accepts from
principal - lt d1 yes
- in d1,d2 uncertain
- gt d2 no
42Example e-purse
- Risk Analysis and Decision Making
- Cost -100,100 (gain, loss)
- Request accept to sell a ticket of value x
- x lt d1 accept
- x in d1,d2
- Examination of possible outcomes
- Likelihood of each outcome (with associated
probabilities) - Threshold of acceptable risk
- Accept if under threshold, otherwise reject
- x gt d2 reject
43Example e-purse
- Trust Evolution
- Observed outcome raises or lowers Tcurr 20,70
Euros - Request e-cash payment of 40 Euros
- Cost evaluation 40 Euros 40 invalid, 60 valid
- Decision accept if more than 50
- Outcome
- e-cash is valid then outcome is positive
- Positive reinforcing
- Maintain or increase lowest bound 28,70
- e-cash is valid then outcome is negative
- Negative contradicting
- Maintain or increase interval of rejection
20,65
44Reading
- Bonabeau 99 E. Bonabeau, M. Dorigo, and G.
Théraulaz. Swarm Intelligence From Natural to
Artificial Systems Santa Fe Institute Studies on
the Sciences of Complexity. Oxford University
Press, UK, 1999. - Lopez 05 Fà bregas, M., López, B. and Masana, J.
How Bee-like Agents Support Cultural Heritage.
Sven Brueckner et al. (eds) Engineering
Self-Organising Applications, LNCS to appear,
Springer. - Cahill 03 V. Cahill et al. "Using Trust for
Secure Collaboration in Uncertain Environments",
IEEE Pervasive Computing Magazine, special issue
on Dealing with Uncertainty, Volume 2, Number 3,
pp. 52-61, Jul-Sep 2003. - Tatomir 04 Tatomir, B. Rothkrantz, L.
Dynamic traffic routing using ant based
control, Systems Man and Cybernetics, 2004 IEEE
International Conference onVolume 4, 10-13 Oct.
2004 Page(s)3970 - 3975 vol.4