Soft Computing

(CS60108)

Soft computing is an emerging approach to computing which parallel the remarkable ability of the human mind to reason and learn in an environment of uncertainty and imprecision. Soft computing is based on some biological inspired methodologies such as genetics, evolution, ant’s behaviors, particles swarming, human nervous systems, etc. Now, soft computing is the only solution when we don’t have any mathematical modeling of problem solving (i.e., algorithm), need a solution to a complex problem in real time, easy to adapt with changed scenario and can be implemented with parallel computing. It has enormous applications in many application areas such as medical diagnosis, computer vision, hand written character recondition, pattern recognition, machine intelligence, weather forecasting, network optimization, VLSI design, etc.

Timings: Monday:12:00—12:55, Tuesday: 10:00—11:55, and Thursday: 08:00—08:55 at Seminar Room, Computer Science Department, Takshashila Building

View Announcements

Announcements


Date Message
07 February 2024 The Mid-Semeter Examination 2024 of the cousre CS60108 (Soft Computing Applications) has been scheduled on 20.02.2024, 14:00-16:00 (AN).
Venue: Room No. 107 and 120, CSE Department.
Syllabus of the test: Introduction to Fuzzy logic, Operations on Fuzzy sets, Fuzzy realtions, rules, prpositions and implications, Defuzzification techniques, Fuzzy logic controller design, Artificial Neural Network, Architectures of ANNS, Training ANNs.
01 February 2024 The Class Test-1 will be held on 14 February 2024 in Seminar Room, CSE DEepartment, Takshashila Building, 2nd Floor at 17:30 hours.
01 Janury 2024 The first class will be held on 04 January 2024 in Seminar Room, CSE DEepartment, Takshashila Building, 2nd Floor at 08:00 hours.

Course Overview & Objectives


This course will cover fundamental concepts used in Soft computing. The concepts of Fuzzy logic (FL) will be covered first, followed by Artificial Neural Networks (ANNs) and optimization techniques using Genetic Algorithm (GA). Applications of Soft Computing techniques to solve a number of real life problems will be covered to have hands on practices. In summary, this course will provide exposure to theory as well as practical systems and software used in soft computing.

After completing this course, you will be able to learn:

  • Fuzzy logic and its applications.
  • Artificial neural networks and its applications.
  • Solving single-objective optimization problmes using GAs.
  • Soloving multi-objectiove optimization problerms using Evolutionary algorithms (MOEAs).
  • Applications of Soft computing to solve problmes in varieties of application domains.

Prerequisites


To extract the maximum from the course, the following prerequisites are must.

  • A strong mathematical background.
  • Proficiency with algorithms.
  • Programming skills in C, C++, or Java, MATLAB, etc.
  • Critical thinking and problem solving skills.
  • A minimum of 7.0 CGPA.

Syllabus


An outline of the course is as follows. You can also download the syllabus for your reference.

Introduction to Soft Computing

  • Concept of computing systems.
  • "Soft" compiting versus "Hard" computing
  • Characteristics of Soft computing
  • Some applications of Soft computing techniques

Fuzzy logic

  • Introduction to Fuzzy logic.
  • Fuzzy sets and membership functions.
  • Operations on Fuzzy sets.
  • Fuzzy relations, rules, propositions, implications and inferences.
  • Defuzzification techniques.
  • Fuzzy logic controller design.
  • Some applications of Fuzzy logic.

Genetic Algorithms

  • Concept of "Genetics" and "Evolution" and its application to proablistic search techniques
  • Basic GA framework and different GA architectures.
  • GA operators: Encoding, Crossover, Selection, Mutation, etc.
  • Solving single-objective optimization problems using GAs.

Multi-objective Optimization Problem Solving

  • Concept of multi-objective optimization problems (MOOPs) and issues of solving them.
  • Multi-Objective Evolutionary Algorithm (MOEA).
  • Non-Pareto approaches to solve MOOPs
  • Pareto-based approaches to solve MOOPs
  • Some applications with MOEAs.

Artificila Neural Networks

  • Biological neurons and its working.
  • Simulation of biolgical neurons to problem soloving.
  • Different ANNs architectures.
  • Trainging techniques for ANNs.
  • Applications of ANNs to solve some real life problems.

Resources & References


The following text and reference books may be referred to for this course.

  • Fuzzy Logic: A Pratical approach, F. Martin, , Mc neill, and Ellen Thro, AP Professional, 2000.
  • Fuzzy Logic with Engineering Applications (3rd Edn.), Timothy J. Ross, Willey, 2010.
  • Foundations of Neural Networks, Fuzzy Systems, and Knowldge Engineering, Nikola K. Kasabov, MIT Press, 1998.
  • Fuzzy Logic for Embedded Systems Applications, Ahmed M. Ibrahim, Elesvier Press, 2004.
  • An Introduction to Genetic Algorithms, Melanie Mitchell, MIT Press, 2000.
  • Genetic Algorithms In Search, Optimization And Machine Learning, David E. Goldberg, Pearson Education, 2002.
  • Practical Genetic Algorithms, Randy L. Haupt and sue Ellen Haupt, John Willey & Sons, 2002.
  • Neural Networks, Fuzzy Logis and Genetic Algorithms : Synthesis, and Applications, S. Rajasekaran, and G. A. Vijayalakshmi Pai, Prentice Hall of India, 2007.
  • Soft Computing, D. K. Pratihar, Narosa, 2008.
  • Neuro-Fuzzy and soft Computing, J.-S. R. Jang, C.-T. Sun, and E. Mizutani, PHI Learning, 2009.
  • Neural Networks and Learning Machines, (3rd Edn.), Simon Haykin, PHI Learning, 2011.

Additionally, you may look at the following materials.

Course Coordinator: Dr. Debasis Samanta


Dr. Debasis Samanta is a Professor in the Department of Computer Science and Engineering, Indian Institute of Technology Kharagpur. For details about him, please see the link http://cse.iitkgp.ac.in/~dsamanta/

For any query, you can reach Dr. Samanta at:

+91-3222-282334 (Office)

+91-3222-282335 (Residence)

+91-8116603227 (Only SMS)

d...@iitkgp.ac.in

d...@gmail.com

Teaching Assistants


Soft Computing Practices

  • Santhoshkumar Peddi (santhoshpps11@gmail.com)

Course Resources

  • Soham Bandyopadhyay (sohamban@gmail.com)

Moodle


Moodle, an online course management system, will be used extensively in this course. You should sign up for the course Moodle at the earliest. Once you click on the link, you would be redirected to the CSE home page where you would find a link for signing up at the bottom of the page.

In case of any doubt on the subject matter and topics covered in the class, you are welcome to participate in the Discussion Forum and post your query. We would get back to you with a response as soon as possible. Moreover, your friends can help answer your query too! Discussions in the forum may be moderated.