第2章 Fuzzy Control: The basics 教学内容 本章是模糊控制理论的基本内容,通过本章的学习,应该掌握模糊控制系统设计和分析的基本方法 和步骤 教学重点 模糊控制器的组成、语言变量和语言值的定义、模糊运算、模糊推理方法、模糊隐含、控制算法表 格的建立直至解模糊。 教学难点 对“函数模糊系统”定义的准确把握和理解,以及函数模糊系统的通用近似特性的理∫ 教学要求 主要掌握语言描述、模糊运算、模糊推理方法、模糊隐含、控制算法表格的建立直至解模糊。掌握 模糊控制器的一般设计步骤和过程。 2.1 Overview Questions Why do we select fuzzy controllers in many real-world systems? How much of the success can be attributed to the use of the mathematical model and conventional control design approach a How much should be attributed to the clever heuristic tuning that the control engineer uses upon mplementation? If we exploit the use of heuristic information throughout the entire design process, can we obtain higher performance control systems? a What is a fuzzy controller composed of? How do we design a fuzzy controller? a Whether do we need a model in fuzzy control? a What are the performance evaluation of fuzzy control? What should we pay attention in fuzzy controller design? a What areas does fuzzy controller apply to? What, then, is the motivation for turning to fuzzy control? Basically, the difficult task of modeling and simulating complex real world systems for control systems development, especially when implementation issues are considered, is well documented. Even if a relatively accurate model of a dynamic system can be developed, it is often too complex to
第 2 章 Fuzzy Control:The Basics 教学内容 本章是模糊控制理论的基本内容,通过本章的学习,应该掌握模糊控制系统设计和分析的基本方法 和步骤。 教学重点 模糊控制器的组成、语言变量和语言值的定义、模糊运算、模糊推理方法、模糊隐含、控制算法表 格的建立直至解模糊。 教学难点 对“函数模糊系统”定义的准确把握和理解,以及函数模糊系统的通用近似特性的理解。 教学要求 主要掌握语言描述、模糊运算、模糊推理方法、模糊隐含、控制算法表格的建立直至解模糊。掌握 模糊控制器的一般设计步骤和过程。 2.1 Overview Questions: Why do we select fuzzy controllers in many real-world systems? How much of the success can be attributed to the use of the mathematical model and conventional control design approach? How much should be attributed to the clever heuristic tuning that the control engineer uses upon implementation? If we exploit the use of heuristic information throughout the entire design process, can we obtain higher performance control systems? What is a fuzzy controller composed of ? How do we design a fuzzy controller? Whether do we need a model in fuzzy control? What are the performance evaluation of fuzzy control? What should we pay attention in fuzzy controller design? What areas does fuzzy controller apply to ? What, then, is the motivation for turning to fuzzy control? Basically, the difficult task of modeling and simulating complex real world systems for control systems development, especially when implementation issues are considered, is well documented. Even if a relatively accurate model of a dynamic system can be developed, it is often too complex to
se in controller development, especially for many conventional control design procedures that require restrictive assumptions for the plant(e.g, linearity) Why do we select fuzzy controllers in many real-world systems? It is for this reason that in practice conventional controllers are often developed via simple models of the plant behavior that satisfy the necessary assumptions, and via the ad hoc(special) tuning of relatively simple linear or nonlinear controllers. Regardless, it is well understood(although sometimes forgotten) that heuristics enter the conventional control design process as long as you are concerned with the actual implementation of the control system. It must be acknowledged, moreover, that conventional control engineering approaches that use appropriate heuristics to tune the design have been relatively successful How much of the success can be attributed to the use of the mathematical model and conventional control design approach, and how much should be attributed to the clever heuristic tuning that the control engineer uses upon implementation? And if we exploit the use of heuristic information throughout the entire design process, can we obtain higher performance control systems? Fuzzy control provides a formal methodology for representing, manipulating, and implementing a human s heuristic owledge about how to control a system. In this section we seek to provide a philosophy of how to approach the design of fuzzy controllers. The fuzzy controller block diagram is given in Figure 3. 1, where we show a fuzzy controller embedded in a closed-loop control system. The plant outputs are denoted by y(), its inputs are denoted by u(t), and the reference input to the fuzzy controller is denoted by r(1) Fuzzy controller 8 Reference input.# Inference Cutput r(t mechani sm subProcess Rule-base Figure 2. 1 Fuzzy controller architecture Basically, you should view the fuzzy controller as an artificial decision maker that operates in a closed-loop system in real time. It gathers plant output data y (), compares it to the reference input r(1), and then decides what the plant input u(t) should be to ensure that the performance objectives, will be met What is a fuzzy controller composed of The fuzzy controller has four main components: (1)The"rule-base"holds the knowledge, in the form of a set of rules, of how best to control the system. (2) The inference mechanism evaluates which control rules are relevant at the current time and then decides what the input to the plant should be. (3)The fuzzification
use in controller development, especially for many conventional control design procedures that require restrictive assumptions for the plant (e.g., linearity). Why do we select fuzzy controllers in many real-world systems?It is for this reason that in practice conventional controllers are often developed via simple models of the plant behavior that satisfy the necessary assumptions, and via the ad hoc(special) tuning of relatively simple linear or nonlinear controllers. Regardless, it is well understood (although sometimes forgotten) that heuristics enter the conventional control design process as long as you are concerned with the actual implementation of the control system. It must be acknowledged, moreover, that conventional control engineering approaches that use appropriate heuristics to tune the design have been relatively successful. How much of the success can be attributed to the use of the mathematical model and conventional control design approach, and how much should be attributed to the clever heuristic tuning that the control engineer uses upon implementation? And if we exploit the use of heuristic information throughout the entire design process, can we obtain higher performance control systems? Fuzzy control provides a formal methodology for representing, manipulating, and implementing a human's heuristic knowledge about how to control a system. In this section we seek to provide a philosophy of how to approach the design of fuzzy controllers. The fuzzy controller block diagram is given in Figure 3.1, where we show a fuzzy controller embedded in a closed-loop control system. The plant outputs are denoted by y(t), its inputs are denoted by u (t), and the reference input to the fuzzy controller is denoted by r (t). Figure 2.1 Fuzzy controller architecture. Basically, you should view the fuzzy controller as an artificial decision maker that operates in a closed-loop system in real time. It gathers plant output data y(t), compares it to the reference input r (t), and then decides what the plant input u(t) should be to ensure that the performance objectives, will be met. What is a fuzzy controller composed of ? The fuzzy controller has four main components: (1) The "rule-base" holds the knowledge, in the form of a set of rules, of how best to control the system. (2) The inference mechanism evaluates which control rules are relevant at the current time and then decides what the input to the plant should be. (3) The fuzzification
interface simply modifies the inputs so that they can be interpreted and compared to the rules in the rule-base. (4)the defuzzification interface converts the conclusions reached by the inference mechanism into the inputs to the plant How do we design a fuzzy controller? To design the fuzzy controller, the control engineer must gather information on how the artificial decision maker should act in the closed-loop system. Sometimes this information can come from a human decision maker who performs the control task, while at other times the control engineer can come to understand the plant dynamics and write down a set of rules about how to control the system without outside help. These"rules"basically say, "If the plant output and reference input are behaving in a certain manner, then the plant input should be some value. "A whole set of such"If-Then"rules is loaded into the rule-base, and an inference strategy is chosen, then the system is ready to be tested to see if the closed-loop specifications are met. This brief description provides a very high level overview of how to design a fuzzy control system. Below we will expand on these basic ideas and provide more details on this procedure and its relationship to the conventional control design procedure whether do we need a model in fuzzy control? People working in fuzzy control often say that"a model is not needed to develop a fuzzy controller, and this is the main advantage of the approach. However, will a proper understanding of the plant dynamics be obtained without trying to use first principles of physics to develop a mathematical model? And will a proper understanding of how to control the plant be obtained without simulation-based evaluations that also need a model? We always know roughly what process we are controlling(e.g, we know whether it is a vehicle or a nuclear reactor), and it is often possible to produce at least an approximate model, so why not do this? For a safety-critical application, if you do not use a formal model, then it is not possible to perform mathematical analysis or simulation-based evaluations Is it wise to ignore these analytical approaches for such applications? Clearly, there will be some applications where you can simply"hack"together a controller(fuzzy or conventional)and go directly to implementation In such a situation there is no need for a formal model of the process; however, is this type of control problem really so challenging that fuzzy control is even needed? Could a conventional approach(such as PID control)or a"table look-up"scheme work just as well or better, especially considering implementation complexity? Overall, when you carefully consider the possibility of ignoring the information that is frequently available in a mathematical model, it is clear that it will often be unwise to do so. Basically, then, the role of modeling in fuzzy control design is quite similar to its role in conventional control system design. In fuzzy control there is a more significant emphasis on the use of heuristics, but in many control approaches(e. g, PID control for process control)there is a similar Basically, in fuzzy control there is a focus on the use of rules to represent how to control the plant rather than ordinary differential equations(ODE). This approach can offer some advantages in that the representation of knowledge in rules seems more lucid and natural to some people. For others, though, the use of differential equations is more clear and natural. Basically, there is simply a"language difference"between fuzzy and conventional control: ODEs are the language of conventional control, and rules are the language of fuzzy control The performance objectives and design constraints are the same as the ones for conventional control that we ummarized above, since we still want to meet the same types of closed-loop specifications. The fundamental limitatic
interface simply modifies the inputs so that they can be interpreted and compared to the rules in the rule-base. (4) the defuzzification interface converts the conclusions reached by the inference mechanism into the inputs to the plant. How do we design a fuzzy controller? To design the fuzzy controller, the control engineer must gather information on how the artificial decision maker should act in the closed-loop system. Sometimes this information can come from a human decision maker who performs the control task, while at other times the control engineer can come to understand the plant dynamics and write down a set of rules about how to control the system without outside help. These "rules" basically say, "If the plant output and reference input are behaving in a certain manner, then the plant input should be some value." A whole set of such "If-Then" rules is loaded into the rule-base, and an inference strategy is chosen, then the system is ready to be tested to see if the closed-loop specifications are met. This brief description provides a very high level overview of how to design a fuzzy control system. Below we will expand on these basic ideas and provide more details on this procedure and its relationship to the conventional control design procedure. Whether do we need a model in fuzzy control? People working in fuzzy control often say that "a model is not needed to develop a fuzzy controller, and this is the main advantage of the approach." However, will a proper understanding of the plant dynamics be obtained without trying to use first principles of physics to develop a mathematical model? And will a proper understanding of how to control the plant be obtained without simulation-based evaluations that also need a model? We always know roughly what process we are controlling (e.g, we know whether it is a vehicle or a nuclear reactor), and it is often possible to produce at least an approximate model, so why not do this? For a safety-critical application, if you do not use a formal model, then it is not possible to perform mathematical analysis or simulation-based evaluations. Is it wise to ignore these analytical approaches for such applications? Clearly, there will be some applications where you can simply "hack" together a controller (fuzzy or conventional) and go directly to implementation. In such a situation there is no need for a formal model of the process; however, is this type of control problem really so challenging that fuzzy control is even needed? Could a conventional approach (such as PID control) or a "table look-up" scheme work just as well or better, especially considering implementation complexity? Overall, when you carefully consider the possibility of ignoring the information that is frequently available in a mathematical model, it is clear that it will often be unwise to do so. Basically, then, the role of modeling in fuzzy control design is quite similar to its role in conventional control system design. In fuzzy control there is a more significant emphasis on the use of heuristics, but in many control approaches (e.g, PID control for process control) there is a similar emphasis. Basically, in fuzzy control there is a focus on the use of rules to represent how to control the plant rather than ordinary differential equations (ODE). This approach can offer some advantages in that the representation of knowledge in rules seems more lucid and natural to some people. For others, though, the use of differential equations is more clear and natural. Basically, there is simply a "language difference" between fuzzy and conventional control: ODEs are the language of conventional control, and rules are the language of fuzzy control. The performance objectives and design constraints are the same as the ones for conventional control that we summarized above, since we still want to meet the same types of closed-loop specifications. The fundamental limitations
that the plant provides affect our ability to achieve high-performance control, and these are still present just as they were for conventional control (e.g, nonminimum phase or unstable behavior still presents challenges for fuzzy control How do we design a fuzzy controller? Fuzzy control system design essentially amounts to(1)choosing the fuzzy controller inputs and outputs, (2)choosing the preprocessing that is needed for the controller inputs and possibly postprocessing that is needed for the outputs, and (3) designing each of the four components of the fuzzy controller shown in Figure 2.1 As you will see in the next chapter, there are standard choices for the fuzzification and defuzzification interfaces Moreover, most often the designer settles on an inference mechanism and may use this for many different processes Hence, the main part of the fuzzy controller that we focus on for design to the rule-base What is the main task in fuzzy controller design process? The rule-base is constructed so that it represents a human expert"in-the-loop. Hence, the information that we load into the rules in the rule-base may come from an actual human expert who has spent a long time learning how best to control he process. In other situations there is no such human expert, and the control engineer will simply study the plant dynamics(perhaps using modeling and simulation) and write down a set of control rules that makes sense. As an example, in the cruise control problem discussed above it is clear that anyone who has experience driving a car can practice regulating the speed about a desired set-point and load this information into a rule-base. For instance one rule that a human driver may use is "If the speed is lower than the set-point, then press down further on the accelerator pedal. "A rule that would represent even more detailed information about how to regulate the speed would be If the speed is lower than the set-point AND the speed is approaching the set-point very fast, then release the accelerator pedal by a small amount This second rule characterizes our knowledge about how to make sure that we do not overshoot our desired goal (the set-point speed ) Generally speaking, if we load very detailed expertise into the rule-base, we enhance our chances of obtaining better performance What are the performance evaluation of fuzzy control? Each and every idea on performance evaluation for conventional controllers applies here as well. The basic reason for this is that a fuzzy controller is a nonlinear controller-so many conventional modeling, analysis (via mathematics simulation, or experimentation), and design ideas apply directly Since fuzzy control is a relatively new technology, it is often quite important to determine what value it has relative to conventional methods. Unfortunately, few have performed detailed comparative analyses between conventional and intelligent control that have taken into account a wide array of available conventional methods (linear, nonlinear adaptive, etc. ) fuzzy control methods(direct, adaptive, supervisory): theoretical, simulation, and experimental analyses computational issues; and so on What should we pay attention in fuzzy controller design? Moreover, most work in fuzzy control to date has focused only on its advantages and has not taken a critical look at what possible disadvantages there could be to using it(hence the reader should be cautioned about this when reading the literature). For example, the following questions are cause for concern when you employ a strategy of gathering heuristic control knowled Will the behaviors that are observed by a human expert and used to construct the fuzzy controller include all situations that can occur due to disturbances, noise, or plant parameter variations? Can the human expert realistically and reliably foresee problems that could arise from closed-loop system instabilities or limit cycles?
that the plant provides affect our ability to achieve high-performance control, and these are still present just as they were for conventional control (e.g, nonminimum phase or unstable behavior still presents challenges for fuzzy control). How do we design a fuzzy controller? Fuzzy control system design essentially amounts to (1) choosing the fuzzy controller inputs and outputs, (2) choosing the preprocessing that is needed for the controller inputs and possibly postprocessing that is needed for the outputs, and (3) designing each of the four components of the fuzzy controller shown in Figure 2.1. As you will see in the next chapter, there are standard choices for the fuzzification and defuzzification interfaces. Moreover, most often the designer settles on an inference mechanism and may use this for many different processes. Hence, the main part of the fuzzy controller that we focus on for design to the rule-base. What is the main task in fuzzy controller design process? The rule-base is constructed so that it represents a human expert "in-the-loop." Hence, the information that we load into the rules in the rule-base may come from an actual human expert who has spent a long time learning how best to control the process. In other situations there is no such human expert, and the control engineer will simply study the plant dynamics (perhaps using modeling and simulation) and write down a set of control rules that makes sense. As an example, in the cruise control problem discussed above it is clear that anyone who has experience driving a car can practice regulating the speed about a desired set-point and load this information into a rule-base. For instance, one rule that a human driver may use is "If the speed is lower than the set-point, then press down further on the accelerator pedal." A rule that would represent even more detailed information about how to regulate the speed would be "If the speed is lower than the set-point AND the speed is approaching the set-point very fast, then release the accelerator pedal by a small amount." This second rule characterizes our knowledge about how to make sure that we do not overshoot our desired goal (the set-point speed). Generally speaking, if we load very detailed expertise into the rule-base, we enhance our chances of obtaining better performance. What are the performance evaluation of fuzzy control? Each and every idea on performance evaluation for conventional controllers applies here as well. The basic reason for this is that a fuzzy controller is a nonlinear controller—so many conventional modeling, analysis (via mathematics, simulation, or experimentation), and design ideas apply directly. Since fuzzy control is a relatively new technology, it is often quite important to determine what value it has relative to conventional methods. Unfortunately, few have performed detailed comparative analyses between conventional and intelligent control that have taken into account a wide array of available conventional methods (linear, nonlinear, adaptive, etc.); fuzzy control methods (direct, adaptive, supervisory); theoretical, simulation, and experimental analyses; computational issues; and so on. What should we pay attention in fuzzy controller design? Moreover, most work in fuzzy control to date has focused only on its advantages and has not taken a critical look at what possible disadvantages there could be to using it (hence the reader should be cautioned about this when reading the literature). For example, the following questions are cause for concern when you employ a strategy of gathering heuristic control knowledge: • Will the behaviors that are observed by a human expert and used to construct the fuzzy controller include all situations that can occur due to disturbances, noise, or plant parameter variations? • Can the human expert realistically and reliably foresee problems that could arise from closed-loop system instabilities or limit cycles?
Will the human expert be able to effectively incorporate stability criteria and performance objectives(e.g rise-time, overshoot, and tracking specifications) into a rule-base to ensure that reliable operation can be obtained? These questions may seem even more troublesome (1) if the control problem involves a safety-critical environment where the failure of the control system to meet performance objectives could lead to loss of human life or an environmental disaster, or(2)if the human experts knowledge implemented in the fuzzy controller is somewhat inferio to that of the very experienced specialist we would expect to design the control system(different designers have different levels of expertise) Clearly, then, for some applications there is a need for a methodology to develop, implement, and evaluate fuzzy controllers to ensure that they are reliable in meeting their performance specifications. This is the basic theme and focus of this book Application Arear Fuzzy systems have been used in a wide variety of applications in engineering, science, business, medicine, psychology, and other fields. For instance, in engineering some potential application areas include the followin Aircrafi/spacecraft: Flight control, engine control, avionic systems, failure diagnosis, navigation, and satellite attitude .Automated highway systems: Automatic steering, braking, and throttle control for vehicles sion,suspension, and engine control .Autonomous vehicles. Ground and underwater Manufacturing systems: Scheduling and deposition proces s contro Power industry: Motor control, power control/distribution, and load estimation Process control: Temperature, pressure, and level control, failure diagnosis, distillation column control, and desalination processes . Robotics: Position control and path planning This list is only representative of the range of possible applications for the methods of this book. Others have already been studied, while still others are yet to be identified The primary goal of control engineering is to distill and apply knowledge about how to control a process so that the resulting control system will reliably and safely achieve high-performance operation. In this chapter we show how fuzz logic provides a methodology for representing and implementing our knowledge about how best to control a process 3 2.2 Fuzzy Control: A Tutorial Introduction Questions: a How do we choose fuzzy controller inputs and outputs? a How do we put control knowledge in to rule-bases? a How do we quantify the knowledge in fuzzy controller design? Why do that? Review What are a fuzzy controller composed? a block diagram of a fuzzy control system is shown in Figure 2. 1. The fuzzy controller is composed of the following four
• Will the human expert be able to effectively incorporate stability criteria and performance objectives (e.g., rise-time, overshoot, and tracking specifications) into a rule-base to ensure that reliable operation can be obtained? These questions may seem even more troublesome (1) if the control problem involves a safety-critical environment where the failure of the control system to meet performance objectives could lead to loss of human life or an environmental disaster, or (2) if the human expert's knowledge implemented in the fuzzy controller is somewhat inferior to that of the very experienced specialist we would expect to design the control system (different designers have different levels of expertise). Clearly, then, for some applications there is a need for a methodology to develop, implement, and evaluate fuzzy controllers to ensure that they are reliable in meeting their performance specifications. This is the basic theme and focus of this book. Application Arears: Fuzzy systems have been used in a wide variety of applications in engineering, science, business, medicine, psychology, and other fields. For instance, in engineering some potential application areas include the following: •Aircraft/spacecraft: Flight control, engine control, avionic systems, failure diagnosis, navigation, and satellite attitude control. •Automated highway systems: Automatic steering, braking, and throttle control for vehicles. •Automobiles: Brakes, transmission, suspension, and engine control. •Autonomous vehicles: Ground and underwater. •Manufacturing systems: Scheduling and deposition process control. •Power industry: Motor control, power control/distribution, and load estimation. •Process control: Temperature, pressure, and level control, failure diagnosis, distillation column control, and desalination processes. •Robotics: Position control and path planning. This list is only representative of the range of possible applications for the methods of this book. Others have already been studied, while still others are yet to be identified. The primary goal of control engineering is to distill and apply knowledge about how to control a process so that the resulting control system will reliably and safely achieve high-performance operation. In this chapter we show how fuzzy logic provides a methodology for representing and implementing our knowledge about how best to control a process. 2.2 Fuzzy Control: A Tutorial Introduction Questions: How do we choose fuzzy controller inputs and outputs ? How do we put control knowledge in to rule-bases? How do we quantify the knowledge in fuzzy controller design? Why do that? Review: What are a fuzzy controller composed? A block diagram of a fuzzy control system is shown in Figure 2.1.The fuzzy controller is composed of the following four