Queen's School of Computing CISC-467* - Fall 2019 Title
CISC-467*

Fuzzy Logic


Fall 2019



Wooly Bear Caterpiller

Internal LinksAnnouncements

Assignment

Personnel

Course Information

Schedule

Course Plan and Record

Demo Programs

Practice Problems

Recommended Readings

Sample Test

Sample of Term Papers, etc.

Academic Integrity in CISC 467





Announcements



Return to menu



Assignment

467 Assignment
Date Text
20191018
Assignment


Return to menu



Personnel

Personnel
Instructor
Dr. Robin W. Dawes
RWD
Goodwin 537 
dawes AT cs DOT queensu DOT ca
http://sites.cs.queensu.ca/dawes/
533-6061 (but speaking to me in person is a much better idea)
Office Hours: TBA

TAs
Name
Email 
Office Hours
Picture









































Return to menu



Course Information

Course_Information
Calendar Description

History of fuzzy theory; fundamental concepts of fuzzy theory: sets, relations, and logic operators. Approximate reasoning, fuzzy inference, possibility theory. Separation from probability. Fuzzy control systems. Fuzzy pattern recognition. Advanced topics may include fuzzy expert systems, financial systems, graph theory, optimization.

Suggested Texts There is no required text for this course. Here are some suggestions:

Fuzzy Logic - Yen and Langari

Free PDF texts:
Bede - Mathematics of Fuzzy Sets and Fuzzy Logic
Chen and Pham - Introduction to Fuzzy Sets, Fuzzy Logic and Fuzzy Control Systems
Syllabus

Introduction (2 weeks)

  • Limitations of classical logic

  • Introduction to fuzzy set theory

  • Introduction to fuzzy logic

Fuzzy Logical Operators (1 week)

  • Conjunction

  • Disjunction

  • Negation

Fuzzy Inference Systems (2 weeks)

  • Generalized Modus Ponens

  • Generalized Modus Tollens

  • Approximate Reasoning

Fuzzy Control Systems (2 weeks)

  • The Mamdani Model

  • The Sugeno Model

  • Defuzzification methods

Fuzzy Implication (1 week)

  • Families of implication operators

  • Hierarchy of implication operators

Applications and Advanced Topics in Fuzzy Logic (4 weeks)

  • Subjects as chosen and presented by members of the class

  • Possible topics include:

    • Fuzzy Classification Algorithms

    • Fuzzy Logic and Neural Networks

    • Fuzzy Graph Theory

    • Fuzzy Character Recognition

    • Fuzzy Expert Systems

    • Fuzzy Markov Chains

    • Fuzzy Ranking Algorithms

    • Fuzzy Facial Recognition

    • Fuzzy Image Stabilization

    • Fuzzy Logic in Computer Games

Marking Scheme
Contributions to shared knowledge base:       10%
Homework:                                                      10%
Midterm test:                                                   15%
Presentation on advanced topic:                     20%
Implementation project:                                  20%
Term Paper:                                                     25%



Return to menu



Schedule

Schedule_Table
Class Schedule



Monday   1:30 - 2:20

Wednesday   12:30 - 1:20

Friday 11:30 - 12:20

        All classes are in Jeffery 234



Test Schedule


Date
Locations
Material
Solutions
Midterm
Wednesday October 30, 12:30 - 1:20
Jeffery 234

























Return to menu



Course Plan and Record



Return to menu



Demo Programs

Demo Programs
Date Description Source


General note:  several of these python source files have .py3 as their extension.  This is because I have set up my IDE to use this extension to distinguish between Python 2 and Python 3 files.  For obscure reasons, some of the extensions are .py even though all the programs are written in Python 3.  You may want to change all the extensions to .py




The Mamdani model for Fuzzy Rule Based Inference systems. 

This contains class definitions for Clauses, Rules, Rule_Sets, and Piecewise_Functions.  A variety of t-norms and s-norms are provided.  Rules can be resolved using clipping or scaling.  Rule_Sets are defuzzified using the Centre of Mass method.
Python 3 source code

Mamdani System for controlling the depth of water in a tank
Python 3 source code

The Sugeno model for Fuzzy Rule Based Inference systems.

This is a very simple version of the Sugeno model: all Rule consequents are constants (as opposed to the full Sugeno model in which consequents can be linear combinations of the input variables).
Python 3 source code

Sugeno System for controlling the depth of water in a tank - this is a work in progress!
Python 3 source code

T-norm side-by-side comparison, and s-norm side-by-side comparison.

Each of 7 popular t-norms is shown as a matrix of t(x,y) values, with (0,0) in the bottom left corner and (1,1) in the top right.  Shades of grey are used to represent the t(x,y) values, with black representing 0 and white representing 1.

On the second display screen (reached by clicking anywhere in the image) the corresponding s-norms are displayed.
Python 3 source code

Implication side-by-side comparison.

11 popular implication operators are shown in the same manner as the t-norms and s-norms in the demo just above
Python 3 source code

