CSCI 4560/6560 Evolutionary Computation and Its Applications

CSCI 4560/6560 Evolutionary Computation and Its Applications

Fall 2023: Tuesdays and Thursdays 2:20pm - 3:35pm & Mondays 3:00pm - 3:50pm, Boyd GSRC Room 208
Instructor: Prof. Khaled Rasheed
Telephone: 542-0881
Office Hours: Monday 4 pm to 6 pm or by email arrangement
Office Location: Room 518, Boyd GSRC
Email: khaled@uga.edu

Teaching Assistant: Mohammad Al-Saad
Office hours: Wednesdays: 2:00 PM - 3:00 PM or by email arrangement
Office Location: via zoom at https://zoom.us/j/94885256649
Email: mohammad.alsaad@uga.edu

Attendance Note:

I will do the lecture in person (face to face) in room 208 and all students are expected to attend unless you are sick or under quarantine. In such cases please email me and I can work with you by zoom to catch up. If you are planning to travel in December, make sure your travel date is after the final exam. I cannot offer early makeup exams under any circumstances.

Objectives:

To provide a broad introduction to the field of Genetic Algorithms and other fields of Evolutionary Computation and global optimization. To teach students how to apply these methods to solve problems in complex domains. The course is appropriate both for students preparing for research in Evolutionary Computation, as well as Science and Engineering students who want to apply Evolutionary Computation techniques to solve problems in their fields of study.

Recommended Background:

CSCI 2720 or CSCI 2725 Data Structures. Students must have a strong understanding of basic computer algorithms and data structures and at least one high level programming language.

Topics to be Covered:

Components of an Evolutionary Algorithm, Genetic Algorithms, Evolution Strategies, Evolutionary Programming, Genetic Programming, Learning Classifier systems, Parameter Control, Multi-modal Problems, Multi-objective Evolutionary Optimization, Hybridization and Memetic Algorithms, Working With Evolutionary Algorithms, Theory of Evolutionary Computation, Evolutionary Computation applications in science and Engineering. Other nature-inspired global optimization techniques.

Expected Work:

Reading; assignments (including programming); midterm; final; and term project and paper. (Unless otherwise announced by the instructor: all assignments and all exams must be done entirely on your own.)

Course Objectives and Expected Outcomes:

