scieee AI-readable full text Open interactive document viewer

FLEB: A fuzzy logic e-book

Bermúdez, Andrés; Barriga Barros, Ángel; Baturone Castillo, María Iluminada; Sánchez Solano, Santiago

Abstract

FLEB is an electronic book which attempts to introduce the basic mathematical foundations and applications of fuzzy logic through a software environment which includes images, hypertext, sensitive elements, animations and interactive demos. It also allows executing Xfuzzy, a development tool which eases the description, verification, and synthesis of fuzzy logic-based systems. FLEB, like a usual book, is structured into chapters with pages through which the reader can navigate comfortably. In addition, the information provided can be accessed in a non sequential way thanks to the hypertext and sensitive elements that interconnect linked pages. This capability of non sequential reading together with the exploitation of multimedia software make FLEB a good tool to pedagogically show and explain the basis of fuzzy logic theory and applications.

Full text

FLEB: A FUZZY LOGIC E-BOOK A. Bermúdez, A. Barriga, I. Baturone, S. Sánchez-Solano Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda. Reina Mercedes s/n, (Edif. CICA), E-41012, Sevilla, Spain European Symposium on Intelligent Technologies, Hybrid Systems and their implementation on Smart Adaptive Systems (EUNITE-2001), pp. 549-554, Tenerife, Dec. 2001. This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author’s copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder. FLEB: A FUZZY LOGIC E-BOOK Andrés Bermúdez, Ángel Barriga, Iluminada Baturone, Santiago Sánchez Instituto de Microelectrónica de Sevilla Avda. Reina Mercedes s/n. Edif CICA 41012-Sevilla, España e-mail: [email protected] ABSTRACT: FLEB1is an electronic book which attempts to introduce the basic mathematical foundations and applications of fuzzy logic through a software environment which includes images, hypertext, sensitive elements, animations and interactive demos. It also allows executing Xfuzzy, a development tool which eases the description, verification, and synthesis of fuzzy logic-based systems. FLEB, like a usual book, is structured into chapters with pages through which the reader can navigate comfortably. In addition, the information provided can be accessed in a non sequential way thanks to the hypertext and sensitive elements that interconnect linked pages. This capability of non sequential reading together with the exploitation of multimedia software make FLEB a good tool to pedagogically show and explain the basis of fuzzy logic theory and applications. KEYWORDS: Fuzzy Logic, e-book, e-learning, multimedia software. 1.- MOTIVATION Fuzzy Logic was introduced in the mid-1960s as a discipline which changed the concepts of conventional logic. From its introduction, many publications have being appearing to explain its main theoretical concepts and applications, especially from the 80s when fuzzy logic-based applications experiment a great success. There is currently a great bibliographical resort about different subjects related to fuzzy logic. However, one of the key points to cover the formation in these subjects is the availability of adequate tools for education. In this sense, the objective of the work presented herein is twofold. Firstly, FLEB eases self-learning by offering interactive facilities such as animations and demos of application examples. Secondly, it paves the way to generate web based tools and contents for education. The construction of the book has three foundations: 1) the illustration of the content is based on HTML and many multimedia effects like animations are employed, 2) the development and application of practical exercises is carried out by Xfuzzy [3], an environment for designing fuzzy logic-based systems, 3) the explanation of application examples is done by a set of demos which have been programmed with Tcl/Tk [4] (to achieve animated and interactive interfaces) and with C (to implement the processing algorithms). This Fuzzy Logic E-Book, FLEB, is organized into 4 chapters. The first one introduces the foundation of the fuzzy logic and summarizes its numerous applications, showing the crescent evolution of this discipline from the beginning until its current situation. Chapter 2 reviews the basic mathematical formalisms of fuzzy set theory and fuzzy inference mechanisms. Chapter 3 explains the development of fuzzy systems by using the Xfuzzy environment. Finally, Chapter 4 explains application examples with the aid of interactive demos programmed with Tcl/Tk language. The content of these four chapters is based on the book “Microelectronic design of fuzzy logic-based systems” [1] and on the user manual of Xfuzzy [7]. The current version of FLEB is written in Spanish although it is planned its translation to English to permit a more widespread diffusion. 2.- DEVELOPMENT ENVIRONMENT Due to the great similarity between the idea of an electronic book and the concept of a web page, the selection of HTML as the programming language for FLEB is apparent. As a matter of fact, a web page is basically a formatted and enhanced text which often contains links to other web pages. In internet, the linked pages can be placed in remote hosts, so that the navigator (the program which visualizes them) has to ask for them to the corresponding server, through a net 1. FLEB(O): Word whose origin is the Grecian term phleps,phlebos, which means vein. connection. If we put together all the pages into the same machine (bookbinding?), as well as the navigator and a set of required programs such net connection is not needed and the pages can include calls to any of the required programs. This capability is a requirement that the selected programming language for FLEB had to meet, because FLEB had to allow executing several programs already developed for Linux (in particular, the development environment Xfuzzy and the interactive demos of application examples). The most widely used navigator in Linux, Netscape Navigator, is easily configured for this purpose. Although with limitations in the execution of some programs, FLEB runs in other platforms and with other navigators. This is a great advantage of the programming language HTML. In order to provide the pages with a greater degree of dynamism and interactivity, JavaScript commands have been included into the HTML code. Among them, we can cite the overLIB [2] library manager commands. The Cascade Style Sheets (CSS) have also been employed for, among other finalities, justifying the text within the pages. In addition, the style sheets allow changing the appearance of the e-book, for instance via the font types or the link appearance, by only modifying a single document. The JavaScript as well the CSS commands are interpreted by the navigator itself. Windows 98 was selected in order to use the development environment Microsoft FrontPage. However, any HTML editor with previewing option would have served our purposes because the whole code has been written by hand. Microsoft Paint and Adobe Photoshop have been employed for creating and processing images. The layer technology of Adobe has greatly helped in developing the different frames which compound every animation created for FLEB; its arrangement has been carried out with WWW Gif Animator [6], a user-friendly freeware utility for fabricating animated GIFs. Finally, the interactive demos have been performed with the help of the programming tool Visual Tcl [5]. 3.- VISUALIZATION ENVIRONMENT 3.1.- MAIN PAGE OR GENERAL TABLE OF CONTENTS The main page or general table of contents of FLEB (illustrated in Figure 1) is displayed when the book is open by the navigator. FLEB has been designed for a resolution of 1024 x 768 pixels, although it can be viewed with less resolution thanks to the scrollbars that appear automatically when the size of the page exceeds the window size. Figure 1. FLEB main page. The contents of a page in FLEB are shown in the central region of the screen, between two black strips. These regions will be referred to as the main frame and superior or inferior strips, respectively. In the main frame of the first page, four small figures appear at the left, one below another. Each of these images is associated with one chapter of the e-book. The content table of the corresponding chapter appears in the main frame when clicking one of them, that is, navigating towards any particular content of the book is as easy as clicking it. The FLEB logo, which always permits the return to the main page, appears at the left corner of the superior strip, as illustrated in Figure 1. The right corner of the inferior strip is where the navigation icons are displayed. In the case of this main page, only an X-shaped navigation icon appears. This is the icon programmed to close the book. The Xfuzzy logo at the left corner of the inferior strip opens the Xfuzzy environment when it is selected. The Xfuzzy environment is composed of a set of tools covering the different stages of description, verification, and synthesis of fuzzy systems. These tools are integrated into a graphical user interface and share a common formal specification language named XFL [3], [7]. 3.2.- CHAPTER AND SECTION PAGES The contents are organized into three levels: chapters, sections, and subsections. When one of them is selected, its content relation is shown at the superior strip together with the FLEB logo. At the same time, the content of the main frame changes to display the selected page, and a new set of icons appear at the inferior strip. As example, when one of the book sections is selected, the superior strip takes the appearance illustrated in Figure 2. It displays the chapter, section, and subsection titles which the viewed page belongs to. These titles at the superior strip, as also happened to the titles of the content table in the main page, can be clicked with the mouse for navigating through FLEB. Figure 2. Example of FLEB page. The main frame contains images and text. The words that appear with a particular color (#9900CC) identify sensitive text. When the mouse is placed on a sensitive text a popup text frame is displayed and, if the symbol @ appears after the heading, it is possible to access to additional information by clicking it. The other way to comfortably navigate through FLEB is to make use of the navigation icons at the right corner of the inferior strip. The icons at the left corner of the inferior strip, close to the Xfuzzy logo, depend on the page which is currently visualized. In the case of Figure 2, there is only one icon, which informs about the possibility of showing a sequence of images. Four of these icons can appear per page. Table 1 shows the appearance of these four icons and of the navigation icons, together with their functionality. The first page of a chapter always shows the content table of that chapter. When the mouse is placed on a section or a subsection title, all the icons associated with that section or subsection appear at the inferior strip. Table 1. Functionality of the icons employed in FLEB 4.- APPLICATION ENVIRONMENT One of the main advantages of an e-book is its ability to provide the text with multimedia elements, which complements the information supplied, facilitates concept understanding (due to visualization utilities), and allows the reader to interact with the book itself (performing practical exercises with the learnt concepts). In order to provide FLEB with multimedia capability, three interactive elements have been included: animations and image sequences, a fuzzy system development environment, and demos of real applications. The animations, which have been implemented by animated GIFs, allow illustrating different concepts. An example is to explain the union (Figure 3) or the intersection of fuzzy sets by illustrating how the resulting fuzzy set is created as the input universe of discourse is being swept. The animations differ from the image sequences in that the latter are sequentially displayed when the user clicks the corresponding icon (see Table 1) while the animations are displayed completely with only one click. Figure 3. Animation illustrating fuzzy sets union. Close the e-book. This informs that there is an image sequence. The images in the sequence are sequentially displayed whenever the icon is clicked. Return to the last visited page. This informs that there is an interactive demo, which is executed when clicking it. Go to the previous page. This informs that the page contains images with sensitive regions (which are associated with popups frames like the sensitive text regions). When placing the mouse on these icons, the sensitive regions are shown. Go to the following page. When a (sub)section consists of several pages, this icon shows the situation of the current page (i) within the total number of pages (j). A second interactive element of FLEB is Xfuzzy that can be executed from any page. This environment, which is supplied together with the text, allows the reader to cover all the stages of a fuzzy system design: description, simulation, tuning by learning algorithms, and either software or hardware synthesis. The only requirement to run Xfuzzy is that the execution platform has to be Unix. The Xfuzzy main page is shown in Figure 3. Figure 3. Xfuzzy main page. The third interactive element is a set of demos with which the reader can interact. These demos have been developed with the programming language Tcl/Tk and using several C functions so as to achieve independence from the executing platform (Unix or Windows). There are currently five demos. One of them illustrates the universal approximation capability of fuzzy systems. The other four demos show the capability of a fuzzy controller to solve different control problems: stabilizing an inverting pendulum, parking a truck at a given loading dock, maintaining a suspended ball with an air flow at a given height, and controlling a dose system. Thanks to these demos, the reader can design a fuzzy controller and visualize how is the plant evolution. This means that a virtual lab is included together with the text. Figure 4 shows the graphical user interface of one of these demos: the truck-dock controlling problem. The dotted lines at the figure illustrate several paths followed by the truck for different starting points. The reader can define and modify the control policy to reach the desired loading dock. For instance, the reader can execute Xfuzzy to modify the membership functions of the input control variables, as shown in Figure 5. Figure 4. Interactive demo: a truck parking at a loading dock. Figure 5. Window of Xfuzzy to edit the membership functions of the input and output variables. 5.- CONCLUSIONS This paper describes an electronic book, FLEB, that includes multimedia resources resulting from the ensemble of elements such as linked text, animations and image sequences, development environment, and virtual laboratory. We think this book offers two relevant features concerning content and structure. As regards contents, this book provides a pedagogic summary of fuzzy logic theory and applications that, to the best of our knowledge, is not provided by most of current books on fuzzy logic. Concerning structure, this book can serve as a paradigm for other texts on different subjects. FLEB is independent of the execution platform except for the fuzzy system development environment, Xfuzzy, which only runs in Unix. 6.- REFERENCES [1] Baturone, I., Barriga, A., Sánchez-Solano, S., Jiménez, C. J., López, D. R., “Microelectronic design of fuzzy logicbased systems”, CRC Press, 2000. [2] Bosrup, Erik, “OverLIB” (http://www.bosrup.com/web/overlib/). [3] López, D. R., Jiménez, C. J., Baturone, I., Barriga, A., Sánchez-Solano, S., “Xfuzzy: A Design Environment for Fuzzy Systems”, 7th IEEE International Conference on Fuzzy Systems (FUZZ-IEEE’98), pp. 1060-1065, Anchorage, May 1998. [4] Sánchez-Solano, S. Barriga, A., Baturone, I., López, D. R., Moreno, F. J., “Curso de Diseño de Controladores Difusos Mediante el Entorno de Desarrollo Xfuzzy”, IV Congreso de Tecnologías Aplicadas a la Enseñanza de la Electrónica (TAEE’2000), pp. 501-504, Barcelona, Sept. 2000. [5] Visual Tcl (http://vtcl.sourceforge.net/). [6] Wasinger, I., Nourbakhch, R., Komary, R, “WWW Gif Animator” (http://stud1.tuwien.ac.at/~e8925005/). [7] Xfuzzy. (http://www.imse.cnm.es/Xfuzzy).