fuzzy sets engineering: by witold pedrycz. crc press; boca raton, fl, usa; 1995; xvi + 332 pp.;...

3

Click here to load reader

Upload: stefano-marsili-libelli

Post on 05-Jul-2016

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Fuzzy sets engineering: by Witold PEDRYCZ. CRC Press; Boca Raton, FL, USA; 1995; xvi + 332 pp.; $49.95; ISBN: 0-8493-9402-3

Book Reviews 581

perform no action at all, helps to deal with deadlocks. All these theoretical developments have enabled CSP to be used as a specification language.

A specification of a system is a formal description of its intended behavior. Having the specification avail- able, one can perform a verification to check whether the specification is indeed satisfied by the program (implementation). Two approaches to the verification of systems are used by CSP researchers. The first approach relies on the use of algebraic specification. via processes. As in algebras, correctness can be verified by construction and refinement, rather than by external proof. In the second method, require- ments are expressed as properties of the semantic model (predicate S acting upon behaviors/observa- tions) and a check is made to see if process P meets the specification S by proving that the predicate holds for every observation in its semantics. Davies uses the second method, applied to what is called "behavioral specification". Predicates upon observa- tion sets are used to formalize process requirements.

The three sections in the middle of the book form its most important part. They discuss the writing of be- havioral specifications, the proof system, and the specification style. In the presentation of the proof system, Davies derives inference rules for sequential processes, parallel processes, timeouts and interrupts, and recursive processes. He also discusses the sound- ness and completeness of the proof system.

The book concludes with a case study of the Ethernet protocol, and a discussion of broadcast communica- tion. The formalization of the data link layer of the Ethernet protocol is nice and elegant, but it somehow misses the point. The problem is that Ethernet is NOT a real-time system or protocol, and will never be such, unless its protocol is modified to take care of the uncertainty of collisions. But then it would no longer be Ethernet--and one cannot pretend that it would, because its very nature (stochastic collisions) contra- dicts the notion of a real-time system, in which the system's response must be fully predictable.

In the same chapter, the author also complains that in the current version of Real-Time CSP, probabilistic aspects of the system cannot be expressed, further obstructing its applicability to Ethernet protocols. Again, this sounds like a misunderstanding: the predictability requirement implies deterministic con- ditions on system behavior, but having a theoretical apparatus to deal with probabilities would not help in making the protocol deterministic. There is, I be- lieve, still a significant gap between theoreticians and practitioners, in understanding the real-time proper- ties of real-life systems.

In summary, Real-Time CSP, as this book presents it, should, rather, be called "Extended Timed CSP", as

opposed to "Timed CSP", since it fails to be fully blown Real-Time CSP in the sense of expressing true real-time (timing) properties and proving that they hold, inasmuch as safety and liveness properties can be expressed and proved. So, the use of "real-time" in the title is misleading.

Generally speaking, from the practitioner's viewpoint, the traditional theory of proof fails miserably in the case of real-time systems, where the unpredictability. of external events cannot be easily quantified. There is no reason, however, to give a way to despair; many theories that are successful in describing and proving the properties related to concurrency are now being extended to include time. Timed CSP and Real-Time CSP are both such attempts, although the inclusion of timing properties in a way that allows one to reason about them is by no means trivial. From the CSP per- spective, this book certainly makes a significant con- tribution to the development of formal approaches to the specification of real-time systems.

In general, it makes a great deal of sense to make dis- sertations available to the general audience. I very, much doubt whether I would have looked into Davies' thesis myself, without having it published by Cam- bridge University Press. However, I would like to see a more serious treatment of the text, and more care taken of the reader. This is barely apparent in the current book. On the contrary, it is a pity that this book has not been changed much from the thesis version. It is easy to spot several editorial faults. For example, no page numbers are included in the list of references, so I could not access the references im- mediately; there is no subject index at all; and a cer- tain number of typographical errors exist--there are two in the Preface alone. This brings me to the con- clusion that it only makes sense to publish disserta- tions if they are treated extensively during the edito- rial process, both by a technical editor to improve the format and language of the manuscript, and by a re- viewer familiar with the subject, to judge upon and improve the presentation of the material. In particu- lar, dense and esoteric, purely scientific, language (of which the "Recursive Processes" chapter of this book is an example) needs to be adjusted to meet the needs of a potential reader.

Fuzzy Sets Engineering, by Witold PEDRYCZ. CRC Press; Boca Raton, FL, USA; 1995; xvi + 332 pp.; $49.95; ISBN: 0-8493-9402-3

Reviewed by: Stefano MARSILI-LIBELLI Universit~ di Firenze, Firenze, Italy

Fuzzy sets are coming of age. This book is a proof of the evolution of this discipline, which has dramati- cally expanded its scope through encounters with

