605.747.81 - Evolutionary and Swarm Intelligence

Computer Science
Fall 2023

Description

Recently, principles from the biological sciences have motivated the study of alternative computational models and meta-heuristic approaches to problem solving. Proceeding from a machine learning perspective, this course explores how principles from theories of evolution, natural selection, and swarming behavior can be used to construct machines that exhibit nontrivial behavior. In particular, the course covers techniques from evolutionary computation and swarm intelligence for developing software agents capable of solving problems as members of a larger population of agents. Specific topics addressed include representation and schemata; selection, reproduction, and recombination; theoretical models of computational intelligence; optimal allocation of trials (i.e., bandit problems); search, optimization, and machine learning; evolution of programs; population and swarm dynamics; and emergent behavior. Students will participate in seminar discussions and will complete and present the results of an individual project.

Expanded Course Description

Prerequisites: 605.649 Introduction to Machine Learning and multi-variate calculus.

Instructor

Course Structure

Details on the course structure can be found in the Course Outline. Each course module runs for a period of seven (7) days, i.e., one week. Due dates for readings and other assignments are referred to by the day of the module week in which they are due. For example, if a reading assignment is to be completed by Day 3 and the module started on Monday, then the reading assignment should be completed by Wednesday or the 3rd day of the module. Please refer to the Course Outline for the specific start and end dates for each module in this course.

Course Topics

  1. Introduction
  2. Experimental Methods
  3. Simple Evolutionary Algorithms
  4. Evolutionary Optimization
  5. Evolutionary Reinforcement Learning
  6. Theory of Evolutionary Computation
  7. Self-Adapting Evolutionary Algorithms
  8. Swarm-Based Algorithms
  9. Multi-Population Algorithms
  10. Evolutionary Combinatorial Optimization
  11. Dynamic and Uncertain Environments
  12. Memetic Algorithms

Course Goals

This is a research-based course. Therefore, the primary goals of this course are to develop broad understanding of the issues in developing and analyzing modern evolutionary and swarm-based systems, and to develop a deeper understanding of at least one specific evolutionary computation or swarm intelligence topic through an in-depth research project.

Course Learning Outcomes (CLOs)

Textbooks

There is no single required textbook for this course; however, students will be required to read chapters from several books and papers on evolutionary computation. All of the required reading under the category of “Textbook” will be accessible through the Sheridan Libraries EReserves.

All students are also required to read and discuss a current research article each week. The required paper in each module is identified in the Assignments area of that module. These articles are either open access or can be accessed through the Sheridan Libraries proxy server to the identified journals.

Each student will also be required to read and critique a PhD dissertation. A list of acceptable dissertations can be found on the Evolutionary Computation PhD Dissertations page, available from the Course Information section of this course. If students need help accessing their desired dissertation, a copy can be obtained from the instructor.

Other Materials & Online Resources

A headset or microphone and speakers are required for this course. It is highly recommended that you purchase an inexpensive USB headset with microphone for your computer to optimize your participation in online sessions. USB headsets can be found online or in electronics stores for approximately $20–$30. A microphone and speakers built into your computer or a separate microphone and computer speakers are the minimum requirement.

A webcam is also required for this course.

Student Coursework Requirements

Assignment Guidelines and Expectations

Discussion Leadership

This course is formatted as a seminar in which research papers are read and discussed each week. To make the course more interesting and to encourage involvement by all students in the discussion, the seminar will be conducted such that the students will be responsible for presenting the weekly material.

A unit will be structured as follows. Each week, students will be required to read the topical content as well as the assigned paper. Both should be completed by Day Three of the current week. Starting that day, the assigned discussion leader will post a summary of the paper for the week and formulate questions (if one leader, five questions; if two leaders, three questions each) for class discussion. The summary and each question shall be posted in separate threads in the Discussions area appropriate for the week.

If more than one student is assigned to lead, then each student must submit a separate summary of the paper. The summary should include a review of the paper, a review of any related work, either identified in the paper or arising from a personal literature review, and a review of the issues and significance of the work reported. The summary shall be no more than five pages long (all inclusive of figures, tables, and references) single-spaced and shall be formatted either in the JAIR or JMLR paper format. Papers longer than 5 pages will be truncated down to the first 5 pages and graded as if subsequent material was not included. Mathematical expressions shall be entered using the math-editing features of your editing software and not screen-captured. Screen-captures figures or tables shall be high quality (i.e., not fuzzy) and referred to in the text via figure/table number and explained.

The evaluation criteria for paper summaries are as follows:

Note: Remember to cite the paper being summarized as a reference in your summary.