Modus Ponens

An implication operator lets us create a relation between a fuzzy set A and a fuzzy set B.  the operator satisfies the Modus Ponens criterion if the result of composing A with the A_Implies_B relation is B.   This depends on the t-norm and s-norm used to resolve the composition.

This demo runs through several well-known implication operators and combines each with a collection of t-norm/s-norm pairs.  From the results it is possible to see which combinations satisfy the Modus Ponens criterion.
Python 3 source code


Return to menu



Practice Problems



Return to menu



Recommended Readings

Recommended Readings General Readings

Source
Section
Comments
Learning (Your First Job)
All
Essential reading for all students
Computer Science For Fun Any purely recreational



Fuzzy Readings

Here is a small collection of tutorials, interesting papers, index pages etc. on fuzzy theory.  I have not read all of these (yet).  Some may be different versions of the same document, found on different sites and not yet weeded out.  Some of these links may no longer connect to documents.

You are encouraged to recommend new links to add to this page.

Title
Wolfram Fuzzy Logic Table of Contents
FAQ: Fuzzy Logic and Fuzzy Expert Systems 1/1 [Monthly posting]
Fuzzy Logic Tutorial - An Introduction
Fuzzy logic jump start.
Fuzzy Logic
afnn15_fuzzylogic.pdf (application/pdf Object)
Fuzzy Fundamentals.pdf (application/pdf Object)
Fuzzy Entropy and Conditioning
Fuzzy logic tutorial.
Generalized modus ponens
nfs1.pdf (application/pdf Object)
nfs2.pdf (application/pdf Object)
nfs3.pdf (application/pdf Object)
nfs4.pdf (application/pdf Object)
nfs5.pdf (application/pdf Object)
nfs6.pdf (application/pdf Object)
nfs7.pdf (application/pdf Object)
A note on the relationship between fuzzy logic and four-valued logic
afnn16_fuzzysystem.pdf (application/pdf Object)
lm92.pdf (application/pdf Object)
fsta2006-behounek-cintula.pdf (application/pdf Object)
Entropy
Fuzzy Logic
Fuzzy Logic Archive
Fuzzy Logic
PC AI - Fuzzy Logic
afnn20_fuzzycontrol.pdf (application/pdf Object)
Fuzzy CA - Mingarelli.pdf (application/pdf Object)
Fuzzy Causality.pdf (application/pdf Object)
Fuzzy model of reputation.pdf (application/pdf Object)
Linguistic Fuzzy-Logic Game Theory -- Arfi 50 (1): 28 -- Journal of Conflict Resolution
LINZ2006Abstracts.pdf (application/pdf Object)
nafips_gras_spagnolo_232 (application/pdf Object)
Fuzzy CA - Sigan, Jack.pdf (application/pdf Object)
fuzzy consensus 1.pdf (application/pdf Object)
Fuzzy Group Agreement_VandeWalleTuroffPaper.pdf (application/pdf Object)
Fuzzy Logic Laboratorium Linz - Hagenberg
Fuzzy Logic Laboratorium Linz - Hagenberg
fuzzy-subsethood-based-color.pdf (application/pdf Object)
FAMIMO
generation5 - Falcon: Fuzzy Adaptive Learning Control Network
Bart Kosko
Robert Fullér
BISC Program; Soft Computing
ISIS Lab, Evolution



Return to menu



Sample Test

467 Sample Test

 



Return to menu



Sample of Term Papers, etc.

467 Sample Test
Sample Term Papers Sample 1

Sample 2

Sample 3

Sample 4
Sample Implementations Sample 1

Sample 2
Sample Presentations Sample 1

Sample 2


Return to menu



Academic Integrity in CISC 467

Academic Integrity Academic integrity is constituted by the five core fundamental values of honesty, trust, fairness, respect and responsibility (see www.academicintegrity.org). These values are central to the building, nurturing and sustaining of an academic community in which all members of the community will thrive. Adherence to the values expressed through academic integrity forms a foundation for the "freedom of inquiry and exchange of ideas" essential to the intellectual life of the University (see the Senate Report on Principles and Priorities).

Students are responsible for familiarizing themselves with the regulations concerning academic integrity and for ensuring that their actions conform to the principles of academic integrity. Information on academic integrity is available in the Arts and Science Calendar (see Academic Regulation 1 on the Arts and Science website).

Departures from academic integrity include plagiarism, use of unauthorized materials, facilitation, forgery and falsification, and are antithetical to the development of an academic community at Queen's. Given the seriousness of these matters, actions which contravene the regulation on academic integrity carry sanctions that include but are not limited to

  • a warning
  • loss of grades on an assignment or test
  • failure of a course
  • requirement to withdraw from the university


Any violation of Academic Integrity in CISC-467 will result in a grade of 0 on the work involved, and a maximum final grade of 60 in the course.  Repeated violations will result in a final grade of 0.


The preceding text on academic integrity is based on a document written by Prof. Margaret Lamb and is used here with her permission.



Return to menu