1.hybrid neuro fuzzy

Upload: praveen-wensie

Post on 09-Apr-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/7/2019 1.Hybrid neuro fuzzy

    1/16

    ABSTRACT

    In this paper we described DANIELA (Digital Analog Neuro-fuzzy Interface for

    Enhanced Learning Applications), a real time neuro-fuzzy controller that

    implements intelligent control algorithms mixing neuro-fuzzy paradigms with Finite

    State Automata (FSA). The FSA tracks the state of the plant and selects the

    parameter (e.g. weights) of the controller accordingly. This mixing allows the

    system to change the control strategy according to the actual state of the plant which

    leads to the use of a number of very simple controllers, instead of a more complex

    single one which covers all possible plant conditions. For instance, our system

    applied to a six legged walking robot uses specialized controllers for every different

    plant state (for instance, forward and backward steps, curves,etc.).Adaptive learning

    through neral networks have been highly enhanced. The tight link with a DSP

    allows he NN hardware to be very simple since several operations related with the

    NNs (learning, weights ,refresh etc..,) can be performed by the DSP .Moreover the

    system can implement intelligent control paradigms mixing Neuro Fuzzy algorithms

    with finite static automata and/or digital control algorithms.

  • 8/7/2019 1.Hybrid neuro fuzzy

    2/16

    INTRODUCTION

    Real-time control of non-linear plants is often a hard and computationally

    intensive task. Neural networks and neuro-fuzzy systems are raising more and more

    interest in the field of real-time control. Advantages of neuro-fuzzy techniques are

    their non-linear characteristics, the capability of learning from examples, the human

    friendly description language, the adaptation capability, etc. Furthermore the

    availability of dedicated neuro-fuzzy processors permits a very fast implementation

    of neuro-fuzzy algorithms, and therefore it allows to use these methods in real-time

    applications, where a quite high sampling rate (namely, >1kHz) is required.

    The main reasons for the use of those methods instead of more traditional

    controllers are four-folds:

    i) we wanted to test the validity of neuro-fuzzy control techniques;

    ii) we had a lot of \human knowledge" on theproblem and fuzzy logic seemed

    to be the most straightforward way to include it into the design of the

    controller;

    iii) we used this application as a testbed for the tight integrationof neuro-fuzzy

    controllers with finite state automata; iii) we had available a neuro-fuzzy

    computing engine (DANIELA) with good real time performance which wasmore suited to implement neuro-fuzzy than other algorithms.

    EXAPODE WALKING MACHINE

    Aim of this paper is to design, built and test a small hexapode walking

    machine controlled by purposely developed neural chips, which can be used as a

    remotely controlled observation device and can evolve as a true mobile Robert. The

    machine can also be used as experimental test bed for different control strategies toinvestigate the possibility of small walking vehicles on different types of terrain.

    The main characteristic of the machine are simple and light weight

    mechanical architecture to contain overall cost, modularity to use the machine as a

  • 8/7/2019 1.Hybrid neuro fuzzy

    3/16

    research tool; flexibility leading to the possibility of adapting the gain to a variety of

    terrains, possibility of working as an autonomous system without the need of an

    umbilical cord for either energy supply or control.

    For the reasons, we chose to use low cost permanent magnets electric

    motors in connection with rechargeable batteries and to adopt a gait in which the

    vehicle is always in conditions of static equilibrium. A reptilian stance is adopted as

    its energetic disadvantages are of small importance. The design chosen allows to

    assume an insect stance even to switch to quadruped mammalian configuration.

    The mass of the mechanical components including the electric motors is 21.3 kg .

    The machine is already assembled and the first test are going on.

    Each leg is made of a shinbone and a thighbone both 50cm long it has three

    degree of freedom and is equipped with three current controlled motors. To obtain

    high efficiency, switching amplifiers are employed which are perfectly matched

    with the CPWM encoding used in the Neuro-Fuzzy core. All the actuators are

    directly controlled by power drivers. One of the actuator must carry a significant

    fraction of the hexapode weight(depending on the number of legs that support the

    body) and so its driver has maximum output current of 20A (namely 480MW),

    while for the other two drivers the output current is only 3A(namely 72W).

    Since the control task is complex, the idea is to build a hierarchy of Neuro-

    Fuzzy controllers have been chosen because of their good behavior in the presence

    of nonlinear systems and for their intrinsic generalization capability.

    PROTOTYPE BOARD

    A general purpose system based on a TMS320CXX. These DSP is available.

    The systems can support upto 256 channels for A/D and D/A conversion. Neuro-

    Fuzzy core units, PWM encoders, digital I/O, memory expansions an so on.

    The core of the system is a custom TMS320C31 board with up to 8Mbyte of

    RAM and 128Kbyte of Non Volatile RAM.This board is interfaced to the additional

    modules of the system by using a proprietary I/O bus. In this way each module is

    mapped into the DSP memory space. Special module provides a communication

  • 8/7/2019 1.Hybrid neuro fuzzy

    4/16

    with a host computer (eg a PC via a parallel port ) these modules connect a PC serial

    or parallel port with the DSP board via the I/O bus.

    This system is suitable both for industrial high performance control

    applications and educational tools depending on the amount and kind of modules

    plugged into it. Each module can be added with an extremely easy procedure and

    can be controlled by the software environment.

    So far, we have manufactured several module ; the main DSP board ,a

    reconfigurable Neuro-Fuzzy computing core, the last host computer interface

    modules an 8 channel 12 bit A/D and D/A converters, bus the complete system can

    accept many others as special purpose processors, drivers and actuator interfaces,

    special sensors modules and others.

    The Neuro-Fuzzy module is described in section 2, while converters module are

    classical Analog to Digital and Digital to Analog converters and also special

    converter module that convert analog and digital signals into Pulse Width

    Modulation signals and vice versa, the modules can be configured by the DSP by

    setting some parameter as bits numbers for digital converters and full scale ranges

    for the analog ones.

    NEURO-FUZZY COMPUTING COREThe proposed Neuro-Fuzzy core implements on hardware several Neuro-Fuzzy

    paradigms, its operation can be viewed either s a slave operation of the DSP or as an

    independent one. For its operatin Neuro-Fuzzy core takes as inputs either external

    signals(through dedicate A/D converters) or signals from the DSP subsystem via the

    field bus and also Neuro-Fuzzy core outputs can be sent either to external outputs or

    to the DSP.

    The Neuro-Fuzzy computing core presented in this section is based on a custom

    Neuro-Fuzzy processor called AMINAH and implements different paradigms as

    Multilayer Preceptron(MLP), Linear Networks(LN),Radial Basis Function (RBF)

    and also Weighted Radial Basic Function(WBRF) that are used to implement Fuzzy

    inference systems. As shown in fig Neuro-Fuzzy processor core has also a local non

  • 8/7/2019 1.Hybrid neuro fuzzy

    5/16

    volatile memory used to stores several banks of synaptic weights and some logic

    interface to connect AMINAH and the non volatile memory to the main system bus,

    it also has special analog circuits that provide timing, biases and reference signals.

    Every synaptic weights bank define a particular Neuro-Fuzzy system that

    includes synaptic weights and configuration information; only one of this bank is

    stored into the internal volatile AMINAH memory and every time that the active

    bank is changed the new weight and configuration information is automatically

    loaded into it.

    Neuro-Fuzzy core is considered as a slave device the DSP can perform several tasks

    on it such as:

    - DSP can write/read a bank of synaptic weights into/from the Neuro-Fuzzy

    core non volatile memory.

    - DSP can select a single bank to be the active one. The Neuro-Fuzzy

    subsystem will then automatically write active bank content into AMINAH

  • 8/7/2019 1.Hybrid neuro fuzzy

    6/16

    - DSP can read inputs and outputs of Neuro-Fuzzy subsystem to execute

    learning algorithms or other supervision tasks.

    Architecture of AMINAH

    The AMNAH chip has two cascaded neural network layers called hidden and

    output layer called hidden and output layer respectively. Architecture of one layer of

    AMINAH shown in figure is based on N x M synaptic array and a vector of M

    neurons. Each neuron j is connected to a row of N synapse plus a threshold (Sj,1

    Sj,y , Sj,o) while each column (S1,I .Sy,I , So,I ) is connected to the same input X,

    The hidden layer has N-7 inputs and M-16 outputs while the output layer has N-15

    inputs and M-8 outputs.

    AMINAH output signal are coded using Coherent Pulse Width Modulation

    (CPWM), a particular Pulse Stream technique AMINAH input signal (Xj) can either

    be analog or CPWM in the former case, they are converted using on chip analog to

    CPWM converters.

    Each AMINAH synapse uses two synapse weights (called respectively

    excitatory and inhibitory weights) to compute the synaptic contribution. A copy of

    active weights is stored internally into AMINAH using two capacitive memories per

    synapse. The synapse contribution depends also on the chosen neural paradigm thiscan be either Multi Layer Perception (MLP),Radial Basis Function(RBF), or

    Weighted Radial Basis Function (WBRF) of order 1, and therefore the system can

    also implement Fuzzy System.

    Synaptic contributions are charge quantities. For MLP operation each synapse

    generate charge quantities proportional to the product of the stored weight and width

    of the input CPWM signal; this product is quit linear and allow a small power

    dissipation while for RBF/WRBF operation each synapse generate charge quantities

    proportional to the distance between stored weight and width of the input CPWM

    signal.

    For the MLP paradigm, the synaptic contributions are presented as a

    differential current (I+MLP, I-MLP), while for the RBF/WRBF paradigms, they are

  • 8/7/2019 1.Hybrid neuro fuzzy

    7/16

    presented as a single ended current (I+MLP) while I-MLP is not used. Each row j of

    synapse sums up all the currents on the two common summation lines I+MLP and I-MLP

    (excitatory and inhibitory respectively).

    The neuron (one for each row ) generate a current that is the algebraic sum of

    them using programmable gain current mirrors multiplying it by a chosen factor

    R1

  • 8/7/2019 1.Hybrid neuro fuzzy

    8/16

    (2,1,1/2,,1/32) and can be turned on/off writing a configuration register

    in each neuron.

    NEURO-FUZZY CONTROLLER

    DANIELA has also special Power Drivers used to drive the actuators in the

    plant. Plant control is realized with a neuro-fuzzy algorithm computed by the neuro-

    fuzzy processor. Algorithm characteristics both for neural and fuzzy are defined by

    a matrix of synaptic weights and other neural parameters that are stored into the

    neuro-fuzzy processor. In order to define different control strategies optionally, one

    per each state of the FSA) there are different matrices of synaptic weights and neural

    parameters stored in the weight memory, where every matrix is stored in a

  • 8/7/2019 1.Hybrid neuro fuzzy

    9/16

    differentmemory bank.Only one bank can be active per time and its data are

    transferred to the neuro-fuzzy processor internal memory by the Configuration and

    Refresh Block every time the FSA changes states.

    This memory organization allows to obtain different neural controllers by

    changing the active memory bank. Weight memory is also used to store tables of

    FSA states and outputs; these parameters are used by the microcontroller to

    implement the FSA controller.

    The microcontroller performs the following tasks:

    1. on-line training: by sampling neuro-fuzzy inputs and outputs (also hidden) and

    modifying matrices of synaptic weights stored into weight memory. As the

    microcontroller is less powerful than the neural chip, learning is a relatively slow

    process, but this is not a problem in most learning controllers.

    2. FSA controller: by tracking the discrete states of the plant and selecting a suitable

    memory bank in order to change the control strategy. The computational

    requirements to compute the FSA are less stringent, as in most plants state

    transitions are much less frequent than neural computation.

    3. board self test: performing tests and diagnostic at power up.

    4. interface with a host computer; which can either write data into the memory or

    read several debugging information from the microcontrollers (such as neural

    states,learning performance, actual FSM state,etc.).

  • 8/7/2019 1.Hybrid neuro fuzzy

    10/16

    The purpose of the Conguration and Refresh Block is to transfer a matrix of

    synaptic weights and the other neural parameters from the active memory bank to

    the neural processor every time the FSA changes state.

    Required Hexapod Phases

    1. Modeling individual legs and the composite hexapod system.

    2. Identification of kinematics and the dynamics of the Robert(individual legs

    and complete Robert ).

    3. Design and implementation of a neuro-fuzzy controller for individual legs.

    4. Design of the motion co-ordination system(gait control and obstacles

    avoidance).

    5. Investigating the ability of the neural controller to autonomously learn to

    move on uneven grounds and to deal with obstacles .

    Control Hierarchy

    Motion coordination control. Its acts like a central which gives the legs the

    right high level control signals (such as Robert speed, Robert height from

    ground ,radians of trajectory ) to let the hexapode execute properly gait. Obstacle

    avoidance is achieved by giving proper trajectory information to each leg control.

  • 8/7/2019 1.Hybrid neuro fuzzy

    11/16

    Only large obstacles are avoided, as small ones ( namely roughness of the ground,

    small stones, holes etc ) are handled by each leg control.

    Leg controls. They are like local controls that defines the trajectory and the

    sequence of movements of each leg. They also recover and modify leg trajectories

    when small local obstacles are encountered.Joint position controls, They receive the

    angular positions and translate them into control signals for positioning motors.

    Leg Control

    Locomotion control is distributed evenly among the six legs. Independently from the

    different gait, each leg cycles over six main different states.

    Power phase: the leg on the ground where it supports and propels the body, moving

    backward to the posterior extreme positions.

    Lift phase: the leg rises from the posterior and loses its support function. Life phase

    ends when the leg is high enough to swing forward.

    Return phase: leg swings forward to the anterior extreme position. As soon as it

    reaches this point it is ready for next phase.

    Contact phase: leg lowers down to the ground. During this phase it start again to

    support the body weight.

  • 8/7/2019 1.Hybrid neuro fuzzy

    12/16

    Upstep phase: the leg rises when it hits an obstacle (obstacle avoidance). When the

    height is enough,the leg returns in the Return state.

    Backstep phase: the leg recover the right position after an obstacle avoidance or ifit is in time out.

    The use of Neuro-Fuzzy approach (Fuzzy-State Automata) allows to smooth the

    leg movements during walking (changes of speed and of directions without slipping

    of the feet in ground).

    Motion Coordination Control

    The local leg controllers run simultaneously; however they are not

    independent of one other. To let the robot move and deal with obstacles, an inter-leg

    coordination is needed. For instance, when a leg is trying to step over an obstacle, it

    can ask the supporting legs to momentarily stop, to raise the body, or to move the

    robot backwards, when the obstacle it too large to step over. To achieve this inter-

  • 8/7/2019 1.Hybrid neuro fuzzy

    13/16

    leg coordination, each Leg Control communicates with the Motion Coordination

    Control.

    Fuzzy State Automata

    The Motion Coordination and the Leg Controls have been developed using a

    number of custom Fuzzy State Automatas (FFSA), and in particular one for each leg

    plus one for the Motion Coordination Control.

    An FFSA looks like a finite state automaton which tracks the discrete states of

    the system (for instance, power, lift, return, and contact phases). Each state is

    associate with one of a set of different controllers(Cj), each one tailored to the

    specific system state.

    The main difference of an FFSA with respect to the above described method is

    that transitions are not triggered by crisp events, but by fuzzy variables (all labels on

    state transitions in figure are fuzzy events), and state transitions are fuzzy as well. It

    immediately results that, at any time, the whole system is not necessarily in one

    well-defined state, but it may well be in more states, each one with its own state

    membership value.

    State transitions are therefore smoother and slower, even if the controllers

    described in each state are not designed to smooth them. As a consequence, all theindividual controllers may become as simple as a traditional PID, each one with a

    different target for instance, when the leg is carrying the body weight, the PID

    should keep body height and speed constant, while in the backward step it should

    move as quick as possible towards a target point). Smoothing of transitions between

    partial local trajectories is then taken care by the FFSA, which is much simpler to

    design and tune than a controller with trajectory smoothing, as smoothing is intrinsic

    in the FFSA working principles.Unfortunately FFSA have a drawback, that is, as the

    system is often in more than one state,it has to process more than one controller at

    any time. This increase of computing time often counterbalances the higher speed

    that can be achieved through the use of simpler controllers. Globally, an FFSA has

    approximately the same computing complexity of an FSA controlling Neuro-fuzzy

  • 8/7/2019 1.Hybrid neuro fuzzy

    14/16

    controllers, but it is easier to design (especially for complex systems) and produces

    smoother trajectories.

    The actual FFSA is more complex, as it includes provisions for:

    i) modication of hexapod attitude in presence of complex obstacles (e.g. to

    walk inside low tunnels),

    ii) modication of leg trajectory when walking sideways,

    iii) control of alterna-tive paces for dynamic gaits (e.g. gallopping,or

    climbing staircases);

    iv) other special cases a leg might have to face .

    Leg Identication and Neuro-Fuzzy Controller

    Kinematic and dynamic identication of the leg model has been performed

    with dierent neural paradigms such as MLP, FUZZY, RBF. Each leg motor was

    driven by an independent net. Training has been done with several linear trajectories

    (60 cm movement amplitude) at different heights (10, 20 and 30 cm) of the robot

    body from the ground. The test has been performed on a completely different

    parabolic trajectory with a slightly wider range to test the generalization ability of

    the net. So far only simulations have been done, as the real hexapod is available

    only since few days. Results for all the different paradigms are comparable,as shown

    in table . As can be seen, an MLP network with only 3 hidden neurons is sufficient

    to generate a trajectory with good precision (max. RMS error is = 4 mm for 80 cm

    movement range).

    A similar accuracy can be obtained with a polynomial (POLY) or with a

    RBF networks. Dynamic identification of the leg [1, 2] has been performed using

    the scheme shown in figure. For each coordinate a neural net has been trained to

    evaluate the acceleration of the leg caused by the application of the u(t) stimulus that

    represents the input current to the motor drivers. The leg position is represented by

    s(t). The scheme used to train the neural controller for a single leg is shown in

    figure. It is a case of inverse control [2], where the neural model of the leg (i) is

  • 8/7/2019 1.Hybrid neuro fuzzy

    15/16

    required to back propagate the training errors to the controller (c). The system works

    at 1 kHz sample frequency and this is equivalent, for the MLP (6), to 72000 CPS

    (connections per second) for a single leg controller. This rate can be achieved only

    with high computational power DSP or with a dedicated hardware implementation

    such as DANIELA.

    CONCLUSION

    This paper has described an autonomously walking hexapod controlled by means of

    Fuzzy State Automata, which have been developed starting from a mixture of Finite

    State Automata and Neuro-Fuzzy controllers.Several paradigms have been

    integrated, such as Neural Network, Fuzzy Systems, linear controllers, DSPs and

    finite and fuzzy state Automata. The paper propose that approach is very promising

    and this can be adopted to a wide variety of different applications such as, among

    others, robotics, servo-controls and machine with moving parts with backlash and

    low stiffness. The application can be improved to nonlinear controllers capable to

    handle complex sequences and coordination functions.

  • 8/7/2019 1.Hybrid neuro fuzzy

    16/16