  The biological immune system is a robust, complex, adaptive system that
defends the body from foreign pathogens. It is able to categorize all cells (or
molecules) within the body as self or non-self substances. It does this with
the help of a distributed task force that has the intelligence to take action
from a local and also a global perspective using its network of chemical
messengers for communication. There are two major branches of the immune
system. The innate immune system is an unchanging mechanism that detects and
destroys certain invading organisms, whilst the adaptive immune system responds
to previously unknown foreign cells and builds a response to them that can
remain in the body over a long period of time. This remarkable information
processing biological system has caught the attention of computer science in
recent years.
  A novel computational intelligence technique, inspired by immunology, has
emerged, called Artificial Immune Systems. Several concepts from the immune
system have been extracted and applied for solution to real world science and
engineering problems. In this tutorial, we briefly describe the immune system
metaphors that are relevant to existing Artificial Immune Systems methods. We
will then show illustrative real-world problems suitable for Artificial Immune
Systems and give a step-by-step algorithm walkthrough for one such problem. A
comparison of the Artificial Immune Systems to other well-known algorithms,
areas for future work, tips & tricks and a list of resources will round this
tutorial off. It should be noted that as Artificial Immune Systems is still a
young and evolving field, there is not yet a fixed algorithm template and hence
actual implementations might differ somewhat from time to time and from those
examples given here.
