Design Considerations for the Robot Control Software
Development of an Expert Knowledge Base for the Control of an Intelligent Robot Sumo Wrestler
Situation Assessment Module
Course Project for CPSC 679 -- Cognitive Processes in Artificial Intelligence
Design Challenges of the RSW Application
Work done on model-based, optimized control approaches have proven successful in solving well-defined problems. Here, a well-defined problem is one where precise mathematical descriptions of the target process can be found or adequately approximated. But in the dynamic and unpredictable situations expected in RSW (i.e, unpredictable characteristics of the robotic opponents, damage causing loss or reduced capabilities of the robot's systems, multiple robot attacks, etc.), these conditions do not exist. In fact it is very seldom that these highly desirable characteristics are present in any real-world applications. In these cases, determining the mathematical model which describes the process is either very difficult or impossible. These challenging control problems, though largely impossible to solve using current model-based control techniques, are intuitively solved by human experts, on a regular basis. This is evident by the regular performance of these control tasks (e.g., Helicopter pilots are able to make their vehicle hover, rotate on the spot, traverse in various orientations, etc., not only in the craft they learned the skill in but in other similar vehicles. This is a control feat for which it is very difficult to derive an adequate generalized mathematical model -- in fact, no generalized helicopter autopilots are currently available). It is the goal of rule based control systems to use the expert knowledge possessed by these operators in an automated control system (i.e. The solutions to these mathematically intractable problems have already been solved and these successful solutions need only be implemented in the system).
Adaptive Control Solutions
The expert system approach focuses on two main aspects:
- Experts as the primary source of information;
- The use of knowledge representation schema as the primary basis of implementation.
There are different knowledge representation schema being used to attempt to implement useful real-time, rule based control systems. Fuzzy logic is such a schema. It is a form of logic which allows the partial membership of entities within a given set. This means that both A and not-A is possible to different degrees at the same time. This is not allowed in conventional, precise logic. The drawback of this, in dynamic control systems is that the actual states experienced by controlled systems, seldom meet the exact parametric values required for the triggering of proper control outputs. Fuzzy logic allows situations that are close to a required state to fire an appropriate output signal. Fuzzy logic also allows the input of control laws in semantic terms, which lends itself well to use in expert based control implementations. Yan, Ryan and Power (1994) defines fuzzy logic control as:
"...a digital control methodology that allows the human description of the physical systems and of the required control strategy to be simulated in a reasonably natural way. A fuzzy logic controller can be regarded as a real-time expert system that employs fuzzy logic to manipulate qualitative variables."
A typical fuzzy logic controller can be used in a closed-loop control system like any other model based controller (such as a common Proportional, Integral, Differential (PID) controller). The fuzzy logic controller (FLC) has four main component:
- fuzzification unit;
- fuzzy reasoning mechanism;
- knowledge base;
- and the defuzzification unit.
This project is concerned with developing the robot system's knowledge base. An FLC knowledge base contains two types of information:
- a rule base which defines the amount of membership the real-time values of a system variable have in qualitatively described subsets (these functions are called membership functions and I will discuss them in more detail later);
- and a rule base which maps the fuzzified input values to fuzzy output values.
The design of an FLC control system is critically dependent on the selection of the following elements:
- System variables -- which represent system parameters whose values or change of values influence the overall state of the system. There are two main types of system variables: input variables measured from the controlled process (E in figure); and output variables used by the FLC to control the process (Y in figure).
- Fuzzy subsets -- these are qualitatively described partitions of the range of possible values of the system variables. For instance, the system variable for a heating system would be room temperature. Some possible fuzzy sets could be defined as Very Cold, Cold, Just Right, Hot and Very Hot.
- Fuzzy subset parameters -- It is necessary to determine the range of system variable values that each fuzzy subset covers. It is also necessary to determine a function to describe the level of membership system variables have at every value. This function is called the membership function. Membership in a fuzzy subset is not lmited to bivalent values (i.e., member or not-member) can be equal to a range of values normally expressed over the range [0.1]. For example, it is possible for an instance of the system variable to be 40% a member of the Cold subset and 60% not a member.
- Fuzzy relations -- these relations map the fuzzy values of the input to the fuzzy values of the output.
The selection of these elements for a given application can radically affect the system's performance. Some of the main approaches used in the acquisition and design of FLC knowledge bases and the determination of the above elements are as follows:
- Domain expert's experience/control engineering knowledge
- Modeling the operator's control actions
- Fuzzy modeling
- Self-organization
This project explores the expert based approach. The expert based approach is most commonly used and it involves the interrogating of experts and trying to instantiate their capabilities in fuzzy rules. Yan, Ryan, and Power (1994) call this process "something of an art form". The knowledge elicitation process mainly focuses on capturing the expert's rules of thumb. This is a heuristic approach where once the control engineer has obtained these qualitative rules of thumb they are then combined with quantitative control engineering knowledge to develop an initial knowledge base. The initial system is then modified as required until satisfactory performance is achieved.
The combined application of the expert based approach and the fuzzy logic controller offer a satisfactory solution to the design considerations imposed by the RSW application.
Return to Overall Project Page
Let me know what you think: email vlad@combdyn.com