Course Instructor: Dr. Otman A. Basir,

Phone: +1 519 888 4567 extension 36754; Fax: +1 519 746 3077; Office: E5-5116;


Web Page:

Lectures: Tuesdays. Wednesdays and Thusdays 9:30-10:20, Tutorials Fridays 7:00PM-8:00PM PHY 235.

Course Description:

The course starts by addressing the ill-structured problems and need for computational intelligence methods. It introduces the concepts of heuristics and their use in conjunction with search methods, solving problems using heuristics and meta-heuristics, The course also introduces the concepts of cooperation and adaptations and how they are influencing new methods for solving complex problems. The course illustrates how the concepts of cooperation and adaptation are manifested in nature and how such models are inspiring new types of solutions methods. Topics to be covered include: search algorithms, use of heuristics in search and game playing, meta-heuristics algorithms, Tabu search, simulated annealing, evolutionary computing methods, swarm intelligence, ant-colony algorithms, particle swarm methods, adaptive and learning algorithms and the use of these algoriththe use of these algorithms in solving continuous and discrete problems that arise in engineering applications.


ECE 250 or SE 240 Algorithms and data Structures, ECE316 Probability Theory and Random Processes or equivalent.

Antirequisites: CS 486, SYDE 422

Course References:


Major Topics:

1. Introduction to ill-structured problems, need for approximate algorithms..

2. Review of blind search methods, use of heuristics in search and game playing, metaheuristics algorithms: trajectory based and population based.

3. Trajectory methods: Tabu Search and Simulated Annealing.

4. Genetic algorithms, cooperation in GA.

5. Swarm Intelligence: cooperation and adaptation in nature and computational models inspired by nature.

6. Ant Colony algorithms: ACO- cooperative and multi-ant-colonies .

7. Particle swarm algorithms: particle swarm optimization, cooperation within the swarms, cooperation among swarms, swarm ensembles.

8. Engineering Applications: optimization, routing, text clustering.

Policy and Rules:

Academic Integrity

In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. [Check for more information.]


A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70, Student Petitions and Grievances, Section 4, When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.


A student is expected to know what constitutes academic integrity to avoid committing academic offenses and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offense, or who needs help in learning how to avoid offenses (e.g., plagiarism, cheating) or about "rules" for group work/collaboration should seek guidance from the course professor, academic advisor, or the undergraduate associate dean. For information on categories of offenses and types of penalties, students should refer to Policy 71, Student Discipline, For typical penalties check Guidelines for the Assessment of Penalties,

Plagiarism-detection software may be used on any submitted work.


A decision made or penalty imposed under Policy 70, Student Petitions and Grievances (other than a petition) or Policy 71, Student Discipline may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72, Student Appeals,

Note for students with disabilities

The Office for Persons with Disabilities (OPD), located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the OPD at the beginning of each academic term.