EarthWeb   
HomeAccount InfoLoginSearchMy ITKnowledgeFAQSitemapContact Us
     

   
  All ITKnowledge
  Source Code

  Search Tips
  Advanced Search
   
  

  

[an error occurred while processing this directive]
Previous Table of Contents Next


18.4 Application of a Fuzzy Classifier System

The first step in producing a fuzzy classifier system for the pH titration system is to develop a means of representing linguistic rules and fuzzy membership functions as strings of characters. For this study a direct mapping was used to represent the rule sets. The condition portion of each classifier is a function of the current pH and the current time rate of change of pH, ΔpH. The action portion of each classifier adjusts the net inflows (QACID and QBASE) at the following time step. The coding used for the rule set is summarized in Table 18.1. It is important to note that Table 18.1 includes only the coding used for the rules. The character strings used contained information concerning both the rules and the membership functions and were 69 bits long.

Table 18.1 The coding used to represent the rule sets.
Condition Action
pH ΔpH QACID QBASE
binary set binary set Binary Set binary set
000 Very Acidic 00 NL 00 Z 00 Z
001 Acidic 01 NS 01 S 01 S
010 Marginally
Acidic
10 PS 10 M 10 M
011 Neutral
Acidic
11 PL 11 L 11 L
100 Neutral
Basic
           
101 Marginal
Basic
           
110 Basic            
111 Very Basic            

The basic binary coding in which each bit position is characterized by either a 1 or a 0 would be sufficient for the learning classifier system. However, to add flexibility and allow for more general rule representation, a third character is introduced, namely the # or “don’t care” symbol. A bit position filled by a # is matched by either a 1 or a 0. An example rule follows:

In this rule, the value of pH at the current time is defined by the substring 00#. This condition is satisfied by either 000 or 001. Thus, this rule says that if the pH is currently very acidic or acidic with a negative large time rate of change of pH, then minimize the flow of acid into the tank and maximize the flow of base into the tank at the next time step.

Now that a means of representation of the rules and fuzzy membership functions has been established, the implementation of a fuzzy classifier system is discussed. A rule set of 250 rules was used to control a mathematical model of the pH titration system. These rules are used to manipulate the computer model of the pH titration system until 25,000 rules have been evaluated. At the end of this period, 120 new rules are produced using the reproduction, crossover, and mutation operators of a genetic algorithm. These 120 rules replace 120 of the 200 poorest rules in the previous rule set. By crowding out the poor rules and relying on the genetic algorithm’ survival-of-the-fittest approach, the rule sets achieve higher levels of performance. A learning cycle consisted of the 25,000 evaluations or one generation of new rules using the genetic algorithm. However, learning actually takes place after each individual rule activation, at which time the bucket brigade algorithm redistributes payment to the rules. The steps comprising these learning cycles are relatively straightforward and consist of the following:

1)  Evaluate the condition or state of the physical system at the current time step.
2)  Compare the state of the physical system to the condition portion of each of the 250 classifiers to determine which rules are eligible to take their action.
3)  Hold an auction between the eligible rules to determine which rules get to take their actions. The bid placed by a given rule is defined by

where BID is the rule’s bid, S is the rule’s strength, and C bid is a constant defined in this instance to be 0.1. Within the model of a service economy, strength becomes a measure of how effective a rule is at driving the system to its setpoint.

4)  Evaluate the effectiveness of the action. If the action, which is a function of both the rules and the fuzzy membership functions, drives the system closer to its setpoint, then the rules that won the auction at the previous time step are rewarded with the current winners’ bids and a tax paid by each classifier as described below. Otherwise no rule receives a reward and the tax is accumulated in a fund and carried over to the next time step.
5)  Tax each of the rules in the current rule set. Every rule is taxed according to the following:

where TAX is the tax paid by a classifier, Cbidtax is a constant equal to 5*10-5 if the rule’s condition is met and thus it placed a bid (it is equal to 0.0 otherwise), and C lifetax is a constant equal to 2*10-5 under every circumstance.

6)  After 25,000 actions are taken, apply the genetic algorithm to generate a new rule set that includes 120 new rules. The genetic algorithm combines portions of the most effective rules as determined by their strength, which rises if a rule is effective and falls if a rule is non-effective due to the nature of the apportionment of credit algorithm.

Although the mechanics are relatively simple, the fuzzy classifier system is able to employ the exploratory power of the genetic algorithm and the structured credit assignment of the bucket brigade to learn new and improved rules for controlling pH titration system.


Previous Table of Contents Next

Copyright © CRC Press LLC

HomeAccount InfoSubscribeLoginSearchMy ITKnowledgeFAQSitemapContact Us
Products |  Contact Us |  About Us |  Privacy  |  Ad Info  |  Home

Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Read EarthWeb's privacy statement.