Fuzzy Rule-Based Expert Systems and Genetic Machine Learning

Book Review by Dick Bowman

Fuzzy Rule-Based Expert Systems and Genetic Machine Learning; Andreas Geyer-Schulz; Physica Verlag 1995; ISBN 3-7908-0830-X; 413 pages; Hardbound.

Most SIGAPL members will be familiar with Dr Geyer-Schulz' conference papers; this book represents a summarisation of his work to date on the topics described by the title. It also contains a substantial bibliography covering many areas of fuzzy logic.

For those not familiar with it I will briefly summarise fuzzy logic as an extension of traditional Boolean logic into a more realistic appraisal of the real world; where classification is not a simple true/false but rather a spread of values - the book's first example is of a group of people classified as having 'tallness' values of 1 0 .5 .2 .4 where 1 represents 'tall' and 0 represents 'not tall'. Adding a second classification of 'beautiful' where the values are .8 .9 .7 1 and .9 you begin to appreciate that combination (what do we mean by 'tall and beautiful'?) is a non-trivial process - should we take the highest, lowest, average, or what?

The book handles these problems in both a rigorous proof-based mathematical manner and by introducing APL2 code which allows the diligent reader to experiment with concrete examples. A weakness is that the code has to be entered manually, since no disk is included and I cannot find the code at either the Waterloo ftp site or in the APL95 Software Exchange. Incidentally, there is a lot of common ground between parts of this book and Dr Geyer-Schulz' APL95 paper 'Holland Classifier Systems' {Ref. 1}; also his tutorial on Genetic Machine Learning presented at the same conference.

I specifically mention that the code is APL2; it relies on execute-alternate to get out of tight spots and also uses APL2's transfer form; I have entered some of it using APL2/OS2. It should be relatively simple to port onto other implementations, but I am not absolutely certain that the code is complete (a function called ALL_2_S01 on page 114 is, as I write, proving quite difficult to locate, as is FUZ which is used on page 64). APL's conciseness allows it to be included in the text (I hope this message gets through to non-APL readers) and although entering code by hand has its part to play in the learning process I feel that the reader pursuing the subject matter would be better served by being able to retrieve the code from disk or ftp site.

There are two major sections to the book.
Fuzzy Rule-Based Expert Systems - which introduces the topic of fuzzy sets and their extension into natural language computation. This leads further into hybrid reasoning and an examination of an application for determining credit-worthiness of consumers (given that we can express what we know about a consumer in fuzzy terms such as 'medium personality' and 'low savings', how is this turned into a recommendation for allowing credit? - in many senses the answer is not so much that the algorithms are precise, but that they are applied consistently to all cases). The section then continues with an examination of fuzzy time series modelling.
Fuzzy Classifier Systems - this section is very much dominated by an examination of Genetic Algorithms. The concept here is that algorithms may be modelled on the evolutionary practices of the natural world, introduced by the problem of determining a global maximum for a mathematical function which has many local maxima. The problems faced in this section are in many ways analogous to what we mean by 'tall' or 'beautiful' in the first example of the book; genetic algorithms are allowed to (indeed must) reproduce and mutate. Dr Geyer-Schulz examines the theoretical basis which underlies this subject and includes copious APL2 code examples which allow us to experiment with a working implementation.

Throughout the book - the quest is to define languages which can be applied to the problems at hand, and to supply rigorous proof that these problems are indeed being solved. One of the most relevant sections from the perspective of the APL world is Chapter 11 (The Search Space Size of Fuzzy Classifier Systems) in which a proof is presented that very high and abstract languages provide dramatic gains in the solvability of real-world problems.

As you may have deduced - this is not an easy book to read; I am struggling with much that it contains and have still to enter a large proportion of the code. When I have done this I am certain that I will have achieved a much better understanding of the subject matter. It is good to see APL being used for work of this kind; we all need to explore and document innovative uses of APL much more than we have recently. It is also good to see a major publisher involved. I can already see areas where the topics and solutions described will enhance applications I have to hand, and I suggest that SIGAPL members should at the very least investigate Dr Geyer-Schulz' conference papers as an introduction and proceed from there to the fuller treatments in this book.

References: [1] Holland Classifier Systems; Andreas Geyer-Schulz; APL Quote Quad Vol. 25 No. 4, June 1995; pp 43-55.

Back to the J\APL Contents Page

Copyright Dick Bowman 1995-2013; latest update 15 March 2013 (repaired links)