# Welcome to CSE 589 -- Applied Algorithms

#### 9/27/00

Welcome to CSE 589 -- Applied Algorithms

Course Goals

Other

Plan For Today

Algorithm Design Goals

Keeping Score: The RAM Model of Computation

Types of complexity

Big Oh Notation

Growth Rates, etc.

CS 15-251

The future belongs to the computer scientist who has

Course Content

A survey of fundamental theoretical ideas in Computer Science as they occur in a variety of important applications

Growth Rates

Recursion

Randomization

Hashing

Reduction

Parallel Versus Sequential Work

Dating

Private Communication

Factoring / Multiplication

An introduction to discrete mathematics

Count without counting: Estimate, Calculate, Analyze

Induction has many guises. Master their interrelationship.

Map Coloring

Effective problem solving, learning, and communication techniques

Exemplification: Try out a problem or solution on small examples.

Representation: Understand the relationship between different representations of the same information or idea

Modularity: Decompose a complex problem into simpler subproblems

Abstraction: Abstract away the inessential features of a problem

Refinement: The best solution comes from a process of repeatedly refining and inventing alternative solutions

PPT Slide

Similarity: A significant form of intellectual progress is to be able to classify and manipulate distinct objects with regard to a sense in which they are similar.

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

Appreciate Alternative Solutions To The Same Problem

Martial Arts 101

Scanning the brains of master problem solvers

Aside to university students

Aside to university students

PPT Slide

The Master Programmer

A case study.

Examples

Impatient Hacker (Novice Level Solution)

Performance Analysis: Counting Without Executing

“Expert” Hacker (Black Belt Level)

Comparing an input word with each of 70,000 dictionary entries takes about 15 seconds.

The master keeps trying to refine the solution.

Master Solution

Suppose the dictionary was the list below.

After each word, write its “signature” (sort its letters)

Sort by the signatures

Master Program

PPT Slide

PPT Slide

NAME: Preprocessing

The Mathematics Of 1950’s Dating: Who wins the battle of the sexes?

PPT Slide

PPT Slide

Dating Scenario

PPT Slide

There is more than one notion of what constitutes a “good” pairing.

PPT Slide

Rogue Couples

Why be with them when we can be with each other?

Stable Pairings

Stability is primary.

The study of stability will be the subject of the entire lecture.

Given a set of preference lists, how do we find a stable pairing?

Given a set of preference lists, how do we find a stable pairing?

Existence Question

PPT Slide

PPT Slide

An Instructive Variant: Roommate Problem

An Instructive Variant: Roommate Problem

An Instructive Variant: Roommate Problem

An Instructive Variant: Roommate Problem

Unstable roommates in perpetual motion.

Insight

Insight

Does the Traditional Marriage Algorithm always produce a stable pairing?

Does the Traditional Marriage Algorithm always produce a stable pairing?

Does TMA always terminate?

Lemma: No boy can be rejected by all the girls

Theorem: The TMA always terminates in at most n2 days

Great! We know that TMA will terminate and produce a pairing. But is it stable?

MAYBE Lemma: In TMA if on day i a girl says “maybe” to boy b, she is guaranteed to marry a husband that she likes at least as much as b

MAYBE Lemma: In TMA if on day i a girl says “maybe” to boy b, she is guaranteed to marry a husband that she likes at least as much as b

Corollary: Each girl will marry her absolute favorite of the boys who visit her during the TMA

Theorem: Let T be the paring produced by TMA. T is stable.

Opinion Poll

Forget TMA for a moment

The Optimal Girl

The Pessimal Girl

Dating Heaven and Hell

Dating Heaven and Hell

Dating Heaven and Hell

The Naked Mathematical Truth!

Theorem: TMA produces a male-optimal pairing

Some boy b got rejected by his optimal girl g because she said “maybe” to a preferred b*. b* likes g at least as much as his optimal girl.

Some boy b got rejected by his optimal girl g because she said “maybe” to a preferred b*. b* likes g at least as much as his optimal girl.

What proof technique did we just use?

What proof technique did we just use?

Theorem: The TMA pairing, T, is female-pessimal.

The largest, most successful dating service in the world uses a computer to run TMA !

“The Match”: Doctors and Medical Residencies

History

History

History

History

History

History Repeats Itself! NY TIMES, March 17, 1989

NY TIMES

Author: Steven Rudich and Anna Karlin

Email: karlin@cs.washington.edu