Page 2: Fuzzy sets engineering: by Witold PEDRYCZ. CRC Press; Boca Raton, FL, USA; 1995; xvi + 332 pp.; $49.95; ISBN: 0-8493-9402-3

582 Book Reviews

other recent "mathematical technologies" such as neural networks and genetic algorithms. This has created a very fruitful synergy, resulting in the birth of "soft computing", the foundation of so-called "intelligent systems". Still far from being a homoge- neous discipline, soft computing is a collection of methodologies which provide a way of handling non- technical concepts such as tolerance and imprecision in a self-organizing, robust, low-cost implementation. In this context, Fuzzy Sets Engineering is a timely book, fitting into the emerging soft computing niche, and a badly needed textbook illustrating how these disciplines can be integrated.

Although fuzzy sets still constitute the backbone of the book, all the ingredients of soft computing (i.e., neurocomputing, and genetic algorithms too) are considered, demonstrating that they are complementary rather than competitive. In fact, in soft computing, fuzzy logic is the machinery for dealing with imprecision and uncertainty, whereas neural networks are the algorithms for learning and structure-fitting, and genetic algorithms are seen at their best in search and optimization. The "art" of soft computing consists of a delicate balance of these three constituents. Since many potential users of soft computing have a background in one of these fields, the book provides a welcome blend of the three, to produce a harmonious picture of their connections. In fact, this book is a welcome departure from conventional presentations of the separate theories, showing the potential of putting them to work together to implement the digital processing of approximate concepts.

The style of the book is unique. Though utterly prac- tical and application-oriented, it is nonetheless mathematically rigorous without being pedantic. Even well-known concepts such as fuzzification/ defuzzification interfaces or fuzzy control are recast in a cognitive context, without ever losing sight of the main objective. As far as the use of language is concerned, there is a welcome break with the often bizarre fuzzy jargon, and a sober, effective style is used throughout.

The core material of the book is concentrated in Chapters 1, 2, 3, and 5. Having established a sound methodological framework, the book then provides a careful, in-depth exposure in such apparently diverse areas as fuzzy control and information processing. The basic facts of fuzzy theory are grouped in appen- dices A, B, and C which, taken together, are a useful warm-up, or perhaps a welcome review of forgotten concepts.

The contents of each chapter are now briefly summa- rized. After a short introduction (Chapter 1), Chapter 2 deals with input interfaces, i.e., how to use fuzzy sets to represent knowledge. The representation of

approximate knowledge through fuzzy sets is refor- mulated, introducing frames of cognition as semantic blocks. In this context the representation of uncer- tainty and a clear definition of possibility/necessity are given. The equal entropy criterion is envisioned as a general approach for the construction of the frame of cognition, and the procedure for obtaining an optimal fuzzy partition is described, based on trapezoidal fuzzy membership functions and entropy equalization.

Chapter 3 is about fuzzy neurocomputation, combin- ing the methodological framework of fuzzy sets with the algorithmic complexity of neural networks. This chapter covers both architectural aspects and learning options. Basically, neurocomputation matches the learning capabilities of neural networks with the abil- ity of fuzzy sets to represent approximate concepts. The coupling between the two approaches is achieved through the logic features of neurons, which are re- cast into a fuzzy framework. In this way, feedforward and feedback fuzzy neural networks are obtained in a very neat way. The training aspects are re-derived, taking into account the fuzzy nature of the neurons, which may cause the derivatives to become zero as a consequence of the nonlinear fuzzy operators. The use of genetic algorithms (GA) is then envisioned for net training, but it is regrettable that the space de- voted to them is insufficient to demonstrate their full potential in this application. It is doubtful that a reader without a strong background in GA would appreciate this. Also, it is a pity that the two main references in GA (Genetic Algorithms in Search, Op- timization and Machine Learning, by D.E. Goldberg, Addison-Wesley, 1989, and Adaptation in Natural and Artificial Systems, by J.H. Holland, MIT, 1992) are not quoted.

Chapter 4 is a rather technical sequel to the previous introduction to neurocomputation. Much of the chap- ter is devoted to network topology. The flexibility of fuzzy neurons is shown through decomposition, im- plementation of unconventional distances such as Tchebyschev and Hausdorff, and optimal vector quantization. Based on these results, the author revis- its some key topics, such as fuzzy decision making, of which control is a single-step special case, and fuzzy pattern recognition with partial supervision. This chapter is definitely off the main line of the book, and should not be read on the first pass by a layman, whereas it may prove very interesting to the experi- enced reader.

Chapter 5 brings the reader back onto the main track, and represents the counterpart of Chapter 2, since it deals with the development of output interfaces. Starting with the classical defuzzification problem and error-frec mapping, the concept is extended to nonnumerical problems and linguistic interpretation. Then the discussion broadens to fuzzy model optimi-

