Natural Computation and Applications
description
Transcript of Natural Computation and Applications
Natural Computation and Applications
Xin Yaohttp://www.cs.bham.ac.uk/~xin
Natural Computation Group
School of Computer ScienceThe University of Birmingham
UK
Frustration About Computers
Brittle Non-adaptive Doesn’t learn Hopeless in dealing with noisy and inaccurate
information Doesn’t do the homework for me although I told it
that I want a mark over 70% Never grow up Slow …
The Solution
What did we do when we had problems as a kid? Who do we normally turn to?
Ask our mother!
Motivation: Mother Nature
Nature Inspired Computation
Characteristics of Nature Inspired Computation
Flexible: applicable to different problems
Robust: can deal with noise and uncertainty
Adaptive: can deal with dynamic environments
Autonomous: without human intervention
Decentralised: without a central authority
Natural Inspired Computation
Evolutionary computation Neural computation Molecular computation Quantum computation Ecological computation Chemical computation …
Overview of Methods
Natural Computation Methods: Selected Examples
Evolutionary Algorithms Inspired by the biological process of evolution
Artificial Neural Networks Inspired by the function of neurons in the brain
Agent-based techniques Inspired by human social interaction
Ant colony / Swarm techniques
Inspired by the behaviour of social insects
Evolutionary Algorithms
Replacement
Selection
Recombination
MutationPopulation
Parents
Offspring
Artificial Neural Networks
Simplified model of a brain Consist of inputs, processing and outputs All layers joined by artificial neurons Fault tolerant Noise resistant Can learn and generalise Good at perception tasks
Agent-based Techniques
Multiple independent agents follow individual strategies
Macro-level behaviour develops
Useful for modelling trading strategies
Can simulate competitive markets
Dynamically optimised scheduling
Ant Colony Optimisation
Selected Examples
Container Packing
How to put as many boxes of different sizes into containers in order to minimise space wastage
Swarm intelligence for Animation
Flocking can be simulated in computers
• Flocking uses rapid short-range communication
• Behaviour governed by mutual avoidance, alignment and affinity.
• Simple rules generate complex behaviour
Channel Allocation Inspired by Fruit Flies
Fruitflies have an insensitive exoskeleton peppered with sensors formed from short bristles attached to nerve cells. It is important that the bristles are more or less evenly spread out across the surface of the fly. In particular it is undesirable to have two bristles right next to each other.
The correct pattern is formed during the fly's development by interactions among its cells. The individual cells "argue" with each other by secreting protein signals, and perceiving the signals of their neighbours. The cells are autonomous, each running its own "algorithm" using information from its local environment. Each cell sends a signal to its neighbours; at the same time it listens for such a signal from its neighbours.
This "arguing" process is the inspiration for the channel allocation method.
Constrained Dynamic Routing
Dynamic call routing in telecommunication networks
• Finding optimal routes for salting trucks
• Evolutionary algorithms: Robust, efficient and can be used for hard, dynamic problems for which there is little domain knowledge
Time Series Prediction
Telecommunications traffic flow prediction
Blue-green algae activity prediction in fresh water lakes
Energy consumption prediction
Financial modelling
Recognition and Classification
Object recognition Medical diagnosis Credit card assessment Fraud detection Vehicle tracking Subscriber churn
prediction
Creative Technologies
Natural computation techniques can be used effectively in the creative industry for graphics, images, music, games, etc.
Highly effective at exploring the huge space of possible artefacts
Boids Karl Sims’s artificial creatures
Creative Technologies: Evolutionary Art
Evolutionary art from Andrew Rowbottom Genetic art by Peter Kleiweg Organic art by William Latham
Summary
Evolutionary computation is part of natural computation
Evolutionary computation can be used in optimisation, data mining and creative design.
Evolutionary computation are particularly good at solving complex real –world problems where very little domain knowledge is available.
Evolutionary computation complements the existing methods.
Further Information
http://www.cs.bham.ac.uk/research/NC/ (research group in the School)
http://www.cs.bham.ac.uk/study/postgraduate-taught/msc-nc/ (MSc in Natural Computation)
http://www.evonet.polytechnique.fr/CIRCUS2/ (Evolutionary Computation Education Center - (EC)² )
http://ieee-nns.org/pubs/tec/ (IEEE Transactions on Evolutionary Computation)