Artificial Immune Systems
Steve Cayzer Semantic and Adaptive Systems Hewlett-Packard Laboratories, Bristol February 2005
About me…
BSc in Physiology
PhD in Neurobiology
Industry
4/29/2008 Immune Systems - an evolutionary metaphor page 2 of 40
The Immune System is…
Immune system: a system that protects the body from foreign substances and pathogenic organisms by producing the immune response
Immunity: state or quality of being resistant (immune), either by virtue of previous exposure (adaptive immunity) or as an inherited trait (innate immunity)
4/29/2008
Immune Systems - an evolutionary metaphor
page 4 of 40
Or, maybe, the Immune System is…
KNOW THYSELF? The Self Assertion View
Hugues Bersini: “While host defense is a critical function, it is hardly the only one of interest. Indeed the immune system might be regarded as primarily fulfilling an altogether different role…”
•
Francisco Varela: Homeostasis, self-develop an efficient communication pathway in order to create (assert) and maintain a coherent self
•
John Stewart: rejection and memory are side effects of the homeostatic maintain.
Immune system only knows itself, no recognition is at play
ftp://iridia.ulb.ac.be/pub/bersini/ImmunoSelf.pdf
4/29/2008 Immune Systems - an evolutionary metaphor page 5 of 40
But for the purposes of this seminar…
•
The human body is constantly under attack from pathogens which produce antigens (foreign proteins) The immune system creates antibodies which match the antigens and cause the pathogens to be destroyed … without destroying the host (self proteins) Each antibody matches a range of proteins: as a population, antibodies (learn to) cover non-self space. Adaptive, self organising system: good paradigm for „new‟ computing?
Immune Systems - an evolutionary metaphor page 6 of 40
•
• •
•
4/29/2008
Antibodies map non-self space
Non-Self Self
X
(with recognition radius)
Antibody
4/29/2008
Immune Systems - an evolutionary metaphor
page 8 of 40
Antibodies map non-self space
Non-Self Self
X
4/29/2008
Immune Systems - an evolutionary metaphor
page 9 of 40
Antibodies map non-self space
Non-Self Self
X
Autoreactive Antibody Destroyed
4/29/2008
Immune Systems - an evolutionary metaphor
page 10 of 40
Antibodies map non-self space
Non-Self Self
X
X
(matched by antibody)
Antigen
4/29/2008
Immune Systems - an evolutionary metaphor
page 11 of 40
Antibodies map non-self space
Non-Self Self
X X
X
X
Clonal Maturation
With hypermutation
4/29/2008
Immune Systems - an evolutionary metaphor
page 12 of 40
Definition of AIS
de Castro and Timmis: “Artificial Immune Systems (AIS) are adaptive systems, inspired by theoretical immunology and observed immune functions, principles and models, which are applied to problem solving”
model of an immune component (eg antibody) • design informed from immunology • aimed at problem solving
http://www.cs.kent.ac.uk/people/staff/jt6/aisbook/
4/29/2008 Immune Systems - an evolutionary metaphor page 13 of 40
• basic
Models, Design Features, Applications
Models
Negative Selection
Positive Selection Danger model Self Assertion
Features Learning
Associative Memory Avoids „self‟ Autonomous
Applications
Security Classification/Clustering Optimisation Modelling
page 14 of 40
4/29/2008
Immune Systems - an evolutionary metaphor
GA – basic algorithm
Initialise population
WHILE (not finished) Calculate fitness Select Reproduce Crossover and mutation Replace
END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 15 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished) Calculate fitness Select Reproduce Crossover and mutation Replace
END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 16 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished) Calculate fitness Select Reproduce Crossover and mutation Replace
END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 17 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness Select Reproduce Crossover and mutation Replace END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 18 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce Crossover and mutation Replace END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 19 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce Crossover and mutation Replace END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 20 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Crossover and mutation Replace END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 21 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Mutation (no crossover) Replace END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 22 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Mutation (no crossover) Replace (variable population) END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 23 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Mutation (no crossover) Replace (variable population) Memory cells END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 24 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Mutation (no crossover) Replace (variable population) Memory cells END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 25 of 40
Framework for AIS design
Algorithms Affinity (cf fitness in GA) Representation Application Domain
4/29/2008 Immune Systems - an evolutionary metaphor page 26 of 40
Philosophical Divide
AIS can be thought of as a special case of:
Genetic algorithm
• • • •
Neural network
• • • •
Creation (gene libraries) Emphasis on mutation Matching ~ fitness (?) Variable population size
Pattern classification Unsupervised learning Topographic mapping Variable network topology
Considerations
•
•
Considerations
•
•
Role of antigen Preservation of diversity
AIS as optimiser
Interpreting response Training regime
AIS as classifier
4/29/2008
Immune Systems - an evolutionary metaphor
page 27 of 40
AIS for classification and clustering (1)
Supervised Tasks: AIRS
Algorithms
K- Nearest Neighbour Hamming (usu)
Varied (UCI datasets) Data Mining
Affinity (cf fitness in GA)
Representation
Application Domain
4/29/2008
Immune Systems - an evolutionary metaphor
page 28 of 40
AIS for classification and clustering (1)
Supervised Tasks: AIRS AIRS does competitively benchmarked against 35 classifiers on some standard datasets
Iris
6
Ionosphere
5
Diabetes
22
Sonar
8
(number represents ranking where 1 = best, ~35 = worst)
AIRS focus now shifting to parallel properties
Watkins, A., Timmis, J., Boggess, L. 2004 “Artificial Immune Recognition System (AIRS): An Immune-Inspired Supervised Learning Algorithm” Genetic Programming and Evolvable Machines 5 (3): 291-317
4/29/2008 Immune Systems - an evolutionary metaphor page 29 of 40
AIS for classification and clustering (2)
Unsupervised Tasks: aiNET
Algorithms
Immune network model Euclidean
Expression levels Gene Expression Clustering
Affinity (cf fitness in GA)
Representation
Application Domain
4/29/2008
Immune Systems - an evolutionary metaphor
page 30 of 40
AIS for classification and clustering (2)
Unsupervised Tasks: aiNet •an iterative clustering algorithm that performs data compression using a pattern recognition process inspired by the human immune system.
•applied to a benchmark data set of gene expression levels •Capable accurately detecting the presence of clusters without a priori knowledge about the number of clusters
Bezerra, G. B., de Castro, L. N. (2003), “A Hybrid Approach for Gene Expression Data Clustering”, International Conference on Bioinformatics and Computational Biology, 2003 http://www.vision.ime.usp.br/~cesar/programa/pdf/112.pdf
4/29/2008 Immune Systems - an evolutionary metaphor page 31 of 40
AIS for Security (1)
Negative Selection: LISYS
Algorithms
Negative Selection r contiguous bits
Network connections Intrusion Detection
Affinity (cf fitness in GA)
Representation
Application Domain
4/29/2008
Immune Systems - an evolutionary metaphor
page 32 of 40
AIS for Security (1)
•LISYS does quite well on test data
•Problems with false positives?
•Does it scale?
S. A. Hofmeyr and S. Forrest (1999) “Immunity by Design: An Artificial Immune System” Proceedings of the Genetic and Evolutionary Computation Conference (GECCO) pp. 1289-1296 Kim, J. and Bentley, P. J. (2001) "Evaluating Negative Selection in an Artificial Immune System for Network Intrusion Detection" , Genetic and Evolutionary Computation Conference 2001 (GECCO-2001) pp.1330 - 1337 Balthrop, J. Forrest, S. Glickman, M.R. (2002) “Revisiting LISYS: parameters and normal behavior” Proceedings of the 2002 Congress on Evolutionary Computation, CEC '02: 1045 - 50
Immune Systems - an evolutionary metaphor
4/29/2008
page 33 of 40
AIS for Security (2)
… Alternatively …
4/29/2008
Immune Systems - an evolutionary metaphor
page 34 of 40
Problems with the self-nonself worldview
•
How do we produce antibodies that react against antigens and yet avoid self?
One way is “Generate and Test”: negatively screen antibodies which react to self at production time But this is expensive!
•
• •
It‟s difficult to screen against ALL self. Self also changes over time
And it is not necessary to screen against all non-self – only dangerous non-self
•
•
Aickelin & Cayzer 2002 The Danger Theory and Its Application to Artificial Immune Systems Proc. International Conference on AIS (ICARIS 2002)
4/29/2008 Immune Systems - an evolutionary metaphor page 35 of 40
The Danger Theory
•
In the danger model, the idea is to recognise „danger‟ rather than non self.
The screening is accomplished post production through an external „danger‟ signal. Thus the production of autoreactive antibodies (which react to self) is allowed.
•
•
•
If an (eg autoreactive) antibody matches a stimulus in the absence of danger, it is removed. Thus harmless antigens are tolerated, and changing self accommodated.
Matzinger (2002) The Danger Model: A renewed sense of self Science 296: 301-304
•
4/29/2008
Immune Systems - an evolutionary metaphor
page 36 of 40
Towards a „dangerous‟ IDS
“The danger theory suggests that the immune system reacts to threats based on the correlation of various (danger) signals, providing a method of „grounding‟ the immune response, i.e. linking it directly to the attacker.”
Aickelin U, Bentley P, Cayzer S, Kim J and McLeod J (2003): 'Danger Theory: The Link between AIS and IDS?', Proceedings ICARIS-2003, 2nd International Conference on Artificial Immune Systems, LNCS 2787, pp 147-155
„Danger‟ signals (eg memory usage, SIGABRT signals) could be useful evidence to help a security AIS refine its detectors.
Danger = Grounding ?
EPSRC Adventure Fund 2004-2007: HP, UCL, UWE, Nottingham
4/29/2008 Immune Systems - an evolutionary metaphor page 37 of 40
Other ways of using danger
Danger = Crime, Antigen = Suspect
or...
Danger = Context ?
It could also be useful for data mining, where the „danger‟ signal is a proxy measure of interest „Danger Zone‟ can be spatial or temporal
Andrew Secker, Alex Freitas, and Jon Timmis (2005) “Towards a danger theory inspired artificial immune system for web mining” in A Scime, editor, Web Mining: applications and techniques, pages 145-168 (Idea Group)
4/29/2008 Immune Systems - an evolutionary metaphor page 38 of 40
Future Prospects
• Optimization: • Data • AIS
has taken a back seat.
Mining: classification, clustering
for security: research ongoing Theory: One to watch
• Danger • Other
ideas: community, modelling, immunocomputing…
Immune Systems - an evolutionary metaphor page 39 of 40
4/29/2008
A slightly less simplified immune system
Innate
vs
Acquired
Cell Mediated
vs
Humoral
T Cell (CD-4, Helper) Binds to MHC-antigen complex Secretes cytokines to help…
B Cell T Cell
(CD-8, Killer) Kills cell (viruses) which binds to antigen and recruits phagocytes (innate)
Antibody
Secretes
4/29/2008
Immune Systems - an evolutionary metaphor
page 41 of 40
AIS – basic algorithm
Initialise population of antibodies
WHILE (not finished)
Present antigen Calculate fitness (=match to antigen) Select Reproduce (clonal expansion) Mutation (no crossover) Replace (variable population) Memory cells END WHILE
4/29/2008 Immune Systems - an evolutionary metaphor page 42 of 40
AIS – Refined algorithm
Basic Matching Algorithm
Population of B Cells (antibodies) Clonal expansion and hypermutation
Extensions
Lifecycle events, screening (positive/negative selection) Other IS elements (T Cells, cytokines) Network interactions (idiotypic effects) Other – localization, self adaptation, population control
Choices
Genotype/Phenotype (Representation & Shape Space) Matching (Hamming, Euclidean, r-contiguous, other)
Immune Systems - an evolutionary metaphor page 43 of 40
4/29/2008
The Idiotypic Effect: Antibody-antibody interactions
Internal Image of Antigen Anti-Idiotypic Set
P2
-
Jerne’s Big Idea (1974)
Idiotype: specificity of antibody (epitopes to which it will bind) Idiotope: An idiotypic epitope Evidence: Antibodies produced against antibodies of same species (cf individual)
I2
P3
+
I3
I1
Idiotypic Set
P1
Antigen
4/29/2008 Immune Systems - an evolutionary metaphor
page 44 of 40
The Idiotypic Effect – Why do we care?
• Biological
importance - ???
models – Varela, Castellani
• Immunological • Pattern
recognition – Timmis & Hunt
• Non-stationary
environments (idiotypic memory) – Gaspar & Collard Optimisation – de Castro communities – Cayzer & Aickelin
Immune Systems - an evolutionary metaphor page 45 of 40
• Multimodal
• Recommendation
4/29/2008
Modelling the Idiotypic Effect
dxi dt
antibodies I am antigens death c recognised recognised recognised rate N n N c m ji xi x j k1 mij xi x j m ji xi y j k2 xi j 1 j 1 j 1
For N antibodies, n antigens. xi is the concentration of antibody i yi is the concentration of antigen I c, k1 and k2 are scaling constants
Immune Systems - an evolutionary metaphor page 46 of 40
• • • •
• mij is a matching function
4/29/2008
AIS for Optimisation
Antibodies as: entire solutions „building blocks‟
Antigens as: objective functions constraints fit/feasible solutions solutions to subproblems weight combinations spanning Pareto optimal front
AIS usually hybridised with GA: Antibody selection Gene library creation Emergent fitness sharing (generalist/specialist)
4/29/2008
Immune Systems - an evolutionary metaphor
page 47 of 40
AIS for Optimisation
Evaluation
Applied to TSP (of course), job shop scheduling, time series prediction, truss design, capacitor placement, time dependent optimization…
Some good results on test problems
BUT…
Often little „added value‟ to GA AIS metaphor somewhat strained Difficult to find fair comparisons Best viewed as a collection of hybridising techniques
4/29/2008
Immune Systems - an evolutionary metaphor
page 48 of 40
Example: Hajela & Yoo 2001
Designs
Feasible Antigen Infeasible
Antibody
Crossover
Small s all Generalist AIS best
Mutation
(unconstrained objective function)
4/29/2008 Immune Systems - an evolutionary metaphor page 49 of 40
GA