Page 3: Fuzzy sets engineering: by Witold PEDRYCZ. CRC Press; Boca Raton, FL, USA; 1995; xvi + 332 pp.; $49.95; ISBN: 0-8493-9402-3

Book Reviews 583

zation, where all the modules constituting a model are jointly validated and optimized on different time- scales.

The chapters following this main block (Chapters 2, 3 and 5) spread out towards several applications. Chapters 6 and 8 deal with fuzzy control, Chapter 7 with commercially available fuzzy software, Chapter 9 with fuzzy flip-flops in information processing, and Chapter 10 with fuzzy Petri nets.

Fuzzy control is undoubtedly one of the most success- ful applications of fuzzy sets, and it is no wonder that two chapters are devoted to this field. Again, the approach is a welcome departure from the conven- tional (and boring) "if error is positive big then con- trol is negative big" stuff. Rather, the fuzzy controller is viewed as an interpolator between control reference commands. Then the author introduces innovative material such as the Hebbian learning of the fuzzy controller, viewed as a fuzzy associative memory implemented using neural nets. In particular, it is shown that if the "center-of-gravity" defuzzification rule is used, then the optimization of the fuzzy con- troller can be implemented in a very neat way. This is very much in line with the present trend of expressing the fuzzy controller as a linear function of the controller's modal values.

The approach used here can be thought of as an alternative to Wang's use of Fuzzy Basis Functions (see: L.X. Wang, Stable Adaptive Fuzzy Control of Nonlinear Systems, IEEE Trans. on Fuzzy Systems, 1(2), pp. 146-160, 1993). The chapter then goes on to deal with controller robustness (defined as the ratio of input/output standard deviations), fault-tolerance, and controllers based on relational equations. As a final topic, the relationship between PID and fuzzy controllers is explored.

Chapter 8 is strongly connected to Chapter 6, as it deals with fuzzy control too. In the reviewer's opin- ion, however, the order of the two chapters could have been reversed, as the material treated in Chapter 8 is for more general and theory-oriented. In fact, the structure and properties of the controller (stability and controllability) are considered. The controller-design problem is also addressed from a completely general point of view.

Chapters 9 and 10 deal with very different sets of problems. The common aspect is the generalization in fuzzy terms of on/off (hard) systems such as flip- flops and Petri nets. To do this, the author general- izes a two-valued logic system into a fuzzy (multivalued) counterpart. Fuzzy flip-flops of the JK type can be implemented as neural networks, and the resulting structures can be applied in distributed modelling, dynamic pattern recognition and fuzzy controllers, among others. Petri nets are useful in the

description of highly parallel switching systems whose overall behaviour is often difficult to predict, and in which stalemates may occur. The introduction of fuzziness is important in incorporating uncertainty into the net. The author shows how constituents of the basic Petri-net paradigm (e.g., transitions, states, weights, etc.) can be substituted by their fuzzy coun- terparts, though still complying with the external boundary condition imposed by the Boolean (two- valued) structure of the net. This extension is neatly solved by again using the neurofuzzy structures intro- duced in Chapter 3. Some examples are shown, in- cluding a Petri net used as a pattern classifier, and a fuzzy controller.

Finally, Chapter 7 deals with the availability of com- mercial software to deal with neurofuzzy systems. Several products are reviewed, including Manifold Editor, Fuzzy Logic Designer, FuzzyTech Explorer, and others. The features of each package are de- scribed and assessed in a vary fair way. Unfortu- nately, there is no common benchmark by which to judge their relative merits, but then these packages are so diverse that it may be impossible to find a benchmark which is equally suited to them all. How- ever, the absence of GENSYM and of the MATLAB Fuzzy Toolbox is the main omission in this chapter, as these two products are becoming a sort of standard in fuzzy computation, albeit at two very different levels.

As a concluding remark, thiS book represents a wel- come departure from conventional books on fuzzy sets, and provides stimulating reading in the new field of soft computing. In this sense it is completely new when compared to the previous book by the same author (Fuzzy Control and Fuzzy Systems, Second Edition, Research Studies Press, Taunton, UK, 1993; see its review in this journal, 2(2), p. 367, April 1994). Thanks to its balance between theoretical rigor and clarity of exposure, the reader is taken painlessly through the merging of fuzzy sets with neurocomput- ing,

However, as with all products of the human mind, some improvements could be made. Of the three constituents of soft computing--fuzzy sets, neural nets and genetic algorithms--the latter have been given too little emphasis. Also, the lack of case studies and, in general, worked examples of some complexity is felt throughout the book. These could be condensed in an accompanying computer disk (hopefully in MATLAB) for the joy of computer buffs. Also, the drawings are rather crude, and in some cases (Chapter 7) use up an unjustified amount of space.

However, these very minor liabilities do not detract from the scientific value of the book, which overall is a big plus, breaking new ground in an emerging discipline, in a clear and stimulating way.