Differences

This shows you the differences between two versions of the page.

Link to this comparison view

public:teaching-eecs215-f11-syllabus [2011/09/20 11:19]
athina
public:teaching-eecs215-f11-syllabus [2014/04/02 18:22]
Line 1: Line 1:
-====== EECS 215: Design and Analysis of Algorithms, Fall 2011 ====== 
- 
-{{page>​public:​teaching-eecs215-f11-nav&​nofooter&​noeditbtn}} 
- 
-<box rightBio>​ /​********************** Begin right column of the page ******************/​ 
-<​html><​h1>​Syllabus</​h1></​html>​ 
- 
-<​html><​h4>​Logistics</​h4></​html>​ 
-{| cellspacing="​5"​ 
-| style="​width:​100px"​ | **Instructor:​** || [[public:​markopoulou_home|Athina Markopoulou]] 
-|- 
-| **Lectures:​** || Tuesday and Thursday, 11:​00am-12:​20pm,​ [[https://​eee.uci.edu/​toolbox/​roomfinder/​class.php?​ccode=18410&​quarter=F11|PSCB 140]] 
-|- 
-| **Office Hours:** || Thu 3:30-5:30 in EH 4207  
-|- 
-| **Mailing List:** || 18410-F11@classes.uci.edu 
-|- 
-| **Messageboard:​** || [[https://​eee.uci.edu/​toolbox/​messageboard/​m11646/​|on EEE]]  
-|- 
-| valign="​top"​ | **Textbook:​** || [[http://​www.aw-bc.com/​info/​kleinberg/​index.html|"​Algorithm Design"​]] by J.Kleinberg and E.Tardos, Pearson ​ and Addison-Wesley. ​ (QA76.9.A43 K54 c.2006, on reserve in the Science Library.) 
-|- 
-| valign="​top"​ |**Additional Reading:** || [[http://​mitpress.mit.edu/​algorithms/​|"​Introduction to Algorithms"​]],​ Cormen, Leiserson, Rivest, and Stein, McGraw-Hill and MIT Press, 2001. (QA76.6.C662 2009 on reserve in the Science library.) 
-|- 
-| valign="​top"​ |**Prerequisites:​** || 
-• Familiarity with algorithms, data structures and discrete math, at undergraduate level.\\ 
-• Programming in python is useful for the optional programming assignments.\\ 
-|} 
- 
-{{:​public:​portal-break.png?​300x1 }}\\  /*** Separator ***/ 
-<​html><​h4>​Course Description</​h4></​html>​ 
- 
-<align justify>​Algorithms provide a powerful way of thinking about problems within and beyond computer science and engineering. The goal of this class is to train graduate students in (a) recognizing and formulating an algorithmic problem within a broader practical context (b) designing and (c) analyzing algorithms that solve the problem. The textbook will be instrumental in presenting the materials from this perspective. After an introduction (Ch.1), we will first review basic materials such as asymptotic growth rates and graphs (Ch.2-3). Second, we will cover four major algorithm design techniques: greedy algorithms, design and conquer, dynamic programming and network flow (following Ch. 4,5,6,7 respectively). ​ Third, we will discuss NP and computational intractability (described in Ch.8). ​ Time permitting, we will touch upon ways to effectively deal with NP-complete problems in practice, namely with  inputs that exhibit special structure, approximation algorithms, and local search algorithms (in Ch.10,11, and 12 respectively).</​align>​ 
- 
-<align justify>//​Note:// ​ The emphasis of the class will be on the design and analysis of algorithms. There are going to be a few optional programming assignments to help clarify the concepts, but programming is not the emphasis of this class.</​align>​ 
- 
-{{:​public:​portal-break.png?​300x1 }}\\  /*** Separator ***/ 
-<​html><​h4>​Deliverables and Grading</​h4></​html>​ 
-^ What                    ^ Grade %       ^ When                      ^ 
-| Homeworks ​              ​| ​ 30%          | ~bi-weekly ​               | 
-| Programming Assignments(*) |  +10%         | every 1-2 homeworks | 
-| Typing of Homeworks (*)    |  +5%          | | 
-| Midterm Exam            |  30%          | Thu, Oct 27th, in class      | 
-| Final Exam              |  40%          | Tue, Dec 6th, 10:​30-12:​30pm | 
- 
-(*) Optional. ​ 
- 
-{{:​public:​portal-break.png?​300x1 }}\\  /*** Separator ***/ 
-<​html><​h4>​Policies</​h4></​html>​ 
-    * //​Communication://​ Please post all class-related questions on the messageboard. __Avoid personal emails to the instructor!__ We will check the message board once a day and reply. Usually students have similar questions and everybody can benefit from the same answer. ​ 
-    * //​Homeworks://​ Homeworks will consist mostly of theoretical exercises. There are going to be __optional ​ programming assignments__ ​ for an extra +10% points (instructions to be posted later). The default format is to  hand-written homeworks. You can also type and submit them electronically for +5% bonus points. (In that case, here are more detailed [[https://​eee.uci.edu/​11f/​18410/​misc/​homeworkSample.pdf|instructions]] and here is the corresponding template [[https://​eee.uci.edu/​11f/​18410/​misc/​homeworkSample.tex|latex file]].) These extra points are computed out of the total grade, not out of each individual homework. 
-    * //Late policy:// __no late homeworks__ will be accepted. Solutions will be posted online shortly after the deadline. Homeworks not submitted by the deadline will get zero points. However, to accommodate for unforseen circumstances,​ your homework with the lowest grade (including 0 for a missing one) will be dropped. This means that //you can skip one homework// without asking permission. ​ 
-    * //​Collaboration://​ you are allowed to discuss with your classmates, but you are supposed to do your homework __individually__. If you work closely with somebody, please indicate their name on your homework. If we notice that two homeworks are identical, both students will get 0 grade; they will also be subject to the rules of UCI Academic Honesty Policy. 
- 
- 
-</​box>​