CMSI 2130 - Algorithms & Analysis

Professor Andrew Forney • Andrew.Forney[at]lmu.edu • Spring 2023

This course has been archived, so some portions may not be accessible any longer!


Welcome to CMSI-2130 8 / 23 / 23

If you're reading this then you've successfully found the course page for CMSI 2130! Check this page frequently for announcements that are relevant to the course, including notes, homework assignments, and practice problems.

First things first, please read through the course syllabus located here (or in the Materials tab above).


Lecture Notes
Date Lecture Subject
Lecture 12-2
11 / 16 / 23
Taking Notes from Jack and Jill
Local Search, Hill Climbing, Simulated Annealing, and Genetic Algorithms -- all in one quivering mass!

  Lecture Video (15-2)
  Lecture Video (15-1)
  Lecture Video (14-2)
  Lecture Video (14-1)
  Lecture Video (13-1)
  Lecture Video (12-2)
  Recitation (Week 15)
  Recitation (Week 14)
Lecture 11-2
11 / 9 / 23
Graphs are Constraining
Ordering and Structure heuristics for CSPs!

  Lecture Video (12-1)
  Recitation (Week 12)
Lecture 11-1
11 / 7 / 23
Turning up the AC
Filtering, constraint propagation, and AC-3 make their grand debut!

  Lecture Video (11-2)
  Lecture Video (11-1)
  Recitation (Week 11)
Lecture 10-2
11 / 2 / 23
Coloring Books for Computer Scientists
Introduction to Constraint Satisfaction Problems (CSPs): map coloring never looked so technical!

  Lecture Video (10-2)
  Recitation (Week 10)
Lecture 9-1
10 / 24 / 23
In Not So Many Words
Greedy programming gets its day in the sun with a look at compression and Huffman Coding!

  Lecture Video (9-2)
  Lecture Video (9-1)
  Recitation (Week 9)
Lecture 8-1
10 / 17 / 23
Blooming Imaginations
Bloom filters -- data structures meet probabilistic programming!

  Lecture Video (8-2)
  Lecture Video (8-1)
  Recitation (Week 8)
Lecture 7-1
10 / 10 / 23
The Red Squiggly Underline - A Biography
The magic behind many spelling correctors and checkers!

  Lecture Video (7-1)
  Recitation (Week 7)
Lecture 6-1
10 / 3 / 23
Changing from Changemaking
Another example of Dynamic Programming on the LCS problem -- good for comparison!

  Lecture Video (6-2)
  Lecture Video (6-1)
  Recitation (Week 6)
Lecture 5-1
9 / 26 / 23
From A* to Coinstar
Changemaking makes another appearance in this discussion of Dynamic Programming!

  Lecture Video (5-2)
  Lecture Video (5-1)
  Recitation (Week 5)
Lecture 3-2
9 / 14 / 23
Foiled Again!
Adversarial search and α-β pruning!

  Lecture Video (4-2)
  Lecture Video (4-1)
  Lecture Video (3-2)
  Recitation (Week 4)
  Recitation (Week 3)
Lecture 2-2
9 / 7 / 23
Here-istics
Best-First, Informed search, and heuristics (get it? heuristics here? hereistics?).

  Lecture Video (3-1)
  Lecture Video (2-2)
  Recitation (Week 2)
Lecture 1-1
8 / 29 / 23
Search and Ye Shall (Hopefully) Find
Problem solving, uninformed searches, and memoization!

  Lecture Video (2-1)
  Lecture Video (1-2)
  Lecture Video (1-1)
  Recitation (Week 1)