# Teaching

**TEACHING GOALS**

My teaching goals are two-fold: 1) I want students to realize that what they are learning is interesting, significant as well as practically useful; and 2) I also want them to experience the pleasure of finding solutions to challenging real-world problems.

**TEACHING PHILOSOPHY AND METHODS**

My teaching philosophy is “*let the interest in the topic be the best teacher*”. My following description of teaching methods pertains to my courses in electrical engineering and computer science (especially in thematic areas of control systems and intelligent systems). Such courses are difficult but cover well-known subject matter. Consequently, my task is to help the highly-motivated engineering students learn the material and to be an effective catalyst who speeds up their learning.

The importance of meticulous preparation of the lecture notes cannot be overestimated: not only in planning the course, but in laying out the details in each and every lecture. Even if I have taught a course several times, each lecture must be carefully prepared. Indeed, I want to teach each lecture as if I just see the material today: recent developments suggest new illustrations, new examples, etc.; they help to keep the course alive.

**COURSES TAUGHT**

**Undergraduate courses**

*Principles of Automatic Control*

*Intelligent Control Systems*

*Artificial Intelligence and Computational Intelligence*

*Fundamentals of Cybernetics*

*Effective Programming in C and C++*

*Fuzzy Sets and Systems*

This course will introduce fundamental concepts and operations of fuzzy sets, fuzzy relations, possibility theory, fuzzy logic and approximate reasoning, and their applications. The integration of fuzzy logic and neural networks will be also covered. The main topics to be covered involve: 1) Basics of Fuzzy Sets; 2) Fuzzy Relations; 3) Fuzzy Logic; 4) Fuzzy Modeling and Control Methods; 5) Neuro-fuzzy Systems; and 6) Applications.

**Graduate courses**

*Computational Intelligence*

This course covers main topics of computational intelligence (CI) techniques for the design of intelligent systems, including neural networks (NN), cellular automata (CA), fuzzy logic (FL), hybrid intelligent systems, neuro-fuzzy modeling, self-organizing fuzzy logic control (SOFLC), evolutionary algorithms (genetic algorithms (GAs), genetic programming (GP), particle swarm optimization (PSO), etc.) as well as several topics of machine learning (such as Principal Component Analysis (PCA) and Support vector machine (SVM)). Those techniques will be illustrated by presenting some typical application examples. Future research vistas will also be pointed out. The main contents of this course are outlined as follows: 1) Introduction; 2) General Principles of Artificial and Computational Intelligence; 3) Fuzzy Systems Modeling and Control; 4) Neural Computing; 5) Evolutionary Computation; 6) Several Topics of Machine Statistical Learning.

*Soft Computing and Intelligent Systems*

From the perspectives of mathematical preliminaries, property, function and performance of intelligent systems, and various design and analysis methods for intelligent systems, this course presents, in a systematic and profound manner, the architectures, properties of intelligent systems as well as various computational intelligence (also known as soft computing sometimes) techniques. The course is featured by (i) a good balance between theory and applications of intelligent systems. In addition to the mathematical foundations, the applications of intelligent systems to control and signal processing problems will be comprehensively presented; and (ii) Most recent developments in the field will be included so that the students can have a deeper understanding of and better familiarity with the mainstream design and analysis methods for intelligent systems.