1 / 71

Fuzzy Logic

Fuzzy Logic. Priyaranga Koswatta. Mundhenk and Itti, 2007. Advantages of Fuzzy Controllers Minimal mathematical formulation Can easily design with human intuition Smoother controlling Faster response. Agenda. General Definition Applications Formal Definitions Operations Rules

bracha
Télécharger la présentation

Fuzzy Logic

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fuzzy Logic

  2. Priyaranga Koswatta • Mundhenk and Itti, 2007

  3. Advantages of Fuzzy Controllers • Minimal mathematical formulation • Can easily design with human intuition • Smoother controlling • Faster response

  4. Agenda • General Definition • Applications • Formal Definitions • Operations • Rules • Fuzzy Air Conditioner • Controller Structure

  5. General Definition Fuzzy Logic - 1965 Lotfi Zadeh, U.C. Berkeley • superset of conventional (Boolean) logic that has been extended to handle the concept of partial truth • central notion of fuzzy systems is that truth values (in fuzzy logic) or membership values (in fuzzy sets) are indicated by a value on the range [0.0, 1.0], with 0.0 representing absolute Falseness and 1.0 representing absolute Truth. • deals with real world vagueness

  6. Applications • ABS Brakes • Expert Systems • Control Units • Bullet train between Tokyo and Osaka • Video Cameras • Automatic Transmissions

  7. Formal Definitions • Definition 1: Let X be some set of objects, with elements noted as x. • X = {x}. • Definition 2: A fuzzy set A in X is characterized by a membership function mA(x) which maps each point in X onto the real interval [0.0, 1.0]. As mA(x) approaches 1.0, the "grade of membership" of x in A increases. • Definition 3: A is EMPTY iff for all x, mA(x) = 0.0. • Definition 4: A = B iff for all x: mA(x) = mB(x) [or, mA = mB]. • Definition 5: mA' = 1 - mA. • Definition 6: A is CONTAINED in B iff mA  mB. • Definition 7: C = A UNION B, where: mC(x) = MAX(mA(x), mB(x)). • Definition 8: C = A INTERSECTION B where: mC(x) = MIN(mA(x), mB(x)).

  8. http://www.seattlerobotics.org/Encoder/mar98/fuz/flindex.htmlhttp://www.seattlerobotics.org/Encoder/mar98/fuz/flindex.html • http://www.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq.html • http://plato.stanford.edu/entries/logic-fuzzy/

  9. Operations A B A  B A  B A

  10. Example:Using Fuzzy Logic for a Line Following Robot

  11. Mechanical Design of a very inexpensive Line-Following Robot

  12. Basic Motions of a Differential Drive robot

  13. Input Membership Functions

  14. Sample Fuzzy Rule Base

  15. Output Membership Function

  16. Example:Using Fuzzy Logic for an Obstacle Avoiding Robot

  17. Very Basic Control Theory 􀂀 Your speed towards a goal or away from an object should be proportional to the distance from it. 􀁹 If you want to get to a goal in an optimal amount of time you want to move quickly. 􀁹 However, you need to decelerate as you grow near the target so you can have more control. 􀂀 Speed ∝ distance-to-target

  18. Very Basic Control Theory 􀂀 In systems with momentum (i.e. the real world) we have to worry about more complex acceleration and deceleration. 􀁹 We can overshoot our target or stop short! 􀂀 You increase your rate of deceleration based on how close you are to a goal or obstacle. 􀂀 You can also integrate over the distance to a goal to create a steady state. 􀂀 This is the basic idea behind a PID controller. 􀁹 Proportional Integral Derivative 􀂀 The physical derivation of PID can be tricky, we will avoid it for now. 􀁹 However this part of an extremely interesting topic!

  19. IDEA! 􀂀 Lets just hack a fuzzy controller together and avoid some math. 􀁹 The gods will curse us…. 􀁹 But if it works, that may be all that matters! 􀂀 Derive rule of thumb ideas for speed and direction 􀁹 If I’m 6 meters from the obstacle, am I far from it?

  20. Try some fuzzy rules… 􀂀 Lets look at adjusting trajectory first then we will look at speed… 􀁹 If an obstacle is near and center, turn sharp right or left. 􀁹 If an obstacle is far and center, turn soft left or right. 􀁹 If an obstacle is near, turn slightly right or left, just in case. 􀁹 Etc…

  21. The robot works in continuous time 􀂀 The fuzzy rules should change slightly at each time step. 􀁹 We don’t want the robot to jerk to a new trajectory too quickly. Smooth movements tend to be better. 􀁹 How often we need to update the controller is dependant on how fast we are moving. 􀁹 For instance: If we update the controller 30 times a second and we are moving < 1 kph then movement will be smooth. 􀁹 Ideally, the commands issued from the fuzzy controller should create an equilibrium with the observations.

  22. Our robot has momentum 􀂀 We have somewhat implicitly integrated the notion of momentum. 􀁹 This is why we would slow down as we get closer to an obstacle 􀂀 What about more refined control of speed and direction? 􀁹 Use the derivative of speed and trajectory to increase or decrease the rate of change. 􀁹 Thus, if it seems like we are not turning fast enough, then turn faster and visa versa.

  23. Controller Structure • Fuzzification • Scales and maps input variables to fuzzy sets • Inference Mechanism • Approximate reasoning • Deduces the control action • Defuzzification • Convert fuzzy output values to control signals

  24. Rule Base • Fan Speed • Set stop {0, 0, 0} • Set slow {50, 30, 10} • Set medium {60, 50, 40} • Set fast {90, 70, 50} • Set blast {, 100, 80} Air Temperature • Set cold {50, 0, 0} • Set cool {65, 55, 45} • Set just right {70, 65, 60} • Set warm {85, 75, 65} • Set hot {, 90, 80}

  25. Membership function is a curve of the degree of truth of a given input value default: The truth of any statement is a matter of degree Rules Air Conditioning Controller Example: • IF Cold then Stop • If Cool then Slow • If OK then Medium • If Warm then Fast • IF Hot then Blast

  26. Fuzzy Air Conditioner

  27. Mapping Inputs to Outputs

  28. EXAMPLE:Using Fuzzy Logic for a SWERVING ROBOT

  29. Motivating Example: Swerving Robot

More Related