ECE 474

Course Description

This course explores the theory and practical applications of genetic algorithms, which are computer search algorithms inspired by the principles of natural genetics. Genetic algorithms combine the concept of survival of the fittest with a structured yet random information exchange, resulting in a powerful and robust improvement search mechanism. These algorithms have found diverse applications in various fields, including hydraulic and structural optimization, VLSI layout, communication network design, immune system simulation, and combinatorial optimization, among others. Moreover, genetic algorithms are gaining increasing attention in machine learning, as they provide a valuable tool for expert systems to acquire new knowledge. Throughout this course, students will delve into the principles and application of genetic algorithms.

Learning Outcomes

  1. Understand the concept of a Genetic Algorithm (GA) and its application in problem-solving.

  2. Analyze the mechanics of a simple GA and comprehend its working principles.

  3. Apply probability and combinatorics concepts to evaluate the effectiveness of GA.

  4. Recognize the power of effect schemas and implicit parallelism in improving GA performance.

  5. Demonstrate knowledge of the mathematical foundations underlying genetic algorithms, including the fundamental theorem.

  6. Utilize the Python programming language for implementing basic genetic algorithms.

  7. Evaluate and apply genetic algorithms in various fields, including science, engineering, and business.

  8. Implement and analyze real-value genetic algorithms for solving optimization problems.

  9. Understand the concept of genetics-based machine learning and its applications.

  10. Explore Genetic Programming as an advanced technique for problem-solving.

  11. Analyze advanced topics related to genetic algorithms and critically evaluate their effectiveness.

  12. Develop effective presentation skills through student presentations, showcasing their understanding and application of genetic algorithms.

Textbooks

  • "Introduction to Evolutionary Computing" by A.E. Eiben and J.E. Smith.

  • "Genetic Algorithms in search, Optimization, and Machine Learning" by Goldberg, D.

Schedule

Date Topic - Slides Reading Homework
Week 1 1. GA Introduction Ch1 On Blackboard
Week 2 2. Review of Combinatorics and Probability Ch2 On Blackboard
Week 3-4 3. Schema Theorem Ch3 On Blackboard
Week 5 4. Review of Python Programming Ch4 On Blackboard
Week 6 5. Computer Implementation of GA Ch5 On Blackboard
Week 7 6. Practical Considerations Ch6 On Blackboard
Week 8-9 7. GA Applications Ch7 On Blackboard
Week 10 8. Evolution Strategies Ch8 On Blackboard
Week 11 10. Multi-Objective Optimization Ch9 On Blackboard
Week 12 11. Particle Swarm Optimization Ch10 On Blackboard
Week 13-14 Students Presentations Papers On Blackboard

Disclaimer: This page may contain personal archived (pre-print versions) articles published by several publishers. Copyright and all rights therein are retained by authors or by other copyright holders. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works, must be obtained from the copyright holder.