After the summary has been posted, the class will be called upon to engage in discussion of the questions raised by the discussion leader. Each student leader must also act as facilitator for all of the discussion threads whether corresponding to their question or not. Leaders are expected to post at least one facilitating post every day in every thread to advance the discussion. The instructor will participate as another member of the discussion, interjecting additional material as necessary to provide information on background and current research in the field. The instructor may also play a “devil’s advocate” role in order to provoke a reaction and further discussion. Student leaders should not take on this role.

To prepare for leading discussion, the leader shall read the paper very carefully, being sensitive to issues such as

The evaluation criteria for discussion leadership are as follows

Dissertation Critique

Fundamentally, this is a research-oriented course, and a large number of topics will be covered as a foundation for a researcher to apply in solving complex problems involving population-based algorithms. Furthermore, this course is oriented around introducing the student to current research in the field of population-based algorithms. Unfortunately, in a course such as this, it is difficult during a given week to explore any one topic in depth. Therefore, each student will be responsible for selecting a PhD dissertation from a list of several provided by the instructor and writing a critique of the research reported in that dissertation. Most of these dissertations are available through UMI ProQuest, which is accessible through the JHU Proxy server. Any that are difficult to find can be requested from the instructor.

The critique should include a summary of the research reported, a discussion of the major contributions claimed, and an assessment of the significance of those contributions and of the research itself. The critique should also include a brief literature review of the topic related to the thesis, discussion of relevant algorithms, and application areas for the research reported. Where appropriate, the critique should include a comparison with other issues discussed in class. When feasible, students are encouraged to select a dissertation that is related to their course projects.

The evaluation criteria for the critique are as follows:

Note: Remember to cite the dissertation being critiqued as a reference in your paper.

The critique shall be no more than ten (10) pages (single spaced), including all figures, tables, and references. Mathematical expressions shall be entered using the math-editing features of your editing software and not screen-captured. Screen-captures figures or tables shall be high quality (i.e., not fuzzy) and referred to in the text via figure/table number and explained. Critiques shall be formatted using either the JAIR format or the JMLR format. Note that these formats are essentially identical. Papers longer than 10 pages will be truncated down to the first 10 pages and graded as if subsequent material was not included.

Research Projects

As a semester long project, each student in this course will be responsible for completing an independent research project in evolutionary or swarm-based methods. This project will provide direct experience in proposing and executing a complete research project over the length of the course. The project can be experimental or theoretical but must focus on algorithms rather than application. If an experimental project is proposed, be prepared to include enough theoretical work to explain or motivate the work. If the project is theoretical, some experimentation should be included to demonstrate whatever results are obtained.

Each individual will prepare a short proposal describing the intended research. Some amount of research should be done to prepare the proposal. The proposal shall include a brief literature survey on the topic area, a clear statement of the problem to be solved (including a clear, testable hypothesis), and a description of the approach to be taken. All proposals will be formatted using either the JAIR or JMLR paper format. The proposal shall be no more than eight (8) pages in length using this format, including all tables, figures, and references. Proposals longer than 8 pages will be truncated down to the first 8 pages and graded as if subsequent material was not included. The proposal is due around the time typical for a midterm exam.

The evaluation criteria for proposals are as follows:

The actual execution of the project is left entirely at the discretion of the individual. Any computer and programming language may be used to support the project, and additional tools for analysis and presentation (e.g., MATLAB and excel) are encouraged. At the end of the project, each individual will be required to submit a comprehensive research report. This report will include background and discussion of previous work done related to the topic, a clear description of the problem to be solved (with testable hypothesis), discussion of the approach taken, in depth discussion of any algorithms used or developed, detailed presentation of the results obtained, discussion of the importance and implications of the results, directions for future work, and references. The author(s) should use the research papers read in this course as guidance for what research papers look like. Note that submitting code is not required.

All research reports shall be prepared using either the JAIR or JMLR paper format and shall be no more than fifteen (15) pages long (including all figures, tables, and references). Papers longer than 15 pages will be truncated down to the first 15 pages and graded as if subsequent material was not included.

The evaluation criteria for the report are as follows:

During the final weeks of the class, results of research projects will be presented in class. Each individual will give a short presentation of the research performed and the results achieved.

The format for the presentation will be similar to a research talk given at a conference, except that we will be using online tools (e.g., Zoom) to deliver the presentation. Presentations will give the class a chance to see other projects and to ask questions of the student. Note that the student is required to prepare visual aids (e.g., PowerPoint presentations) for their talks. Students are not required to submit slides. Presentations will be scheduled to last no more than one hour where the actual presentation will be no longer than 20 minutes (uninterrupted), followed by 30–40 minutes of question-and-answer discussion.

The evaluation criteria for the presentation are as follows:

Participation Grading Criteria

As a seminar, online discussion is a key component of this course. Each week, at least one student will be assigned as a discussion leader. Since discussion leadership is graded separately, that student's initial discussion questions will not count toward the class participation grade that week. The first week's discussion will be led by the instructor.

