cs4234 optimization algorithms welcome!. cs4234 overview optimization algorithms gilbert/cs4234 ...
TRANSCRIPT
![Page 1: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/1.jpg)
CS4234Optimization Algorithms
Welcome!
![Page 2: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/2.jpg)
CS4234 Overview
Optimization Algorithmshttp://www.comp.nus.edu.sg/~gilbert/CS4234
Instructor: Seth GilbertOffice: COM2-323
Office hours: by appointment
![Page 3: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/3.jpg)
Optimization:Find the minimum/maximum…
Optimization Algorithms
![Page 4: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/4.jpg)
Optimization:Find the minimum/maximum:
Discrete: a collection of items
Optimization Algorithms
![Page 5: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/5.jpg)
Optimization:Find the minimum/maximum:
Discrete: a collection of items
Combinatorial: a collection of items
generated by counting, combining, and
enumerating.
Optimization Algorithms
![Page 6: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/6.jpg)
Optimization:Find the minimum/maximum:
Discrete: a collection of items
Combinatorial: a collection of items
generated by counting, combining, and
enumerating.
Examples:Graphs
Matroids
Similar structures…
Optimization Algorithms
![Page 7: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/7.jpg)
Find the “best” item in a large set of items:
Problem Set of items Size DifficultySearching List of integersLinear Easy
Shortest paths All paths in a graph Exponential Easy
Minimum spanning tree All spanning trees ExponentialEasy
Steiner tree All steiner trees Exponential Hard
Travelling salesman All possible tours Exponential Hard
Matching All possible matchings Exponential Easy
Bipartite vertex cover All possible covers Exponential Easy
Vertex cover All possible covers Exponential Hard
Maximum clique All possible subsets Exponential Very Hard
Combinatorial Optimization
![Page 8: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/8.jpg)
Find the “best” item in a large set of items:
Problem DifficultyMaintain student records Easy
Data compression Easy
Program halting problem Impossible
VLSI chip layout Hard
Exam timetable scheduling Hard
Job assignment problem Easy
Computer deadlock problem Easy
Finding patterns in a database Easy
Combinatorial Optimization
![Page 9: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/9.jpg)
Operations Research:How to make better decisions (e.g., maximize profit)
Project planning / critical path analysis
Facility location: where to open stores / plants
Floorplanning: layout of factory or computer chips
Supply chain management
Berth assignment problem (BAP): port management
Assignment problems (e.g., weapon target assignment)
Routing / transportation problems: buses, subways, trucking.
Airline ticket pricing
Combinatorial Optimization
![Page 10: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/10.jpg)
Optimization:Find the minimum/maximum:
Discrete: a collection of items
Combinatorial: a collection of items
generated by counting, combining, and
enumerating.
Continuous: given a function f(x), find the
vector x that maximizes f(x).
Optimization Algorithms
![Page 11: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/11.jpg)
Optimization Algorithms
![Page 12: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/12.jpg)
“If you need your software to run twice as fast, hire better programmers.
But if you need your software to run more than twice as fast, use a better algorithm.”
-- Software Lead at Microsoft
![Page 13: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/13.jpg)
“... pleasure has probably been the main goal all along.
But I hesitate to admit it, because computer scientists want to maintain their image as hard-working individuals who deserve high salaries... ”
-- D. E. Knuth
![Page 14: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/14.jpg)
“... pleasure has probably been the main goal all along.
But I hesitate to admit it, because computer scientists want to maintain their image as hard-working individuals who deserve high salaries... ”
-- D. E. Knuth
![Page 15: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/15.jpg)
Brand new class: – We can make this class what we want.
– Talk to me about your goals, interests, etc.
CS4234 : Optimization Algorithms
![Page 16: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/16.jpg)
Brand new class: – We can make this class what we want.
– Talk to me about your goals, interests, etc.
Where did this class come from?– CS5234: Combinatorial and Graph
Algorithms
– More general: all sorts of optimization (not only graphs).
– More specific: just optimization
CS4234 : Optimization Algorithms
![Page 17: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/17.jpg)
Target students:– Advanced (3rd or 4th year) undergraduates
– Interested in algorithms
– Interested in tools for solving hard problems
Prerequisites: – CS3230 (Analysis of Algorithms)
– Mathematical fundamentals
Optimization Algorithms
![Page 18: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/18.jpg)
Mid-term exam
October 6 In class
Final exam
November 25
Exams will be graded and returned.
CS4234 Overview
![Page 19: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/19.jpg)
Grading
40% Problem sets
25% Mid-term exam
35% Final exam
Problem sets
– 5-6 sets (about every 1-2 weeks)
– Focused on algorithm design and analysis.
CS4234 Overview
![Page 20: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/20.jpg)
Mini-Project
Small project
Idea: put together some of the different ideas we have used in the class.
Time scale: last 2-3 weeks of the semester.
CS4234 Overview
![Page 21: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/21.jpg)
Released today/tomorrow
Survey: On IVLE.
What is your background?
Not more than 10 minutes.
PS1: Released tomorrow.
CS4234 Overview
![Page 22: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/22.jpg)
Problem set grading
Simple scheme:
3 : excellent, perfect answer
2 : satisfactory, mostly right
1 : many mistakes / poorly written
0 : mostly wrong / not handed in
-1 : utter nonsense
CS4234 Overview
![Page 23: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/23.jpg)
What to submit:
Concise and precise answers: Solutions should be rigorous, containing all necessary detail, but no more.
Algorithm descriptions consist of: 1. Summary of results/claims.
2. Description of algorithm in English.3. Pseudocode, if helpful. 4. Worked example of algorithm. 5. Diagram / picture. 6. Proof of correctness and performance analysis.
CS4234 Overview
![Page 24: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/24.jpg)
How to draw pictures?
By hand:
Either submit hardcopy, or scan, or take a picture with your phone!
Or use a tablet / iPad…
Digitally: 1. xfig (ugh) 2. OmniGraffle (mac) 3. Powerpoint (hmmm)4. ???
CS4234 Overview
![Page 25: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/25.jpg)
Policy on plagiarism:
Do your work yourself: Your submission should be unique, unlike
anything else submitted, on the web, etc.
Discuss with other students: 1. Discuss general approach and techniques.2. Do not take notes.
3. Spend 30 minutes on facebook (or equiv.).4. Write up solution on your own. 5. List all collaborators.
Do not search for solutions on the web:Use web to learn techniques and to review
material from class.
CS4234 Overview
![Page 26: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/26.jpg)
Policy on plagiarism:
Penalized severely: First offense: minimum of one letter grade
lost on final grade for class (or referral to SoC disciplinary committee).
Second offense: F for the class and/or referral to SoC.
Do not copy/compare solutions!
CS4234 Overview
![Page 27: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/27.jpg)
Introduction to Algorithms– Cormen, Leiserson, Rivest, Stein
– Recommended…
Textbooks
![Page 28: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/28.jpg)
Algorithm Design– Kleinberg and Tardos
– Recommended…
Textbooks
![Page 29: CS4234 Optimization Algorithms Welcome!. CS4234 Overview Optimization Algorithms gilbert/CS4234 Instructor: Seth Gilbert](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649e595503460f94b52e40/html5/thumbnails/29.jpg)
Topics (tentative, TBD)
Introduction to combinatorial optimization Vertex cover, set cover, Steiner tree, TSP
Flows and matching Maximum flow, bipartite matching
Linear programming LPs, duality, relaxations, rounding
Continuous optimizationGradient descent, meta-heuristics
CS4234 Overview