Introduction to
Computational Intelligence
Textbook: Computational Intelligence: Concepts to Implementations
by Eberhart and Shi
Outline of class
session
•Introduction
•Discuss handout
•Review course outline
•Individual introductions
•Resources in addition to
textbook
Intro. to Cl: Course Outline
(maybe)
•Introduction
•Foundations of CI
•Evolutionary
Computation
•Neural Networks
•Fuzzy Logic
•Computational
Intelligence
•Metrics and Analysis
•Case Studies
Introducti
on
•Definition of computational intelligence
•Advantages of Cl tools
* Can be implemented by “domain”
experts
* Relatively short development time
•This course is applications-oriented
* Can solve tough problems
•Book software assumes students have
knowledge of:
* C programming
•Applications selected based on:
* Basic concepts,
* Experience/practice,
* Cool,
* Impact factor
Computational Intelligence
Definition
Computational intelligence comprises
practical adaptation and self-organization
concepts, paradigms, algorithms and
implementations that enable or facilitate
appropriate actions (intelligent behavior) in
complex and changing environments.
Outline of Book
Chapter 1 – Foundations
Chapter 2 – Computational
Intelligence Chapter 3 – Evolutionary
Computation
Chapter 4 – Evolutionary Computation
Implementations
Chapter 5 – Artificial Neural Networks
Chapter 6 – Neural Network
Implementations Chapter 7 – Fuzzy
Systems
Chapter 8 – Fuzzy System Implementations
Chapter 9 – Computational Intelligence
Implementations Chapter 10 – Performance Metrics
Chapter 11 – Analysis and Explanation
Chapter 12 – Case Study Summaries
Appendix – Computational Intelligence
Resources Glossary
Foundations Chapter
•Technical and historical discussion of
component
technologies
•Foundations reviews background of
component technologies
•Defines terms; relates to biology and
behavioral motivations; discusses “myths”;
reviews applications
Computational Intelligence
•Introduction to computational
intelligence
•Adaptation
•Self-organization
•Computational intelligence systems
•How CI fits into the environment
•Soft computing
Evolutionary Computation
•History: reviews development history of
EC with focus on people
•Concepts, paradigms and
implementations of evolutionary
algorithms
•Evolutionary Computation Theory and
Paradigms: reviews genetic algorithms,
evolutionary programming, evolution
strategies, and genetic programming.
•Evolutionary Computation Implementations:
genetic
Neural Networks
•Neural network concepts,
paradigms, and implementations.
•Neural Network Theory and Paradigms: terminology,
biological bases, survey of architectures and
topologies, review of learning paradigms and
recall procedures.
•Neural Network Implementations: back-
propagation, self-organizing feature maps,
and learning vector quantization.
Fuzzy Systems
•Theory, concepts and implementations of
fuzzy logic
and fuzzy systems.
•Fuzzy Systems Theory and Paradigms: Fuzzy
logic terminology and symbology, fuzzy logic
theorems, differences with probability, steps
in applying fuzzy logic.
•Fuzzy Systems Implementation: fuzzy
expert system.
Computational Intelligence
Implementations
•Implementation issues including GA and
fuzzy adaptation
•The fuzzy evolutionary fuzzy rule
system implementation
•Packages: EnCog, Neuroph,
Neuroshell, Weka,
•Matlab, Roll-Your-Own, etc.
•Choosing/using the best methods
Metrics and Analysis
•Tools needed for CI system development.
•Performance Metrics: methods for measuring
and representing the performance of
computational intelligence tools.
•Analysis and Explanation Facilities: graphical
representation of neural network weights,
development of explanation facilities for CI
systems, example of explanation facility for
a neural network.
Case Studies From Book
•Detection of epileptiform
spikes
•Battery state of charge
•Schedule optimization
•Human tremor analysis
•Control system
•Neural network approach
•Fuzzy logic approach
Our Case Studies
•Multiple Fault Diagnosis
•Network Configuration
•Harvest Scheduling
•Multiple Recursive
Generators
•Snake in the Box
•Solar Radiation Prediction
•Temperature Prediction
•Others
This course is about:
•Computational tools for uses in practical
applications
•Self-organization
•Complex adaptive systems
This course is not about:
•Everything there is to know about CI and its
components
•Lots of mathematical derivations and proofs
•Agents
•Life (whatever that is)
Foundations -
Outline
•Introduction
•Definitions
•Biological/behavioral
bases
•Myths
•Application areas
Introductio
n
•Focus on practical
applications
•Emphasize the PC platform
•Implementation is up to
you
Definition of
Intelligence
Webster’s New Collegiate Dictionary
defines intelligence as “1a(1) : The
ability to learn or
understand or to deal with new or trying
situations : REASON; also : the skilled use of
reason (2) :
the ability to apply knowledge to
manipulate one’s environment or to think
abstractly as measured by objective criteria
(as tests).”
Another Definition of
Intelligence
The capability of a system to adapt its
behavior* to meet its goals in a range of
environments. It
is a property of all purpose-driven
decision makers.
- David Fogel
* implement decisions
Definition: Evolutionary
Computation
Machine learning optimization and
classification paradigms roughly based
on mechanisms of evolution such as
natural selection and biological
genetics. Includes
genetic algorithms, evolutionary
programming, evolution strategies and
genetic programming.
Definition: Artificial Neural
Network
An analysis paradigm very roughly
modeled after the massively parallel
structure of the brain.
Simulates a highly interconnected, parallel
computational structure with numerous relatively
simple individual processing elements.
Definition:
Fuzziness
Fuzziness: Non-statistical imprecision and
vagueness in information and data.
Fuzzy Sets model the properties of
properties of imprecision, approximation
or vagueness.
Fuzzy Membership Values reflect the
membership grades in a set.
Fuzzy Logic is the logic of approximate
reasoning.
It is a generalization of conventional logic.
More
Definitions
Paradigm: A particular choice of attributes for a
concept.
An example is the back-propagation
paradigm that is included in the neural
network concept. In other words, it is a
specific example of a concept.
Implementation: A computer program written and
compiled for a specific computer or class of
computers that implements a paradigm.
Soft
Computing
Soft computing is not a single methodology. Rather, it is a
consortium of computing methodologies which collectively
provide a foundation for the conception, design and
deployment of intelligent systems. At this juncture, the
principal members of soft computing are fuzzy logic,
neurocomputing, genetic computing, and probabilistic
computing, with the last subsuming evidential reasoning,
belief networks, chaotic systems, and parts of machine
learning theory. In contrast to traditional
hard computing, soft computing is tolerant of imprecision,
uncertainty and partial truth. The guiding principle of
soft computing is: exploit the tolerance for imprecision,
uncertainty and partial truth to achieve tractibility, robustness,
low solution cost and better rapport with reality.
- L. Zadeh
Definition of
Computational
A methodology involving computing that exhibits
an ability to learnIntelligence
and/or to deal with new
situations, such that the system is perceived to
possess one or more attributes of reason, such as
generalization, discovery, association and
abstraction.
Silicon-based computational intelligence systems
usually comprise hybrids of paradigms such as
artificial neural networks, fuzzy systems, and
evolutionary algorithms, augmented with
knowledge elements, and are often designed to
mimic one or more aspects of carbon-based
biological intelligence.
Computational
Intelligence
Definition
Computational intelligence comprises practical
adaptation and self-organization concepts,
paradigms, algorithms, and implementations
that enable or facilitate appropriate actions
(intelligent behavior) in complex and changing
environments.
Biological Basis: Neural
Networks
Neurons: nerve cells; consist of dendrites,
body and an axon; signals flow through
synapses.
Some differences between biological and
artificial neurons (processing elements):
* Signs of weights (+ or -)
* Signals are AC in neurons, DC in
PEs
* Many types of neurons in a
system; usually only a few at most in
neural networks
* Basic cycle time for PC (~100 ns) faster
than
Biological
Neuron
Biological Basis:
Evolutionary
Computation
• Ties with genetics, “a branch of biology that
deals with the heredity and variation of
organisms”
•Chromosomes: structures in cell bodies that
transmit genetic information; humans have
46, in 23 pairs
•Individual patterns in EC
correspond to chromosomes in
biological systems
•The genotype completely specifies an
organism; in EC a structure specifies a
system; in most EC tools, one string
specifies a structure, so structure is
interchangeable with chromosome. A
Chromosom
es
Drawing by Mark
Eberhart
Biological-EC Chromosome
Differences
•Artificial (EC) chromosomes all same
length
•Biological: DNA...EC: bits or real
numbers
• In reproduction, biological cells divide,
while EC cells copy
• Synthesis of new chromosomes: 50
percent from each biological parent,
any percentage from EC parents.
Mutation not intrinsic to biological
system as it is in EC.
Fuzzy Logic Behavioral
Motivations
• FL analogous to uncertainty in human
experiences (“Stop the car pretty soon.”)
• Fuzziness is associated with
nonstatistical uncertainty
• FL thus is reflected at the behavioral level
of the organism
•Fuzziness is not resolved by observation
or measurement
CI
Myths laureate
•The supercomputer/Nobel
myth
• CI implementations are faster,
cheaper and better than anything
else
•CI will eliminate need for
programming
•CI is more important than
preprocessing
•Only biology experts can use CI
•Fuzzy logic is fuzzy
•Fuzzy logic is a substitute for
probability
•Optimization is possible
Application Areas: Neural
Networks
•Classification/
Prediction
•Associative memory
•Clustering or
compression
•Simulation or
composition
•Control systems
Application Areas:
Evolutionary
•
Computation
Optimization
* Route Finding
* Scheduling
•Classification
* Diagnosis (OK, minimal set
covering)
•Configuration (aka, design)
Application Areas: Fuzzy
Logic
•Control systems
* Vehicles
* Home appliances
•Expert systems
* Industrial processes
* Diagnostics
* Finance
* Robotics and
manufacturing
Chapter 1 Final
Thoughts
Hardware/software distinctions are blurred
Emphasis on applicability, not plausibility
Not looking for route to intelligent behavior
Developer (you) must do active design, develop,
test and debug (traditional), plus observation
and analytical thinking (not so traditional).
Chapter 2:
Computational
Intelligence
Computational
Intelligence:
•Adaptation andIntroduction
learning are discussed and
compared
•Self-organization and evolution are discussed
•Historical views of CI are reviewed
•Concepts of CI are reviewed, as is how it fits
into larger
picture
•Definitions of CI are presented and discussed
•Work reported here is extension of that done by
Marks
and Bezdek
Adaptation versus
Learning
Adaptation 1: the act or process of adapting : the state of
being adapted 2: adjustment to environmental
conditions: as a: adjustment of a sense organ to the
intensity or quality of stimulation b: modification of an
organism or its parts that makes it more fit for existence
under the conditions of its environment.
Adapt: to make fit (as for a specific or new use or
situation) often
by modification
Fit: suitable, adapted so as to be capable of surviving,
acceptable from a particular viewpoint
Adaptation versus
Learning
Learning: knowledge or skill acquired by
instruction or study syn: knowledge
Learn: to gain knowledge or understanding of or
skill in by study, instruction or experience
syn: discover
Learning is what an entire intelligent system does.
Definition of
Adaptation
Adaptation is any process whereby a
structure is progressively modified to give
better performance in its environment.
Holland 1992
Adaptive processes are improvement
(amelioration) processes. They are
usually not really optimization
processes.
Adaptati
on
Adaptation overcomes the barriers of
nonlinearity and local optima.
It involves a progressive modification of some
structure or structures, and uses a set of
operators acting on the structure(s) that evolve
over time.
Adaptation is “…a fundamental process,
appearing in a variety of guises but subject to
unified study.”
- J. Holland
Barriers to
Adaptation
•Large problem spaces
•Large numbers of variables
•Complex and nonlinear fitness functions
•Fitness functions that change over time
and over the problem space
•Complex and changing environments
The Law of
Sufficiency
If a solution to a problem
is:
•Good enough (it meets
specs)
•Fast enough
•Cheap enough
Then it is Sufficient.
System Adaptation
Methodologies
•Supervised adaptation (training,
learning)
•Unsupervised adaptation (training,
learning)
•Reinforcement adaptation (training,
learning)
Definition of Supervised
Adaptation:
"The process of adjusting (adapting) a system so
it produces specified outputs in response to
specified inputs." "Supervised” means that
the output is known for all inputs and the system
training algorithm uses the error to guide the
training. (Reed and Marks 1999)
Supervised
Adaptation
Supervised
Adaptation
•A “teacher” provides input-output examples (the
“gold
standard”)
•Adaptation is carried out one iteration at a time
•Fitness is often inversely proportional to a
function of the sum of errors
•Good for function approximation: mapping input
vectors to output vectors
•Example: Back-propagation algorithm used to
train
neural networks
Definition of
Reinforcement
Adaptation:
A "sparse reinforcement signal" grades
the system response as good or bad.
A
“critic” provides heuristic
reinforcement information.
Example: game playing.
Reinforcement
Adaptation
Reinforcement
Adaptation
•Most closely related to biological systems
•Has roots in dynamic programming
•Often waits until the time series of inputs is
complete to judge the fitness
•The system “critic” only looks at
outcomes, not individual error measures
Example: Particle swarm optimization
Definition of
Unsupervised
Adaptation:
•The system adapts to regularities in the
data according to rules implicit in its
design. The 'design' is
a substitute teacher. Targets don't
exist. (Reed and Marks 1999)
•No indication of fitness exists whatsoever
•Offline evaluation occurs after the
algorithm stops running
•Examples: SOFM and LVQ networks
(clustering)
Unsupervised
Adaptation
The Three Spaces of
Adaptation
•Input parameter (problem) space
Defined by dynamic ranges of input
variables
•System output (function) space
Defined by dynamic ranges of output
variables
•Fitness space
Defines “goodness” of solutions; often
scaled from 0 to 1
Remember that, in general, system output and fitness
values aren’t the same.
Behavior of Adapted
System
•Converges to stable point
•Exhibits cyclical behavior
•Exhibits chaotic behavior
•Exhibits complex behavior (the edge of
chaos)
Note: These behaviors are also exhibited by
system adaptation processes!
Self-
Definitions: Organization
•apparently spontaneous order
•matter's incessant attempts to organize itself into ever more
complex structures, even in the face of the incessant forces of
dissolution described by the second law of thermodynamics
•overall system state is emergent property of the system
interconnected system components become organized in a
productive or meaningful way based on local information
Complex systems can self-organize
The self-organization process works near the "edge of chaos"
Self-organization,
cont’d.
Bonabeau’s definition of self-organization: “A set of
dynamical mechanisms whereby structures appear
at the global level of a system from interactions
among its lower- level components. The rules
specifying the interactions among the system’s
constituent units are executed on the basis of purely
local information, without reference to the global
pattern, which is an emergent property of the
system rather than a property imposed on the
system by an external ordering influence.”
Examples:
Formation of ice crystals, salt crystals.
Cellular automata. The
Evolution beyond
Darwin
•Darwinian view of evolution
•Shortcomings of Darwinian theory
•Self-organization
•New view of evolution
•Implications for CI & system
adaptation
Darwinian View of
Evolution
•Actually Darwin and Mendel
•Chromosome composition determined by
parents (animals and humans)
•Mutation expands “search space” (WHAT?)
•Survival of the fittest (or the most skillful)
Shortcomings of Darwinian
Theory
•Origin of life by "chance" or mutation is highly
improbable in time frame of earth, well maybe
•Evolution of complex life forms by mutation
alone also highly improbable, seems
reasonable
New View of
Evolution
•Complex systems can “appear” over relatively
short time (compared with Darwinian evolution)
•It appears that natural selection and self-
organization work “hand-in-hand,” i.e., that
evolution = natural selection + self organization
Implications for
Computational Intelligence
and System Adaptation
•CI has been based roughly on Darwinian
theory and biological analogies
•We need to incorporate more self-
organization (emergent behavior) into CI by
design rather than by accident (focus on the
edge of chaos)
•The CI chapter goes into this in more detail
History of
Computational
Intelligence
Arranged by methodology
Focus is on people (somewhat arbitrarily
chosen)
Discussed roughly in chronological order
The Age of Computational
Intelligence
First use of the term (in its current context) by
James Bezdek in 1992
First IEEE World Congress on Computational
Intelligence in Orlando in 1994
First CI text in 1996
Second IEEE World Congress on CI in Anchorage
in 1998
Subsequent World Congresses in Hawaii
(2002), Vancouver (2006)…next in Hong
Kong (2008)
Historical View of
Computational
Intelligence
•“Computational Intelligence” was used in the title
of a journal in Canada starting in 1980s, but not
meaning what we now mean by the term
•First paper using term published by Bezdek in
1992 in
Int. Jour. Approximate Reasoning.
-Dealt with pattern recognition only
-Evolutionary computing included in CI only by
reference
History of
Computational
Intelligence, Cont’d.
Marks published editorial in IEEE Trans. Neural
Networks in 1993 focused on the World
Congress on Computational Intelligence to be
held in 1994.
He identified “Neural networks, genetic
algorithms, fuzzy systems, evolutionary
programming, and artificial life” as the “building
blocks of CI.”
He also said, “Although seeking similar goals, CI
has emerged as a sovereign field whose research
Bezdek’s 1994 Definition
of CI
A system is computationally intelligent when it:
deals only with numerical (low-level) data, has
a pattern recognition component, does not
use knowledge in the AI sense; and
additionally, when it (begins to) exhibit (i)
computational adaptivity; (ii) computational
fault tolerance; (iii) speed approaching human-
like turnaround, and (iv) error rates that
approximate human performance.
Pattern
Recognition
Definition: The identification of objects and
images by their shapes, forms, outlines,
color, surface texture, temperature, or other
attribute, usually by automatic means. [Weik
’89, ATIS Committee T1A1]
Pattern recognition, like intuition, has a vague
definition.
We know what it means to recognize a face, but
we cannot explain how we do it.
From
Bezdek:
From
Bezdek:
Pedrycz’s Definition of
Computational
Intelligence
Computational intelligence (CI) is a recently
emerging area of fundamental and applied
research exploiting a number of advanced
information processing technologies. The main
components of CI encompass neural networks,
fuzzy set technology and evolutionary
computation. In this
triumvirate, each of them plays an important, well-
defined, and unique role.
(Pedrycz 1998)
Another View of
Computational
Intelligence
A different viewpoint exists with respect to aspects of
Bezdek’s model:
* the dichotomy of functions along carbon vs. silicon
lines
* statement that some computational models
don’t have biological equivalents
* characterization of nodes as subsets of
subsequent nodes
* requirement that pathways from low complexity
nodes to
high complexity nodes pass through
intermediate nodes
The Authors’
Viewpoint
* Intelligence exists in many kinds of systems; it does
not
matter what kind of system produces the
intelligence
* All computational models were designed and
implemented by humans; therefore, they must
have biological analogies
* Nodes are not always subsets of more complex
nodes... two-way communication occurs
* Direct pathways exist from nodes of low
complexity to
those of high complexity
Computational
Intelligence
Definition
Computational intelligence
comprises practical adaptation and self-
organization concepts, paradigms,
algorithms and implementations that
enable or facilitate appropriate actions
(intelligent behavior) in complex and
changing environments.
Relationships Among
Components of
Intelligent Systems
Attributes of
Intelligence
Some attributes of intelligence are not explicitly
represented on the diagram:
* Complexity - generally increases from left
to right on
diagram
* Stochasticity/chaos - probably present in
each element of diagram
Diagram emphasizes pattern recognition; other
elements are
very important (and are missing)
World Model
Details
Simplified View of
Computational
Intelligence
Chaos or
Stochasticity
CI paradigms are replete with
“stochasticity” or “randomness.”
NN weight initialization
NN asynchronous updating
NN and EC simulated annealing
EC crossover (ES recombination)
EC mutation
EC selection (usually)
Randomness Does Not
Exist
Randomness is only simulated in
computers with deterministic programs
We therefore are really dealing with
pseudorandomness
As for nature, “God does not play dice.” –
A. Einstein
What we observe as “random” or “stochastic” in
nature are actually nonlinear dynamics systems
Generalizati
on y = f(x) maps each input
Assume a function
to an output in the problem space, and that
our data set represents only a small part of
the problem space.
We want to build a model f *(x) such that other
values of x will be mapped into Y such that f
*(x) f(x) for x*
not in the data set. This is generalization.
We usually assume that f *(x) = f(x) for a
perfect system.
Note that we usually split our data set into
training and test sets, and we thus usually
measure the generalization capability on the
What About Artificial
Intelligence?
Where does AI fit in? At the shell of the
Adaptation and Self-organization node, and in
the World Model, mainly.
CI attributes that do not hold for AI and hard computing:
• The ability to generalize
• The ability to deal with partial truths and uncertainty
• Graceful degradation of system performance
• The ability to perform well in complex and changing
environments
Hard computing attributes that do not hold for CI systems:
•Precision
•Certainty
AI
Definition
In the 1992 Dictionary of Science and Technology published by
Academic Press (Christopher Morris, Ed., San Diego, CA:
Academic Press, page 160), Gordon S. Novak (then at the
University of Texas) defines artificial intelligence as:
“the study of the computation required for intelligent behavior
and the attempt to duplicate such computation using
computers. Intelligent behavior connects perception of the
environment to action appropriate for the goals of the actor.
Intelligence, biologically costly in energy, pays for itself by
enhancing survival. It isn’t necessary to understand perfectly,
but only to understand well enough to act appropriately in real
time.”
Might substitute the word “processing” for “computation,” and
say “using computers and other systems,” but generally the
definition is reasonable.
Computational Intelligence
Implementations
CI systems usually comprise hybrids of
paradigms such as neural nets, fuzzy logic, and
evolutionary algorithms.
Component paradigm tools become
inseparable and indistinguishable, i.e., each
tool loses its individual identity.
Conclusi
on
Computational Intelligence provides success
stories that are often hard to justify with
formal mathematical models (which are but
a subset of all computational models, some
of which are based on mathematics, and
some of which are not).
- Jim Bezdek