Skip to main content

CSC 591 631 Metaheuristics for Search and Optimization

3 Credit Hours

Nature-inspired metaheuristics use concepts derived from nature to solve computational problems. The course aims to teach students how computational processes can be derived from natural phenomena and how to implement simple nature-inspired algorithms in Julia. We will discuss fundamental algorithms, basic optimization tasks, performance metrics, and applications.

Prerequisite

Students must have a basic knowledge of discrete mathematics, the design and analysis of algorithms, and statistics.

Course Objectives

Upon completion of the course, students will be able to:

  • Explain the basic concepts behind nature-inspired metaheuristics applied to search and optimization problems
  • Implement nature-inspired algorithms using the high-level, high-performance, dynamic programming language Julia
  • Benchmark search and optimization algorithms

Course Requirements

Grades will be computed by a weighted average of paper summaries, quizzes, three homework assignments, a team project, and class participation.

All assignments, except for the team project, are intended to be individual work. Any tool or resource must be approved in advance by the instructor and acknowledged clearly in any work turned in.

The Piazza message board will be the primary mode of communication about all aspects of the course.  Email should be used only for personal matters.

Course Outline

The coursework consists of lectures (paper discussions & lecture material, Julia labs), readings, paper summaries, quizzes, a team project, and 3 homework assignments.

Topics include:

  • Introduction to Optimization by Metaheuristics
  • No-Free Lunch Theorem
  • Performance metrics, Tuning and Benchmarking
  • Single-State Methods (Hill-climbing, Simulated Annealing, Iterated Local Search etc.)
  • Tabu Search
  • Genetic Algorithms
  • Evolution Strategies, Genetic Programming
  • Differential Evolution
  • Particle Swarm Optimization
  • Ant Colony Optimization
  • Whale/Grey-Wolf Optimization
  • Research Trends in recent nature-inspired Metaheuristics

This is an approximate list. We will introduce or omit topics as warranted by student interest and time.

Textbooks

Essentials of Metaheuristics – Sean Luke
Edition: Second
ISBN: 1300549629
Web Link: http://cs.gmu.edu/~sean/book/metaheuristics/
Cost: Available for free

Software Requirements

We will use the Julia programming language and Jupyter Notebooks.

Created 10/25/2023