This course presents a survey of topics in evolutionary computation. At the end of the semester, all students are expected to be able to do the following:
  • Formulate a problem as an evolutionary computation search/optimization by specifying representations, selection and variation operators.
  • Write a program or use a package to implement an evolutionary algorithm.
  • Conduct evolutionary optimization experiments and properly report and discuss the results.
  • Effectively present an evolutionary computation article to an audience.
  • Review and critique evolutionary computation articles.
  • Reason about the schema theorem and the theory of evolutionary computation.

    Academic Honesty and Integrity:

    All academic work must meet the standards contained in "A Culture of Honesty." Students are responsible for informing themselves about those standards before performing any academic work. The penalties for academic dishonesty are severe and ignorance is not an acceptable defense.

    Grading Policy:

  • Assignments: 30% (Programs, questions, attendance)
  • Midterm Examination: 20%
  • Paper presentation: 10%
  • Paper reviews: 10%
  • Undergraduates: Final Examination: 30%
  • Graduates: Final Examination 10% And Term Project: 20% (includes term paper and presentation)
    Term projects are required for graduate students and optional for undergraduates. If any undergraduates choose to do term projects, their grade distribution will be the same as that of graduate students. Students may work on their term projects individually or in groups of up to Four students each. The above distribution is only tentative and may change later. The instructor will announce any changes.

    Assignment Submission Policy

    Assignments must be turned in by the assigned deadline. Late assignments will lose 10% for every calendar day. Rare exceptions may be made by the instructor in case of illness or under extenuating circumstances and in accordance with the university policies.

    Course Home-page

    A variety of materials will be made available on the EC Class Home-page at http://cobweb.cs.uga.edu/~khaled/ECcourse/, including handouts, lecture notes and assignments. Announcements may be posted between class meetings. You are responsible for being aware of whatever information is posted there.

    Lecture Notes

    Copies of Dr. Rasheed's lecture notes will be available at the bottom of the class home page. Not all the lectures will have electronic notes though and the students should be prepared to take notes inside the lecture at any time.

    Textbook

  • "Introduction to Evolutionary Computing", Eiben and Smith. Springer-Verlag,First Edition Corrected 2nd printing, 2008, ISBN 10: 3540401849, ISBN 13: 9783540401841. (Required)

    Additional Books

  • "Genetic Algorithms in Search, Optimization, and Machine Learning", David Goldberg. Addison-Wesley, 1989.
  • "An Introduction to Genetic Algorithms", Melanie Mitchell. MIT Press, 1996.
  • "Genetic Algorithms + Data Structures = Evolution Programs", Zbigniew Michalewicz. Springer-Verlag, New York,1996.
  • "Evolutionary Computation", D. Dumitrescu et al. CRC Press, 2000.
  • "Evolutionary Computation 1", Thomas Back et al. IOP Publishing, 2000.
  • "Evolutionary Computation, A "Unified Approach", K. DeJong. MIT Press, 2006.

    Web Resources

  • GA software packages from the CMU Artificial Intelligence repository

    Announcements:

  • [10-3-2023] As announced in class, the midterm exam will be next Thursday 10-12-2023. It will cover all the topics discussed in the course till the end of Chapter 5. It will be open notes but the use of books, laptops or phones will not be allowed. Although you may not need one, I recommend that you bring a calculator to the exam. You should also bring your lecture notes and all handouts and you may also bring any additional notes, homeworks etc. We shall have a review lecture on Tuesday in which we will go over the solutions to Homework 3 and other problems. Attendance of the review lecture is very important.
  • [9-18-2023] The following evolutionary computation packages are recommended by the TA:
    Python: DEAP, pyevolve, GeneAI, Pystep, Pyvolution
    Java: jgap, jenetics, GA Playground
    C++: GAlib
    C: GAUL

    Papers:

  • "Automatically Designing CNN Architectures Using the Genetic Algorithm for Image Classification" 2020. [Tyson Jordan, Daniel Mora][10-26] {download}
  • "An empirical study on GAs without parameters" Thomas Back et al.,2000. [Briana Bradley, Catherine Ramirez-Rosa][11-2]{download}
  • "Towards a Generic Framework for Automated Video Game Level Creation" 2010. [Joel Mathew, Jun Wong][11-7] {download}
  • "Genetic Algorithms for Evolving Computer Chess Programs" 2013. [Darren Li , Robert Weimer][11-7] {download}
  • "Enhanced Genetic Path Planning for Autonomous Flight", 2017. [Nikita Jha,Sebastian Garcia][11-9] {download}
  • "Modified particle swarm optimization-based multilevel thresholding for image segmentation" 2015. [Mahtab,Christopher][11-9] {download}
  • "Multi-Objective Evolutionary Design of an Electric Vehicle Chassis" 2020. [Carter Logan, Sruthi Gireeshkumar][11-9] {download}
  • "Evolving an Expert Checkers Playing Program without Using Human Expertise" Kumar Chellapilla and David Fogel, 2001. [Sona Makknal,Angela Jeyachandran][11-16] {download}
  • "AutoML: A survey of the state-of-the-art" 2020. [Rohan Desai, Henry Ivy][11-16] {download}
  • "Optimizing Ontology Alignment by Using Compact Genetic Algorithm" 2020. [Austin Downes, Morgan Riley][11-16] {download}
  • "An Approach for Team Composition in League of Legends using Genetic Algorithm" 2019. [Niki Vishwanath, Quinton Heald][11-20] {download}
  • "AUDIO-GUIDED ALBUM COVER ART GENERATION WITH GENETIC ALGORITHMS" 2022. [Kayla George, Tsemaye Oseragbaje][11-20] {download}
  • "NSGA-Net: Neural Architecture Search using Multi-Objective Genetic Algorithm" 2019. [Tim Hall, Uchenna Williams][11-21] {download}
  • "Automatically Designing CNN Architectures Using the Genetic Algorithm for Image Classification" 2020. [Anna Hu, Aditya Vurukala][11-21] {download}
  • "Using Interactive Evolutionary Computation (IEC) with Validated Surrogate Fitness Functions for Redistricting" 2018. [Mayank Karani,William Thomas Steinmetz][11-21] {download}
  • "Using Suggestion Information in Exchange Solutions between Users in Interactive Evolutionary Computation Creating Blended Juices" 2022. [Jenna Nicole Dapolite][11-27] {download}
  • "Evolving the process of a virtual composer" Csaba Sulyok et al.,2019. [Ava Sloan,Matthew Chambers][11-27]{download}
  • "Selecting Best Investment Opportunities from Stock Portfolios Optimized by a Multiobjective Evolutionary Algorithm" 2015. [Divya Ragunathan, William Gohn][11-28] {download}
  • "Prediction of Indonesian Inflation Rate Using Regression Model Based on Genetic Algorithms" 2020. [Samee Lalani, Indigo Powell][11-28] {download}

    Assignments:

  • Paper Review

    Lecture Notes:

  • Introduction
  • Chapter 1
  • Chapter 2
  • Chapter 3
  • Chapter 4
  • Chapter 5
  • Chapter 6
  • Chapter 8
  • Chapter 9
  • Genetic Algorithm for Design Optimization (GADO)
  • Chapter 14
  • Chapter 11
  • Chapter 10
    The course syllabus is a general plan for the course; deviations announced to the class by the instructor may be necessary.

    Last modified: 11/21/2023.
    Khaled Rasheed (khaled (at) uga.edu)