For the discussion, questions and comments will be posed, either by the discussion leader or the professor. For each question thread, students other than the discussion leader (leader is expected to post daily in each thread) are required to provide at least two substantive posts. Substantive posts either introduce new ideas to the discussion or provide a significant elaboration on a prior post. Simply responding, "I agree" or similar will not count.

Discussions will be weighed equally in the final grade. That grade will be based on the following approach. Students are required to make substantive contributions to all discussions over multiple days. Thus, each student is expected to post at least two substantive posts in response to each question thread, and these two posts must occur on different days. Furthermore, each student is expected to contribute posts over at least three days for the entire discussion. Note that students might want to consider posting more than the minimum in order to hedge against posts being deemed non-substantive. Given this requirement, participation grades will be calculated as follows:

40 x % questions with substantive posts +
30 x % questions with multiple posts on multiple days +
min {30, 10 x #days posted}

For example, if during Module 4, five questions are posed and student responds to four, has multiple responses provided over two days on two of them, and that student only posts over two days, the grade for that week would be 40 x 4/5 + 30 x 2/5 + 10 x 2 = 64/100. As another example, if during Module 8, six questions are posed and the student respond to all six, has multiple posts over two days on four, but that student posts over four days, the grade for that week would be 40 x 6/6 + 30 x 4/6 + min{30, 10 x 4} = 90.

Guidelines and Requirements for Substantive Posting

This course is structured in a way to incorporate in-depth seminar-like discussions of recently published research papers in the field. Successful discussions involve a mix of quantity and quality in the posts. The minimal quantity requirements are specified elsewhere; here we focus on what constitutes substantive posting in a seminar discussion (and what does not).

Ultimately, the extent to which a post extends a discussion is the primary criterion for determining if it is substantive. Here are properties of a substantive post.

Here are properties of non-substantive posts that are still useful.

Here are properties of non-substantive posts that either do not add to the discussion or detract from the discussion.

For grading purposes, the emphasis is being placed on the substantive posts while still recognizing that some non-substantive posts are still useful in advancing the discussion. These latter posts are appreciated but are not counted in the grade.

In general, discussion posts should be regarded as mini-essays and be written with the appropriate essay structure in mind. As a rule of thumb, the starting point for such a substantive post is one that presents a main idea (topic sentence) followed by several statements supporting that idea (generally 3-5). Multiple paragraphs may be necessary to make the point. One or two sentence posts are rarely substantive. Note that taking a multi-paragraph post and breaking it into multiple posts will only receive credit as if it was a single post.

Grading Policy

Grading is based on online asynchronous discussions, discussion leadership, ability to report on progress in the field through oral presentation and written critique, and the ability of the student to design and implement a research project. Students will be responsible for preparing a summary of the research papers the lead discussion on for use by the class and then leading class discussion on the paper. Each student will also conduct a research project, documented with a formal, technical paper describing the experimental method and results. Final grades will be determined by the following weighting:

A grade of A indicates achievement of consistent excellence and distinction throughout the course—that is, conspicuous excellence in all aspects of assignments and discussion in every week. A grade of B indicates work that meets all course requirements on a level appropriate for graduate academic work. These criteria apply to both undergraduates and graduate students taking the course.

EP uses a +/- grading system (see “Grading System”, Graduate Programs catalog, p. 10).

 94-100 A
 90-93 A-
 87-89 B+
 83-86 B
 80-82 B-
 70-79 C
 <69 F


Final grades will be determined by the following weighting:

Item% of Grade
Discussion Paper Summary10%
Discussion Leadership10%
Dissertation Critique15%
Project Proposal10%
Project Report20%
Project Presentation15%
Class (Discussion) Participation20%

Course Policies

Late Submission Policy

Being that we are all working professionals, and time management is of critical importance, the purpose of this document is to lay out the course policy with respect to completing course assignments.

The default policy of this course is that no late submissions will be accepted.

Note that I recognize exceptional circumstances may arise, and I am willing to work with students when they do. Therefore, the following additional requirements are put in place:

  1. If you must travel for business and will have limited Internet connectivity, then you must notify the instructor at least one week prior to travel to make arrangements for handling assignments. Failure to provide this advanced notice will result in all due dates being enforced.
  2. If you are traveling on vacation, then all due dates remain enforced. Personal travel is not an excuse to relax the due dates.
  3. If there is a family emergency (e.g., a death in the family or a serious illness), then you must notify the instructor as soon as possible to make arrangements for handling the assignments. 
  4. If you become personally ill, then it is important for you to take care of your health; however, since we are not meeting in person in a classroom, meaning that spread of disease is not an issue, only illnesses or injuries that require professional medical attention will receive special handling. Your advised to keep the instructor informed as best you can should such situations arise.
  5. Under no circumstances will time management issues result in a relaxation of due dates. Poor time management is never an acceptable excuse.
  6. Special accommodations are available for students who register a disability with the university. These accommodations will be worked out with SDS.

Policy on Using AI Large Language Models

This class will strive to create an environment that fosters learning, critical thinking, effective communication, and technology development. To achieve these goals, using AI-based tools such as ChatGPT, Co-Pilot, or similar are prohibited in this course.

While ChatGPT and other large language models can be powerful and useful tools in certain contexts, relying on them for this course undermines the learning objectives. You are being trained to understand research in population algorithms, rather than to become a user of AI or ML tools. This approach involves developing skills in independent thinking, problem-solving, and engagement with the subject matter. By restricting the use of large language models, your knowledge, creativity, and critical analysis will be used to complete all assignments and actively participate in class discussions.

It is important to note that this requirement applies to all aspects of the course, including writing assignments, discussion assignments, projects, and any form of communication related to the course content. Any use of AI large language models, including ChatGPT, during these activities will be considered a violation in the student code of conduct and will be reported as academic misconduct.

Questions about these policies should be directed to the instructor.

Academic Policies

Deadlines for Adding, Dropping and Withdrawing from Courses

Students may add a course up to one week after the start of the term for that particular course. Students may drop courses according to the drop deadlines outlined in the EP academic calendar (https://ep.jhu.edu/student-services/academic-calendar/). Between the 6th week of the class and prior to the final withdrawal deadline, a student may withdraw from a course with a W on their academic record. A record of the course will remain on the academic record with a W appearing in the grade column to indicate that the student registered and withdrew from the course.

Academic Misconduct Policy

All students are required to read, know, and comply with the Johns Hopkins University Krieger School of Arts and Sciences (KSAS) / Whiting School of Engineering (WSE) Procedures for Handling Allegations of Misconduct by Full-Time and Part-Time Graduate Students.

This policy prohibits academic misconduct, including but not limited to the following: cheating or facilitating cheating; plagiarism; reuse of assignments; unauthorized collaboration; alteration of graded assignments; and unfair competition. Course materials (old assignments, texts, or examinations, etc.) should not be shared unless authorized by the course instructor. Any questions related to this policy should be directed to EP’s academic integrity officer at ep-academic-integrity@jhu.edu.

Students with Disabilities - Accommodations and Accessibility

Johns Hopkins University values diversity and inclusion. We are committed to providing welcoming, equitable, and accessible educational experiences for all students. Students with disabilities (including those with psychological conditions, medical conditions and temporary disabilities) can request accommodations for this course by providing an Accommodation Letter issued by Student Disability Services (SDS). Please request accommodations for this course as early as possible to provide time for effective communication and arrangements.

For further information or to start the process of requesting accommodations, please contact Student Disability Services at Engineering for Professionals, ep-disability-svcs@jhu.edu.

Student Conduct Code

The fundamental purpose of the JHU regulation of student conduct is to promote and to protect the health, safety, welfare, property, and rights of all members of the University community as well as to promote the orderly operation of the University and to safeguard its property and facilities. As members of the University community, students accept certain responsibilities which support the educational mission and create an environment in which all students are afforded the same opportunity to succeed academically. 

For a full description of the code please visit the following website: https://studentaffairs.jhu.edu/policies-guidelines/student-code/

Classroom Climate

JHU is committed to creating a classroom environment that values the diversity of experiences and perspectives that all students bring. Everyone has the right to be treated with dignity and respect. Fostering an inclusive climate is important. Research and experience show that students who interact with peers who are different from themselves learn new things and experience tangible educational outcomes. At no time in this learning process should someone be singled out or treated unequally on the basis of any seen or unseen part of their identity. 
 
If you have concerns in this course about harassment, discrimination, or any unequal treatment, or if you seek accommodations or resources, please reach out to the course instructor directly. Reporting will never impact your course grade. You may also share concerns with your program chair, the Assistant Dean for Diversity and Inclusion, or the Office of Institutional Equity. In handling reports, people will protect your privacy as much as possible, but faculty and staff are required to officially report information for some cases (e.g. sexual harassment).

Course Auditing

When a student enrolls in an EP course with “audit” status, the student must reach an understanding with the instructor as to what is required to earn the “audit.” If the student does not meet those expectations, the instructor must notify the EP Registration Team [EP-Registration@exchange.johnshopkins.edu] in order for the student to be retroactively dropped or withdrawn from the course (depending on when the "audit" was requested and in accordance with EP registration deadlines). All lecture content will remain accessible to auditing students, but access to all other course material is left to the discretion of the instructor.