11.0 computational intelligence
TRANSCRIPT
-
7/23/2019 11.0 Computational Intelligence
1/36
CITS7212 Computational Intelligence
Introduction
-
7/23/2019 11.0 Computational Intelligence
2/36
What is Computational Intelligence?
Pseudonyms:
Computational Intelligence
Natural Computation
Nature-Inspired Computing
Soft Computing
Adaptive Systems
-
7/23/2019 11.0 Computational Intelligence
3/36
A potted history of computing
-
7/23/2019 11.0 Computational Intelligence
4/36
First there was the Switch
-
7/23/2019 11.0 Computational Intelligence
5/36
and something called a Computer
http://www.lib.jmu.edu/special/jmuphotopages/stbu.aspx
http://www.lib.jmu.edu/special/jmuphotopages/stbu.aspxhttp://www.lib.jmu.edu/special/jmuphotopages/stbu.aspx -
7/23/2019 11.0 Computational Intelligence
6/36
Then there was the Thermionic Valve
(an automated or controlled switch)
-
7/23/2019 11.0 Computational Intelligence
7/36
and all sorts of things became possible!
Colossus Mark II
-
7/23/2019 11.0 Computational Intelligence
8/36
Some even dreamed of a Home Computer!
Source:http://c
leantechnica.com/category/re
cycling/
http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/http://cleantechnica.com/category/recycling/ -
7/23/2019 11.0 Computational Intelligence
9/36
Then came the Transistor(another switch)
http://ees.wikispaces.com/Historia+del+transistor
http://ees.wikispaces.com/Historia+del+transistorhttp://ees.wikispaces.com/Historia+del+transistor -
7/23/2019 11.0 Computational Intelligence
10/36
which got smaller
-
7/23/2019 11.0 Computational Intelligence
11/36
and smaller, and smaller...
-
7/23/2019 11.0 Computational Intelligence
12/36
...but it was still just a lotof switches!
-
7/23/2019 11.0 Computational Intelligence
13/36
The switches could do a lot of cool things...
They lovedlogic!
very small logic gates (and lots of them!) on a tiny chip
From logic you could make adders, multipliers, decoders, storage devices,...
This meant you could do lots of arithmetic really fast
so we called them computers
-
7/23/2019 11.0 Computational Intelligence
14/36
The switches could also be used to control things, like what sums to do
then you could decide what to do next depending on the answer
And the switches could repeat it as many times as you wanted
the switches could keep working while you played golf!
But it was very laborious setting up all that arithmetic up by hand
-
7/23/2019 11.0 Computational Intelligence
15/36
In theory you could control the switches,
but actually telling them what to do in
binary was a lot of hard work, and you
often made mistakes
So we came up with mnemonics whichwere clearer to humans, and the switches
decoded them into control signals
we called this assembly language
ADD A, STO B, JMP C,...blog.w
ired.com
So along came programming
-
7/23/2019 11.0 Computational Intelligence
16/36
We found we used lots of patterns of these mnemonics over and over, and
specifying every little step was still time-consuming and error-prone
Why not write human-likestatements and get the switches to compilethem
into mnemonics (and hence into binary) for you?
This abstraction away from switch language, along with bigger and better
storage devices, allowed us to program the switches for a whole heap of stuff
calculations, graphics, data storage and retrieval,
communications & networking, music, video,...
-
7/23/2019 11.0 Computational Intelligence
17/36
But ultimately they were still just binary switches...
...and we dont live in a binary world!
Not everything is true or false
Not everything is blackor white
how many tall people in this room?
who thinks the Dockers are a great football team?
raise your hand when the following bar becomes red...
-
7/23/2019 11.0 Computational Intelligence
18/36
Where switches run into trouble
Traditional switch programs run into difficulty with
uncertainty, or missing information
fuzzy concepts or categories
noisy/erroneous information
the analogue world
visuo-spatial, temporal change, inexact, adaptive, abstract
-
7/23/2019 11.0 Computational Intelligence
19/36
Yet humans and other animals do amazingly well
Huge complexity
extraction of important features from masses of information
Abstraction from detail
dealing with uncertainty, inexactness, noise, incompleteness
-
7/23/2019 11.0 Computational Intelligence
20/36
So how do we get computers to do these things?
-
7/23/2019 11.0 Computational Intelligence
21/36
Programming from an alternative perspective
Nature as proof of concept
how does nature do it?
what can we learn? copy? mimic?
-
7/23/2019 11.0 Computational Intelligence
22/36
Natural Computation (as defined on csse.uwa.edu.au)
Nature is a remarkable problem solver.
From multi-resistant super-bugs to ever more inventive humans,the mechanisms of construction, adaptation, learning, andco-operative behaviour found in nature have solved a vast array
of problems in very challenging environments.
Natural Computationis the field of computing that draws fromthe successes of natural systems to develop new ways of solvingcomputational problems in thereal world.
The sources of inspiration for natural computation systemscome from a number of closely related areas.
Four of the main areas are outlined below.
-
7/23/2019 11.0 Computational Intelligence
23/36
Evolutiondesigning the basics
Genes and chromosomes contain the recipe for nature's designs.
Evolution - through the immense power of natural selectionacting over geological time - provides a mechanism for reusing
good designs and improving performance.
Evolutionary techniques - such as genetic algorithms, evolutionaryalgorithms, evolutionary computation,and differential evolution-have been used widely to solve a huge range of problems in designand optimisation.
-
7/23/2019 11.0 Computational Intelligence
24/36
Projects we have conducted locally include:- Designing (networks of) comminution equipment for the mining industry.
- Designing torpedo tracks for the weapons industry.
- Evolving tactics for artificial soccer players.
- Solving sports scheduling problems.
- Solving 2D and 3D cutting & packing problems.
- Debugging logical errors in Java programs.- Evolving neural networks (neuro-evolution).
- and many others
-
7/23/2019 11.0 Computational Intelligence
25/36
Developmentconnecting the components
While genes encode the building blocks for an organism,
the way the organism develops depends upon both its
internal and external environments.
Your brain, for example, continues to develop its hardware
until at least your 20s, and there is evidence to suggest that
it retains its plasticity for much longer.
The way that an organism develops using its genetic recipe and the
factors that control it are still not well understood, and of our fourexamples this has had the least transfer to practical systems.
-
7/23/2019 11.0 Computational Intelligence
26/36
Projects we have conducted locally include:- Developing topographic maps between the retina and optic tectum.
-
7/23/2019 11.0 Computational Intelligence
27/36
Learningtraining the software
While an organism is born with and develops many raw capabilities,it is through interaction with the environment that it learns to usethese capabilities. You have all seen this in your own experience,
from a small child learning not to touch a hot stove, to the manyhours of training that lead to the expertise of a chess grandmasteror a surgeon.
In the early days of computing it was often stated that computerscould never exhibit intelligencebecause they could only carry out
tasks that their programmers had anticipated and pre-programmedsolutions for.
The field of machine learninghas shown that programs are able todevelop competencies far greater than those of their programmers,and this is one the most exciting areas for the future.
-
7/23/2019 11.0 Computational Intelligence
28/36
Projects we have conducted locally include:
- Learning to play games (Poker, Go, Pacman, numerous others).
- Fraud detection.
- Learning to identify intention in natural language dialogue.
- Learning to tag parts of speech using case-based reasoning.
- Applying computational learning theory (CLT) to planner induction.
- Reinforcement learning in high-dimensional state spaces.
- Learning to compose music.
- Reinforcement learning in small mobile robots.
-
7/23/2019 11.0 Computational Intelligence
29/36
Co-operationthe whole exceeds the sum of its parts
The success of many species relies not just on each individual's capabilities,
but rather on the co-operative behaviour or complex social interactions of
groups. This allows problems to be solved that could not be solved by any
single individual. Well-known examples include ants, bees, many predators,and, of course, humans.
The ideas behind social co-operation have led to algorithms
such asparticle swarm optimisation, ant colony optimisation, and
learning classifier systems.
-
7/23/2019 11.0 Computational Intelligence
30/36
Projects we have conducted locally include:
- Using PSO and LCSs to derive complex game strategies.
- Using PSO to optimise weights in recurrent neural networks.
- Investigating the convergence properties of PSO algorithms.
- Using LCSs to evolve sets for classification problems.
-
7/23/2019 11.0 Computational Intelligence
31/36
So what is Computational Intelligence?
Is CI defined entirely by analogy with the natural world,or can we be more precise?
The key properties of Computational Intelligence are:
Identifying simple mechanisms to produce good solutions,
rather than complex mechanisms to produce an optimal solution.
Exploiting heuristics and simple rule sets with complex emergent behavior.
Adaptation to the environment: CI processes will incrementally improve
their performance with exposure to an given environment.
Using approximate (fuzzy) measures in evaluatingthe outputs of processes.
The key technologies (EAs, NNs, ACO, PSO) all exhibit these qualities,
and fuzzy logic is used to design controllers that are tolerant of the
approximative nature of these methods.
-
7/23/2019 11.0 Computational Intelligence
32/36
What CI is not: Artificial Intelligence
Classical AI is the endeavor of making a machine appearintelligent.For example the Turing Test is assessed by the perception of an
external agent. The internal mechanism that mimics intelligence
is not as significant as the perception of intelligence.
Consider a key famous success of AI: Deep Blue beating Kasparov in 1997.
The system that beat Kasparov was highly optimized, with an extensiveknowledge base. There is nothing emergent or fuzzy about Deep Blue.
CI is a specific subset of AI,
but while AI focuses on the outcome,
CI focuses on the mechanism.
-
7/23/2019 11.0 Computational Intelligence
33/36
What CI is not: Cognitive Science
Cognitive science is the study of how intelligence is actually manifested,
rather than simply the perception of intelligence. It combines neuroscience,
psychology, linguistics, philosophy, and anthropology, as well as AI and CI,
to suggest how the human mind actually works.
While cognitive science is also in the intersection of biological models and AI,
its focus is on how the mind works, rather than how we might exploit these
models to solve computational problems.
CI often abstracts the complexities away from cognitive science to find the
simple underlying mechanisms that might be exploited.
-
7/23/2019 11.0 Computational Intelligence
34/36
What CI is not: Machine Learning
Machine learning is the study of mechanisms that allow a machine
to infer complex patterns and behaviors from empirical data.
Machine learning is used extensively in image and speech recognition,
as well as in data-mining applications.
While similar in nature to many CI techniques, the main difference is that the
core representation of knowledge in machine learning is statistical, whereas
the core representation of knowledge in computational intelligence is
approximate in nature (fuzzy).
Examples of machine learning include
Bayesian networks and Markov models.
-
7/23/2019 11.0 Computational Intelligence
35/36
What CI is not: Ontological Engineering
Ontology is the study of that which exists. In computer science terms,
ontologies are semantic networks that assign meaning to concepts.
Popular AI often delves into complex understandings of concepts (such as
self awareness), and the semantic web intends to devise a markup language
for ontologies to allow agents to infer the meaning of complex data.
CI does not intend to learn ontologies or derive meanings:
more often it seeks to optimize a behavior or function in a given ontology.
-
7/23/2019 11.0 Computational Intelligence
36/36
Key Technologies
Evolutionary computation
Populations of solutions competing/co-operating to improve over time
Neural networks
Modelling the connectivity of the brain
Fuzzy logic
Modelling with partial truth and probabilistic logic