The Fuzzy Logic Engine is a software package that enables users to embed fuzzy-logic modules into their application programs.

Fuzzy logic is useful as a means of formulating human expert knowledge and translating it into software to solve problems. Fuzzy logic provides flexibility for modeling relationships between input and output information and is distinguished by its robustness with respect to noise and variations in system parameters. In addition, linguistic fuzzy sets and conditional statements allow systems to make decisions based on imprecise and incomplete information. The user of the Fuzzy Logic Engine need not be an expert in fuzzy logic: it suffices to have a basic understanding of how linguistic rules can be applied to the user's problem. The Fuzzy Logic Engine is divided into two modules: (1) a graphical-interface software tool for creating linguistic fuzzy sets and conditional statements and (2) a fuzzy-logic software library for embedding fuzzy processing capability into current application programs. The graphical-interface tool was developed using the Tcl/Tk programming language. The fuzzy-logic software library was written in the C programming language.

This program was written by Ayanna Howard of Caltech for NASA's Jet Propulsion Laboratory. For further information, access the Technical Support Package (TSP) free on-line at www.techbriefs.com/tsp under the Software category. This software is available for commercial licensing. Please contact Don Hart of the California Institute of Technology at (818) 393-3425. Refer to NPO-40461



This Brief includes a Technical Support Package (TSP).
Document cover
Fuzzy Logic Engine

(reference NPO-40461) is currently available for download from the TSP library.

Don't have an account?



Magazine cover
NASA Tech Briefs Magazine

This article first appeared in the March, 2005 issue of NASA Tech Briefs Magazine (Vol. 29 No. 3).

Read more articles from the archives here.


Overview

The document is a Technical Support Package for the Fuzzy Logic Engine developed by NASA's Jet Propulsion Laboratory (JPL) for space applications. It serves as a user manual, detailing the functionalities and components of the fuzzy logic engine, which is designed to facilitate the integration of fuzzy logic into various applications.

Fuzzy logic is a computational approach that mimics human reasoning, allowing systems to make decisions based on imprecise or incomplete information. This engine is particularly valuable in environments where traditional binary logic may fall short, such as in space applications where conditions can be unpredictable and noisy.

The Fuzzy Logic Engine consists of two main modules: a graphical tool for creating linguistic fuzzy sets and conditional statements, and a software library that enables the embedding of fuzzy processing capabilities into existing applications. The graphical tool is developed using the TCL/TK programming language, requiring users to have the WISH interpreter installed on their machines. Users can invoke the tool by entering a specific command at the command line, which opens a user interface for managing fuzzy rule sets.

The manual outlines various functionalities, including loading new fuzzy rules, viewing and changing existing rules, adding or deleting variables, and saving fuzzy logic rule sets. It provides step-by-step instructions for each of these tasks, ensuring that users can effectively utilize the engine to model complex relationships between inputs and outputs.

Additionally, the document emphasizes the robustness of fuzzy logic in handling variations in system parameters, making it a flexible tool for modeling real-world scenarios. The engine's ability to incorporate expert knowledge into its decision-making processes enhances its applicability across different domains, particularly in aerospace.

For further assistance, the document provides contact information for the NASA Scientific and Technical Information (STI) Program Office, where users can access additional resources and publications related to fuzzy logic and its applications.

Overall, this Technical Support Package serves as a comprehensive guide for users looking to implement fuzzy logic in their projects, highlighting the engine's capabilities and providing practical instructions for its use in space-related applications.