PPT Presentation
Download
Report
Transcript PPT Presentation
JEP-16160-2001
Bitola Workshop
December 2003
Outline of a Course on
Computational Intelligence
Claudio Moraga
University of Dortmund
Germany
[email protected]
The world of Computational Intelligence
Fuzzy Logic
Evol.
Algor.
Neural
networks
Probabilities
and statistics
© cm
Artificial Intelligence v/s Computational Intelligence
Artificial
Intelligence
Artificial
Intelligence
Computational
Intelligence
Computational
Intelligence
© cm
Neural Networks
1. Basics:
Definitions. The point of view of neurophysiology; the point of
view of Approximation Theory. Historical development.
Types of neural networks from the point of view of structure,
information flow, transfer function of elementary units.
Feed-forward neural networks. Training algorithms. Learning
and generalizing.
2. Classification of patterns and approximation of functions.
Design of experiments. Statistical considerations for the
evaluation of results
Discussion of examples
3. New applications (e.g. Blind Source Separation)
© cm
An environment to learn and design Neural networks
SNNS: Stuttgart neural networks simulator
Comprises:
• Different types of neural networks
• Different training algorithms
• Several representations of weights and outputs
• Demonstration examples
• Well documented handbook (in English)
SNNS is public domain
http://www-ra.informatik.uni-tuebingen.de/SNNS/
© cm
Fuzzy Logic
1. Basics
Historical development; classic sets and fuzzy sets
2. Operations with fuzzy sets
Basic fuzzy connectives. The concept of t-norms and t-conorms
Generalized Modus Ponens; fuzzy inference
Compositional Rule of Inference
3. Applications
Work with Linguistic Variables; modeling with fuzzy if-then rules
Fuzzy decision making
Fuzzy control
© cm
An environment to design fuzzy logic systems
Xfuzzy 3.0
“This new version of Xfuzzy is based on a new specification
language (XFL3) which extends the advantages of its predecessor,
allowing the use of linguistic hedges as well as new fuzzy operators
defined freely by the user. New CAD tools have been included to
ease the edition of operator sets and hierarchical systems, to
generate 2- and 3-dimensional graphic outputs, and to monitor the
inference process. The tool that applies supervised learning has
been quitely renewed so as to include new algorithms as well as
pre- and post-processing techniques to simplify the obtained rule
bases. Xfuzzy 3.0 has been enterely programmed in Java. Hence, it
can be executed on any platform with JRE (Java Runtime
Environment) installed.”
http://www.imse.cnm.es/Xfuzzy/
Xfuzzy is public domain
© cm
Evolutionary Algorithms
This area comprises:
• Evolutionary strategies (Rechenberg, Schwefel)
• Genetic Algorithms (Holland)
• Evolutionary computing (Fogel)
• Simulated Annealing
• Ant colonies, swarms
Basics, structure of the algorithms, main variations
Comparative analysis of test examples
© cm
An environment to work with Genetic Algorithms
GALIB
GAlib contains a set of C++ genetic algorithm objects. The
library includes tools for using genetic algorithms to do
optimization in any C++ program using any representation and
genetic operators. The documentation includes an extensive
overview of how to implement a genetic algorithm as well as
examples illustrating customizations to the GAlib classes.
GAlib has been built on various UNIX platforms (SGI, Sun,
HP, DEC, IBM) as well as MacOS and DOS/Windows
systems. GAlib includes examples that use PVM for
distributed, parallel implementations. GAlib includes graphic
examples that use the Athena or Motif widget sets, or
MFC/VC++.
http://lancet.mit.edu/ga/dist or ftp://lancet.mit.edu/pub/ga/
GALIB is public domain
© cm
Hybrid Systems
Hybrid Systems combine different approaches in a search for
synergy
• Neuro-fuzzy Systems
• Neural networks with fuzzy data
• Genetic Algorithms with fuzzy fitness
• Evolutionary optimization of fuzzy systems
• Evolutionary design of neural networks
• Robust neural networks
• Working with fuzzy probabilities
© cm
Closing Remarks
The former proposal is an updated version of an elective Course
offered by the author at the Department of Computer Science of
the University of Dortmund.
Schedule: 1 semester at 2 hours per week (lecture) plus 2 hours
per week (exercises, mainly with the design environments).
Pre-requirements:
Students should have programming experience
Students should have passed all basic Mathematics Courses
(mainly Differential Calculus, Linear Algebra, and
Probabilities and Statistics)
© cm
Any questions?