Inverted pendulum controlled by a fuzzy system

This is an example of a fuzzy system to control an inverted pendulum.

What is an inverted pendulum

For the general description of an inverted pendulum, see Wikipedia.

Also there are several examples of real world inverted pendulums to find at YouTube or Google Video.

General structure

The whole system consists of a simulated inverted pendulum which current state is feed into a controller. Its result is then used to control the acceleration of the base of the inverted pendulum.

To show off some features of pyfuzzy the controller is realized using a fuzzy system. (However, one can also realize other types of controllers, as an example there is included a neural network as controller.)

Description of parts

History

This system was written orginally in Delphi for purpose to gain some experience in some topics taught in René Liebscher's study of computer science. This work is still available at http://www.htw-dresden.de/~iwe/Belege/Liebscher/neuro1/index.html. (In German)

Later when creating pyfuzzy it was converted to python, to serve here as an example.