Deterministic Optimization

3.72 / 5 rating3.87 / 5 difficulty13.28 hrs / week

Quick Facts and Resources

Something missing or incorrect? Tell us more.

Name
Deterministic Optimization
Listed As
ISYE-6669
Credit Hours
3
Available to
CS and AN students
Description
An introduction to deterministic optimization methodologies including approaches from linear, discrete, and nonlinear optimization including algorithms and computations. Applications will be introduced as appropriate.
Syllabus
Syllabus not found.
Textbooks
No textbooks found.
  • zPMpZ4qbv+TFymmd8hVL2g==2024-03-28T12:11:03Zfall 2023

    Difficulty: If you are good at math (especially linear algebra), this course will be pretty easy. I spent about 10hr/week, but I can def see why others would spend a lot more. Tests are very tricky. So learn your concepts during HW well. the HW grades are "curved" since they are student peer graded. I ended up with an A, but barely.

    How to do well: Like I said, HW are "curved" but the tests are not. Really make sure you learn the concepts from the solutions published after the HW given. Also studying the previous tests help, which they publish fir studying materials.

    What did I learn and how was it: I did learn quite a bit. Given a situation that is deterministic, you basically learn how to model and optimize the system in various settings. The lectures and the HW are little dry, but honestly, as long as I learned in depth, that is all I cared about.

    Complaint: As other people say... HW to exam proportion is wayyyyy out of what they are supposed to be. Make sure that the HW's are TA graded, so that they are not "curved". Also HW is where the real learning happens, so students should spend a lot of time on HW (which is not the case since they are "curved") and increase the HW weights on the final grade.

    Rating: 4 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • 1SHifQGl0KBH4r9pKQqjzA==2023-03-14T02:06:51Zspring 2023

    Disclaimer: I withdrew from the course after getting a 50% on the first and only midterm but I had 90-100s on the 8 weekly homework going in to the exam. I'm 6 courses into the OMSA degree and I have a 4.0. This is the first time I've withdrawn from an OMSA course but I'm happy I did.

    Note: I have a PhD so I'm not GPA motivated. I withdrew because I didn't feel like the time I was investing was going to yield the returns I had hoped for when I enrolled in the course. I was going to have to double down to salvage the semester and since I wasn't really happy, and from the looks of the second half of the course, that wasn't going to improve, I cut my losses.

    My biggest beef with this course is it is organized in a way that is antithetical to how I teach undergraduate and graduate students. 75% of your grade is determined by two multiple choice exams, full stop. Best practice is to give students as many ways as possible to demonstrate their learning and many other courses in OMSA excel at this. The exam window is also bracketed by two homework assignments. In general I always try and give students a few days to study and then relax pre-post exam time.

    I had a scientific conference before/during the exam window. If you have anything on your calendar that will interfere with your studying around exam time - wait and take it another term.

    I also think the course organizers deserve a knock for being a little lazy. There are many little errors in the slides that don't get fixed and they are still using lectures from a Prof who passed away several years ago. Granted, his lecture material was the highlight of the first half of the course as it really was nice to brush up on the math.

    I found the homeworks to be intellectually stimulating and I learned a great deal by doing them. Yet HW only counts for the remaining 25% of your grade. The course and the exams aren't really focused at all on practical applications. As this is a theory/pure math heavy course, if you don't enjoy looking at equations or sets and figuring out whether they are convex, compact, bounded etc. I'm not sure you'll enjoy it.

    Rating: 2 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • y+uCCK2uEQQzRvMwdPTGEQ==2023-01-08T16:00:18Zfall 2022

    TL;DR - A great, if jam-packed, fundamental course with a good TA team but an imbalanced homework/exam weighting scheme.

    Me: OMSA (6th course) with intermediate Python knowledge and undergrad experience with optimization (but that was a long time ago lol).

    --Pacing-- When folks here and on reddit say this course is a grind, I found it to be TRUE:

    • two topic areas covered per week that anywhere from 3 - 6 videos per (avg. 10min length),
    • weekly homeworks (not too bad),
    • and two exams (midterm was very difficult, final was not as bad due to the provided practice exam materials)

    --Content-- It's a lot of material to take in, I'd say on par or more than Regression. The topics start off as more abstract to set the stage (e.g. set theory) and then become more process/algorithm-based (e.g. Simplex, column generation, branch & bound).

    The knowledge checks, and to a lesser degree the homeworks, are similar to what you'll find on the midterm and final. So I found it was a good balance of memorizing versus learning/applying.

    --Course Faculty-- Very responsive TA team and good communication every week. Office Hours were held something like three times a week; I didn't attend them but the Zoom videos get posted later for your reference!

    --Grading Balance-- As many others have said before, I did not like that the homeworks were weighted so little versus the midterm/final which were the large majority of your grade. However, I found this to be aligned with how much work went into them - you can get a 90-100 on each homework by spending only a couple hours on them, but the midterm/final require a lot more time in prep.

    --Tools for Success-- Lecture videos, knowledge checks, and critically reviewing the homework solutions will set you up for success. Don't be discouraged by the difficulty of the midterm, as the final was a bit easier.

    This is a great OMSA course for its content. Optimization underlies almost everything we touch within the OMSA program so I think at least understanding what's going on will benefit our education/career.

    Rating: 4 / 5Difficulty: 5 / 5Workload: 15 hours / week

  • ZJCOnmbLcv7CD0PVrlb70A==2022-12-23T17:16:08Zfall 2022

    I did poorly in this class, but I really liked the material. So if you're unsure about taking the class, read on, I'm trying hard to be fair. This is my 9th class.

    The content of this course is very interesting. I bought the book recommended for the class and am still working through it. Of all the courses in the OMSA, this has to be one of the more interesting courses in terms of material. It's a lot of material too.

    This class is designed for students continuing their education directly after their bachelors. Expect a few eclectic problems requiring some obscure math rules taught in Linear Algebra and Calculus. I wasn't strong in linear algebra and it's been a while since calculus, and I suffered for it. It is very possible to get a decent grade while still lacking in the prerequisites, you'll just have to put in extra time.

    There is not enough teaching material for this class. It is very much set up for self learning. Here's a topic, go learn it, you'll not get instructed here. I spent a lot of time studying material from other universities, which was frustrating, because I busted my butt to get into GT. If I wanted University of Arizona material, I would have gone there.

    Perhaps most frustrating was the fact that this class is academic rather than practical which is so removed from reality that much of what was covered is wasted. It's great that I can do simplex by hand now, but that has 0 value in the real world. There was very little application of the material. I was expecting more application. This really makes the class less valuable since it is not targeted at professionals applying new skills, but academics learning new theory. This is my biggest criticism.

    Lastly, I'm just not a fan of courses where 75% of the grade is determined by 2 exams. It adds unnecessary stress.

    Rating: 2 / 5Difficulty: 5 / 5Workload: 25 hours / week

  • gXIsQ5Mcncwm26FFWnqdWQ==2022-11-27T14:58:02Zspring 2022

    Pretty decent course, builds up the fundamentals of optimisation. I took this course with Simulation which was pretty much manageable. Overleaf was very helpful in the assignments and cheatsheets.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • Georgia Tech Student2022-05-05T15:32:27Zspring 2022

    Background: OMSA c-track, 7th course

    I found this to be a good course and the content was pretty interesting. There was some weird mix-up with the syllabus during spring break this term (I hope this gets corrected for future iterations) but overall the course functioned smoothly. I think the course could benefit a bit from upping on the difficulty of some of the HW questions. My background is in CS so I don't have a super strong math background but was able to survive without much of a problem as I had taken math courses during undergrad (though over 5 yrs ago). That being said, before enrolling I would recommend having working knowledge of partial derivatives, simple set notation, and basic linear algebra.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • Georgia Tech Student2022-04-21T16:36:25Zspring 2022

    This class is just a ton of information almost constantly coming at you week after week. Homeworks every week even during the midterm week, but you get to drop your 2 lowest scores which is helpful. I found the material, especially in the first half, pretty interesting and the lectures were very good. But the 2nd half the material gets overwhelming and less interesting, for me at least, and it was pretty difficult to absorb and understand everything coming week after week. Also felt like the lectures weren't as helpful as they were in the first half in explaining and going over the material for comprehension.

    I feel like this class suffers from trying to teach you everything very fast instead of slowing down and making sure topics and material are getting learned and understood. I think if I took this as a solo class I might have had more time each week to dive into some of the material I was struggling with, but found it very challenging taking it along with another class.

    Rating: 2 / 5Difficulty: 4 / 5Workload: 8 hours / week

  • Georgia Tech Student2022-04-15T02:21:07Zspring 2022

    To the person (https://omscentral.com/review/-N-8m7zHV9Q-OUfcgkr2) who called out my review - First of all don't assume my gender. Secondly, if you actually read my review, you would have gleaned that I was specifically referring to quality control when the original content was created as I did mention the content cannot be updated for a variety of reasons, without getting into the specifics. I don't think there is anything overly critical in expecting video and slide content is not littered with mistakes.

    Next time, I suggest you actually read a review to understand it rather than just respond!

    Rating: 1 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2022-04-14T17:55:19Zspring 2022

    The content of the course was interesting and I feel like I learned a decent amount, however there are still a lot of frustrations I have with it.

    First, if you take this course be prepared for a math heavy course without much coding. And be very comfortable with linear algebra and all the notation that comes with it, because it is definitely assumed that you've got decent foundation with it.

    You have homeworks every week and ungraded knowledge checks which help you keep pace, the exams are relatively fair compared to the material. The lectures themselves are generally useful but I struggled a bit with them since they're very notation heavy and many times the instructors go over concepts without really providing examples. There are also numerous errors in the slides/lectures and I understand this is due to 2 of the instructors being no longer at GT, but it is still frustrating to be confused at a slide which is just wrong until a Piazza post clarifies it.

    The head TA, Kristina, was really good though and very responsive. Feel like a lot of the term I was learning from her writeups as much as the lecture material.

    Rating: 3 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • Georgia Tech Student2022-04-11T14:38:28Zspring 2022

    I prepared myself with all the prerequisites and still this course turned out to be so difficult. The course revolves around different optimization techniques and honestly, it has become very difficult to keep track of the all the techniques in the 13th week of the semester. I feel there's more preparatory work needed before jumping into this course which the Professor should mention in the prerequisites. A lot of lectures seemed pretty abstract and out of touch with the preceding lectures. After this course I am saying good bye to my perfect score of 4.0 :)

    Rating: 2 / 5Difficulty: 5 / 5Workload: 18 hours / week

  • Georgia Tech Student2022-04-08T11:33:14Zspring 2022

    I am amazed how this course has an average rating >4. This was by far the worst course in my three semesters of OMSA and right up there with one of the worst courses I have taken period. There are so many issues with it, so let me highlight those:

    1. Course content: Lecture videos and slides are chock-full of errors and typos. I understand that the co-instructors cannot update the content for a variety of reasons. However, I am surprised that there was no quality control in place for when the original content was created and uploaded. Given that this is something that hundreds of students would use over many years, a little effort into QCing the content wouldn't have been a complete waste of time and just shows a general lack of apathy towards students.

    2. Course structure: The mismatch between time spent on homeworks vs exams and the grade distribution for each is just daft. You can put in tons of effort for each homework and make a couple of mistakes in the exam and this will completely destroy your grade.

    3. Course Structure around spring/fall break: The course literally makes your life hell in the week leading up to break where you have just 3 days to watch videos, do knowledge checks, and complete the homework. Note, you do this while having a mid-term released in the same week. What's even better is the spring break is a misnomer for this course. We had a homework due on the Saturday of spring break week, so in reality you don't have a break with this course. A little effort into restructuring would have done wonders. Also note, you can skip two homeworks during the semester, but skipping a homework will bite you later as you'll probably be weak in that content. Besides, skipping homework is meant to help you when you have an emergency/illness, etc., not because the course has unreasonable deadlines for part-time students.

    4. Syllabus layout: The course keeps jumping from one topic to another and the lectures don't spend any time up front talking about how various topics will be introduced and how they will build on one another. Just seems haphazard.

    5. Instruction: In the semester I took the course, the instructor was virtually non-existent, be it office hours, piazza or otherwise. There's no point putting the instructor's name on the course if everything is handled by the TAs. The TAs are generally very good and some of the office hours were extremely well put together.

    6. Homework and questions structure: Most of the homework as well as exam questions default to the trick or challenging variety, before even one can have a firm grasp of the basic concept. The lecture videos often don't have a concrete or detailed enough example and the homework has students working on a corner case problem, so I found myself using other resources to truly develop a basic understanding of various concepts.

    Sadly, this is one of those courses where the old adage "You get what you pay for" truly holds.

    Rating: 1 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2022-03-10T16:14:55Zspring 2022

    The course is HEAVILY theory based on set theory, convex/concave functions, memorization of theory principles, and no calculator/graphing tools available. If you are comfortable with your understanding of matrices to the highest level and can visualize complex functions then this class is for you.

    Rating: 2 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2021-12-15T22:11:22Zfall 2021

    I can't really add much with this review that others haven't already covered, but I'll do my best. You should be comfortable in your prereq's prior to taking this course. Most importantly, be very comfortable with linear algebra, specifically matrix notation and partitioning. And be comfortable with some basic calculus and partial derivatives.

    As has been mentioned, the lectures are excellent. The homework does a great job of reinforcing the material taught in the lectures. And the TA's are very helpful as well. If you're interested in the OMSA CS track or any of the ML oriented classes in OMSA (CDA, HDDA, DL, RL, etc...) you can't go wrong taking this class. I was dumb and took CDA and HDDA before this class... wish I'd taken this first. Optimization is super foundational and profound knowledge to get for AI/ML and I feel that I got a lot out of this class and left with a much better understanding of how optimization works under the hood. That's the most important thing.

    Ok... so the exams. I did well on the exams (and studied hard for them), but I do agree with the complaints that they are a bit unfair. I'm not someone with a photographic memory, and I don't think knowing things like whether the sin(x) chart is 0 at pi or 1 at pi is "prerequisite knowledge"... that's just memorization let's be honest. There's a few questions where it just comes down to having certain concepts or equations memorized. The reason a lot of other classes allow cheat sheets for exams isn't to make them easier, it's so they can test you on the deeper aspects of the material that isn't just having equations memorized. I also think the homework, while pretty solid for helping you understand the material taught in the lectures, does a pretty poor job of preparing you for the questions you'll see in the exams. One of the hardest things about the exams is I feel like I didn't get adequate practice solving the types of problems that were on the exams prior to taking them. The practice exams are very helpful, would definitely recommend doing those and the knowledge checks, but that's pretty much all the practice you're gonna get. Having said that, the exams DO test your understanding of the material at a deeper level, and you WILL learn more about the material and optimization by studying hard for them. I think they could use some tweaks, and could be a smaller portion of your grade, but I'm not necessarily upset that I had to take them.

    Don't let the exams/gpa scare you away from this class, it's really really good content that I think most students would find interesting.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 14 hours / week

  • Georgia Tech Student2021-12-08T22:05:54Zfall 2021

    I took this class because I love the subject matter, not because it would be easy. It's definitely not. Homework outcome I was pleased with: I got out exactly the effort I put in and the assignments furthered my understanding very nicely. However, I am terrible on strictly theoretical exams with no cheatsheets. But I knew that going in. I am still glad I took this course.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 13 hours / week

  • Georgia Tech Student2021-12-01T13:49:00Zfall 2021

    If every week you watch the lectures, take notes, and make an honest effort to complete the homework, this course is manageable. As many have stated, the midterm and final is a big chunk of your grade and they are tough, but the final grade is curved.

    My suspicion is the people who have the hardest time with this course either did not have the necessary prerequisites, or are in the habit of relaxing during off-weeks then cramming right before things are due. I want to stress again - being consistent every week is key for your success in this class.

    The lecture materials are some of the best I've seen in OMSA and the supporting TAs are quick to address problems on Piazza. Overall I'm very happy i took this class: it has given me the necessary framework for thinking about optimizations, which appear in almost all cases where statistical learning is used (among others).

    Rating: 4 / 5Difficulty: 3 / 5Workload: 15 hours / week

  • Georgia Tech Student2021-11-25T20:20:41Zfall 2021

    It's a unique course dedicated to optimization concepts, and a good place to learn some mathematical tricks and tools for it. The lectures are phenomenal. I try to take thorough notes. The anxiety you get from studying for the midterm/final which takes up 75% of the course is unreal. It forces you to have a very clear understanding. Very challenging.

    Rating: 5 / 5Difficulty: 5 / 5Workload: 90 hours / week

  • Georgia Tech Student2021-11-14T23:23:05Zfall 2021

    The lectures are very good. The piazza help is solid.

    But...I will never understand the grading design of classes like this. You spend hours on homework every week, do well on those, and then have your first test in late October wipe it out. I have a strong math background. I remember my linear algebra pretty well, thank you very much. But having pretty deep connections dropped on you in a 90 minute test with 30% of your grade on the line is...frustrating.

    I did pretty well on the practice test and knowledge checks we were given to prepare. Then I did average on the midterm, which would be fine, except the average was a 69. Now I'm trying to pound out my homeworks in this and my other classes just so I can give myself as much time as possible to memorize formulas for the final (rather than concepts, no matter what class staff says), that ultimately I'll end up forgetting by mid January anyways.

    This is just not a conducive set up to learn IMO, but pointing this out gets you a round of cheers of "This is Georgia Tech, it's supposed to be hard!"

    Things being hard for the sake of it is not valuable.

    Rating: 2 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • Georgia Tech Student2021-10-31T10:30:07Zfall 2021

    So I've decided to write this review because I've seen a lot of complaints about this course on piazza and here. I think a lot of the complaints are made by people who do not take the prerequisites seriously. You need to be able to do linear algebra and high school math. You need basic calculus. If you are not strong on the stated prerequisite then that's on you, don't complain afterwards that you don't remember how to find the inverse of a 2x2 matrix by hand or differentiate a simple function by hand or you can't remember what the sine curve or exponential curve looks like... That's why prerequisites are listed. Please ensure that you have the prerequisite knowledge before doing a course. This course is like any typical math course. You must UNDERSTAND the theorems and definitions in order to apply them. You are tested on subtleties of those theorems and definitions, and subtlety is key... You must know the conditions under which these theorems hold... otherwise you may try to apply them incorrectly and get the wrong results in real life...or not understand why you are not getting results. This is the same as every math course I've ever taken. The lecture videos are great and I haven't had to do any outside reading to understand them. The homework is also very helpful in building and reinforcing understanding. This is my favourite class of the program so far and I wish there was a part 2 for more advanced topics.

    Rating: 5 / 5Difficulty: 2 / 5Workload: 10 hours / week

  • Georgia Tech Student2021-10-18T19:26:19Zfall 2021

    Top notch! (And I don't say that often ;)

    I decided to take optimization in addition to simulation—and I am glad I did. In my opinion, it is the best course in OMSA program. Superb lectures; clear and organized content; informative & very useful knowledge checks; relevant and thought-provoking homework; super knowledgeable, supportive, and responsible TA team (really great!); helpful practice exams

    Note: Midterm 1 class average was a D. This is by no means an easy class. You do not get notes or calculator for exam.

    Feedback: (1) Exams are heavily weighted despite spending a significant amount of time and effort on HW's. I would like to see this changed to be more reflective of the effort HW requires (perhaps more weight to HW and/or having the knowledge checks worth points), (2) Allow calculators, (3) Allow more than 1-sheet of blank paper for exam

    This felt like a true graduate course. It was quality and so well executed. Take note other OMSA courses!

    Rating: 5 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • Georgia Tech Student2021-05-15T11:28:48Zspring 2021

    This is a very well structured and managed course. Lecture videos and content are of high standard. Only drawback is that the weekly assignments are peer-reviewed. Sometimes, the scores are given without useful comments/feedback.

    Rating: 5 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • Georgia Tech Student2021-05-13T21:12:17Zsummer 2021

    About me: OMSA Program, 4th semester

    Strong python, weak math

    Grade: B

    I look back on this class mostly through the grading. 75% of the grade comes from the combined scores of the midterm and final. Given that, their content does not directly overlap with the homework which is what you will spend the majority of your time on and is only worth 25% of the grade which makes their scores very trivial. The lectures are very good and break down the material step by step, which will prepare you for the homework. However, this makes up probably a third of what you can expect on the exams. I think this is because the computations are very intensive and perhaps the staff feel they are unfair for exams. As someone who focuses more on application as opposed to theory, this steered me in the wrong direction for exam prep. I scored 19/30 on the midterm and was shooting for a very low score to pass and be done with the class. Mercifully, the final was very closely aligned with the practice final that was provided and I was able to get a B overall after the curve (up from ~76%).

    I think the material is important on a high level but it’s hard not to consider this almost a pure math class. If that’s your thing, you’ll excel here. If you dislike pure theory like me, I would say that this class provides more application than Simulation at least for the Operations elective requirement.

    Rating: 3 / 5Difficulty: 3 / 5Workload: 5 hours / week

  • Georgia Tech Student2021-05-10T01:36:26Zspring 2021

    I took this course in Spring of 2021, combining it with two additional courses, including CSE6242 (Data and Visual Analytics). I certainly found this most difficult, but most enjoyable course I have taken since I started this program. Personally, I would rate this more difficult than the infamous CSE6242.

    Like many other courses, there are weekly videos which I think are incredibly well done. Obviously you will need some good knowledge of mathematics, especially linear algebra and real analysis, to understand perfectly well most of what’s going on in the videos. However, even with general mathematics knowledge, you could still understand with little effort. I found the professors incredibly engaging. The videos attempt to explain the concepts in the friendliest terms. They also explain conceptually what many of the maths notations or formulations mean. I thought they really put genuine effort into making these videos accessible.

    Each week you get a homework, which often help to illuminate the concepts from the lectures. The homeworks, in my opinion, are just absolutely brilliant. A lot of thought certainly went into making those homeworks. The sad thing is that they are all only worth 25% of the total grade. The midterm is worth 35% and the final 40%. As good as this course is, it is quite a sad reality that better effort has not been put into the grading format. The midterm and final are multiple-choice questions that just seek to trick you. You get questions with words like “may”, “always”, etc., which if you miss could be the deciding factor between getting a point or not. As you may have figured, each point in the midterm or final are indeed quite weighty.

    Personally, I found the course to be of medium difficulty. Naturally, the student’s background will determine mostly how they find this course. But that shouldn’t remove from the course’s wholesomeness. As someone who had zero exposure to deterministic optimization course before taking this one, I struggled a bit in the earlier parts of the course, but settled in comfortably towards the later part. At the moment, I am sitting on an marginal A.

    Rating: 5 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • Georgia Tech Student2021-05-08T01:54:08Zspring 2021

    As someone with a weak math background it was a very hard and stressful, but ultimately very worthwhile class. If you don’t care about the possible hit to your GPA, definitely take it.

    Homework is due every week which account for only 25% of your grade, while as other reviews mentioned 60 M/C exam questions account for 75%, so I felt the grade distribution wasn’t exactly fair for the amount of work we have to put in.

    Going in I had very weak linear algebra knowledge (quickly went through Strang’s MIT class beforehand) and pretty much no multivariate calc knowledge. While a lot of people say you should be a master in linear algebra to take this course (and it’s true if you really want to understand the material on a deeper level), I was still able to get a good grade in the class.

    Lectures are very well done and explain concepts well. Homeworks do a great job in reinforcing the concepts, but I felt you needed to do a bit of research outside the class to figure some things out. TA’s can be a hit or miss. Most are helpful and do a good job (shoutout to Kristina, she’s everywhere answering questions!) while a couple do their best to give you as little information as possible. There are some errors and differences in lectures vs slides but I can understand it’s difficult to go back and re-record things. Again, I felt the proportion of your grade from exams wasn’t fair, but they provide practice midterms which help a lot. Go through it multiple times along with knowledge checks to really drill the concepts down.

    Overall highly recommend. If you don’t have the strongest math background you’ll still survive though you’ll have to suffer a bit more to get through it.

    Rating: 5 / 5Difficulty: 5 / 5Workload: 15 hours / week

  • Georgia Tech Student2021-05-06T19:22:44Zspring 2021

    Great Class. Broad overview of optimization hitting a little bit of everything. Exams are tough being only 60 questions worth 75% of the grade (Only reason I rate this hard, otherwise its medium to easy). HW's are interesting but there's quite a few (15 total). Thankfully 2 are dropped which offers some relief (however do still do them as it helps with understanding.). I got exactly what I wanted out of this class; better intuition of mathematical optimization. Came with a bonus of better intuition of Linear Algebra as well.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • Georgia Tech Student2021-03-29T02:58:45Zspring 2021

    Awesome lectures, stay away if you want an A. Midterm has noting to do with Optimization and account for 75% of your grade along with the final. Waiting to see how the final will look like.

    It starts off too easy and gets harder about midway.

    For those who have theoretical math background, take it for an easy A.

    I have not seen professor one time, never seen him on Piazza either. TA's were not so interesting, not that you need their support really. Its just the exams that are the problem. Homework is quite doable. (3 hrs. per week).

    You should be taking good notes and focusing on every detail for the exam. Especially things that you thing are non essentials, they will be on the exam while the essentials might not be on the exam.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • Georgia Tech Student2020-12-15T09:55:04Zfall 2020

    tl;dr 1: take the recommended prerequisites seriously. If they tell you that you need both calculus and linear algebra to do well in this class, you jolly well need it. So please don't cry in Slack and Piazza afterwards if you cannot even inverse a 2-by-2 matrix. lol.

    If you are that person, please take a hard look at yourself on why you hated this course when the pre-req are so expressly stated, and are not willing to put in the required amount of effort. Indeed, please consider taking Bussy-track electives.

    tl;dr 2: the prof grades very fairly, the "A" curve is bigger than you can ever imagine. Even bigger than Simulation. So please don't cry in Slack and Piazza or OMSCentral if your exam score is a 80 with the median being 70. Refer to critique.gatech.edu.

    I think this course is severely underrated and its contents easily underestimated, and I can understand why low ratings were given in the past. Indeed most, if not all, of the issues that occurred in the previous semesters have been ironed out, giving you more time to really distil the course material.

    That said, because you are in a class full of OMSA greats, this is the course where you get the strictest of the peer graders. On one side, I got graded 75 for making a smallest of mistakes. On the flipside, if your solution happens to be similar to that of the actual one, there would be strong suspicion that you got the solution elsewhere (i.e. broke the Honors Code) and you will be reported to OSI.

    My tip is to just focus on doing the midterms & finals well - the overall effect of 75 / 90 in the HWs over the long term is < 1%, you have 2 drops too. A careless mistake on one midterm question is already worth > 1%.

    Yes, the HWs are challenging, and there are people who are very tempted to cheat in the HWs. Stop it! Not only you are violating the Honors Code, you are cheating your own preparation in the midterms and finals. Moreover, you risk having an IC or NR grades at the results release day in which you have to speak to the Professor directly to clear it up.

    Choose ISYE 6669 Discrete Ops as your Operations elective if you

    • want to mix with the best of OMSA and possibly sacrificing your illusory perfect 4.00 GPA, even if the curves are relatively generous (read next point).

    • have a very strong background in Linear Algebra and Calculus for you to be able to enjoy and appreciate this course taught by Prof Shabbir Ahmed and Prof Andy Sun. It has to be said that it's common knowledge in OMSA Study Slack community that the achievers take this course as their A-track or Ops Electives. So, better up the A-game.

    • want to take ISYE 8803 HDDA and CS 7643 Deep Learning (deeplearningbook.org) in the future. Topics learnt in Optimization forms a baseline in which you will need to explore these topics.

    • don't think a cheatsheet would help you - cheatsheets are banned by Prof Sun in this course since Spring 2020 in lieu of practice exams (which in hindsight is the reason why people are now liking this course).

    Choose ISYE 6644 Simulation as your Operations elective if you

    • want to head out into OMSA Bussiess track. In that case you only need to know how (and not why) an Excel Solver works, and taking a whole course of Optimization won't be for you.

    • want an easier to score A course to get your 4.00 GPA. That said, due to the difficulty in ISYE 6669, the A grade cut-off is actually lower than in Simulation.

    • want to brush up your level of Statistics. Comparatively speaking, Prof Goldsman provides more reminding/helping. Prof Sun is patient and explains well, but he assumes required knowledge in undergrad Linear Algebra. You are in a real grad class, so revisiting is minimal by default.

    • think 3 double-sided A4 cheatsheets would help you. In comparison, Discrete Ops no longer allows a single piece of cheatsheet.

    Choose both if you want to take an Analytics track and

    • want to avoid anything by Prof. Serban (she's nice, but for any reason you want to avoid your GPA from harm because she curves little, the horrors of Time Series Analysis, etc.).

    • want to avoid taking Bayes (the horrors of the new professor's midterm exams, and outdated BUGS).

    • want to buff up with a whole suite of ISYE Machine Learning courses on offer (6740-CDA, 7406-DMSL & 8803-HDDA).

    This class requires one to sit down, with intense concentration, and jot down explanations given by the lecturers, which themselves are well-covered. Otherwise, come revision time you will forget them easily.

    People do say that the practice exams are similar to the actual exam. I'd say it's more of an illusion than a reality. Yes the questions can be structurally similar but the content can be drawn throughout the course, especially on those places where it's not shown in the practice exams. You've been warned here :). That being said, because everyone knows structurally what questions to expect, the curve has gone much closer back to 90. Don't expect the cutoff of an A to be 75, like it was in the past, just saying.

    There are a few TAs in the class (due to lack of enrollment size). Even though it appears to be co-instructed, one of the professors sadly passed away recently so the other professor has to handle all the administration and setting of homeworks and exams, so do understand when you see reviews that the TAs / Instructors are not reactive enough.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 20 hours / week

  • Georgia Tech Student2020-12-13T17:29:26Zfall 2020

    Strengths:

    1. All 3 TAs in office hours were excellent. I am incredibly impressed with their explanations of concepts
    2. Homework assignments allowed a high level of application to theory
    3. Recordings are the best so far in the program in terms of detailed explanations in easy to understand english

    Weakness:

    1. Weakly homework assignments and long lectures can feel brutal sometimes. That shouldn't be changed but it sure is a pain
    2. Two 30 question tests count for 75% of your grade. That means each question counts for over 1% of your grade. Like ISyE 6501, this is not at all in line with the effort put in the class.

    Pound for pound I thought this was one of the best taught courses in the program. I learned a lot and was able to follow along, yet it still felt like the course maintained fidelity to being 'Masters' level education. The course requires a lot of linear algebra and multivariate calc. They review terms for those who don't remember everything but that review is woefully insufficient for someone who never learned in the first place.

    I don't recommend this course to anyone who does not understand what linear combinations or gradients are because it goes into the nitty gritty of mathematical details. It also has lot more application than simulation did. I don't know if this was my favorite course in the program but I would probably put it in my top three.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • Georgia Tech Student2020-11-01T17:36:13Zfall 2020

    I am reviewing in the last quarter of the semester. This is my favorite course so far in OMSA. It is not easy but can be very rewarding if you follow thoroughly with the lecture and utilize what you have learn into homework, which is lined up well with the lecture. The homework can be challenging in terms of mathematic reasoning, and implementation of concept into practice, but completely doable if you concentrate half day in it. The course is math heavy but it will walk you through the basic mathematics as prerequisite to various useful algorithms in optimization in a nice pace. The lectures and materials are well structured with a good balance of concept and examples. Both professors gave engaging lectures. Exam are closed book this semester but the practice exam will definitely give you a good prep. Strongly recommend previewing the lecture slides before listening to the lecture, which will guarantee a much better learning outcome.

    Rating: 5 / 5Difficulty: 3 / 5Workload: 15 hours / week

  • Georgia Tech Student2020-10-27T22:53:23Zfall 2020

    I am doing the OMSA "Analytics Tools" track and consider myself to be more interested in the mathematical side of analytics as opposed to the programming side. I have a math undergrad degree.

    This is one of my most favorite classes of the OMSA program. It is heavy in math but really thorough and moves as a good pace without being overwhelming. Right now I have a B, but I'm ok with that because I'm learning a lot and have tons going on with personal life.

    Homeworks are weekly and line up nicely with the lectures. They are a mix of mathematical reasoning, numerical examples, and Python programming. Some assignments have no programming, some are only programming. Midterm and Final exam are MC this semester and challenging but doable (so far!). Note: this semester they experimented with exams having no cheat sheet and no calculator. I was a bit worried, but they did provide a practice exam and solutions well before hand. The practice exam and studying my notes and homeworks were adequate preparation for the midterm. Got a B on it mostly b/c I got sick with Covid right around midterms for both my classes. (Healthy now, thankfully!) At any rate, study homeworks, notes, practice problems, etc. and you'll be prepared.

    As a side note, the syllabus says to use Python 2.7, but you can really use any version of Python. You might just have to adjust a few things, but there's no need to go to 2.7.

    The lectures and the TA office hours are my favorite parts of this class. The lectures are excellent. More than just reading the slides and equations, the professors in the slides actually describe the mathematical notation and explain what is going on. There are some minor errors in lectures/slides but those are usually mentioned and corrected on Piazza. The TA office hours go over the Knowledge Checks after the videos, which are well-written questions you actually have to think about.

    I'm taking this class near the end of my program, after Simulation and the 3 foundational courses, Time Series, and Linear Regression. So if you're looking for a good mathematical understanding of optimization, this is an interesting class. You'll come away with better understanding of gradient descent algorithms and some really nice applications of optimizations and classes of problems.

    What can say, I rated "Hard" but also "Strongly Liked." I won't walk away with an A, but that is totally fine. A really great class where I actually learned a lot. That is valuable.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2020-05-04T05:43:53Zspring 2020

    I do not understand the reviews below me for this course. I thought the course as a whole was excellent. I'm starting to think people give negative reviews if the course is a challenge and isn't necessarily an easy A.

    Pros:

    1. I honestly thought the homework questions were extremely well-thought out, challenging, and practical. Those questions, coupled with practice midterms/finals and Knowledge Checks, are very strong resources to prepare for the exams.

    2. The teaching was top-notch. The TAs were all exceptional, especially Will. They held office hours twice a week. This was the first class I've taken so far of which the teacher was very much involved too. It was commonplace to see him post on Piazza at least once a week, and would provide very, very strong explanations to questions from students as well. I also thought the videos were extremely strong too - I can tell they've worked on removing most of the issues from previous semesters. Finally, Dr. Sun also provided extremely well-written notes for the most difficult modules for the semester, namely Danzig-Wolfe, Column Generation, Simplex just to name a few.

    3. The curriculum was very interesting to me. Maybe because I really enjoy math, but nonetheless I thoroughly enjoyed learning the material. The concepts were definitely challenging, even for me 3-4 yrs out of undergrad. I still cannot wrap my head around an SOCP. If math isn't fresh for you, you could greatly struggle. It's essentially a math class that uses algebra, basic probability, linear algebra, multi-calc (take partial derivs).

    Cons:

    1. Very occasional error in video, of which teacher corrects right after (maybe 2 or 3 in the whole course).

    2. Some of the material could be taught in an undergrad optimization course (binary constraints at the end namely), but it absolutely went into more depth than the classic undergrad intro optimization course. Don't get me wrong, it absolutely felt like a graduate-level course in terms of difficulty. But, keep that in mind.

    3. Test questions were inconsistent. Some were extremely easy (freebies), others were very challenging and would require deep thought to get correct. Not the first class I've taken where this is the case, but I prefer more of the middle ground.

    4. No reference used to a textbook for reaffirmation. Not that big of a deal because the teaching was great throughout the semester. TAs would typically respond within an hour on weekdays (usually sooner), and get back within a day or two for weekends tops.

    5. Don't see how you can put 5 hours of work a week into this class and actually understand the material. The lectures alone are heavy with math, and are around 2 hours a week. So, if you take notes (I HIGHLY recommend you do so, since it's a math class), that is basically 4-5 hours a week right there. Be prepared to put in 10-15 hours a week, including homework, reviewing understanding, preparing for tests, reading piazza. I said 15 hours to give the max of the bounds (lol), of which is on the higher side for the degree. Absolutely required more work for me than ISYE 6501 for example.

    Also, note to the reader, I wrote this review before seeing my final grade, so I am not being skewed by that result.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2020-02-25T18:57:55Zfall 2019

    The content is good…but the exams are really bad. The cheat sheet you create will be useless. I think it would be better if the weights were 1/3 homework, 1/3 midterm and 1/3 final. It can be very frustrating downloading CVXPY and getting it set up on your PC. Some of the complaints about the course have been going on for several semester and have not changed (no practice tests, mistakes on the slides, bad exam questions)

    Rating: 4 / 5Difficulty: 4 / 5Workload: 15 hours / week

  • Georgia Tech Student2019-12-26T02:02:57Zfall 2019

    The first half of the course was more focused on linear algebra (LA) knowledge. Homeworks don't really give a good benchmark on the exam questions. It would be better to study from a LA textbook rather than use from the HW for exams.

    The second half (after Midterm1) of the course is much harder, and the pace increases (for me). I spent much more time studying for the second half than the first half.

    I personally find the course interesting but there was just too much things to study for and there wasn't enough time for me to study in depth as I paired it with one other course.

    There was a grade curve to a certain extent so just study hard and worry less about the grades. :)

    Rating: 4 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • Georgia Tech Student2019-12-13T12:15:36Zfall 2019

    Math-heavy, very theoretical...not grounded in the applications of using optimization models in real life. I really wanted to like this course. I love the subject matter, as it is very relevant to my current job....however, the lectures are not well done (long, tough to follow). The tests are worded in a way where even if you have a good understanding of the material - it's possible to do very poorly on the exams.

    One of our TA's was really excellent (Will Lassiter) and very helpful on Piazza with great explanations.

    I think the lectures and assignments need a revamp. Make this class more applicable and grounded in the use-cases for all of the material that's covered. I spent the whole semester lost in theory and feel like I took away very little of value from this course, which is very different from my experience with other courses so far in this program.

    I will admit I did not put in the hours that others did to perform really well in this course. However, I would have had a lot more incentive to put in the effort if the material was more engaging and learning it was more rewarding.

    Rating: 1 / 5Difficulty: 5 / 5Workload: 5 hours / week

  • Georgia Tech Student2019-05-13T16:36:19Zspring 2019

    Pros: Interesting content, workload wasn't overwhelming

    Cons: No instructor engagement, very little TA engagement, the course felt disorganized; exams don't test your knowledge of the material

    I'm very torn about this class because I enjoyed the lectures and course materials, but the exams were terrible and the course was poorly run. There were a few lectures where the math/linear algebra was not well explained, but I found having a good linear programming book on hand could solve that, but otherwise I very much enjoyed the course material. However, the exams were extremely difficult unless you had a very strong linear algebra background and had dug into extra material. It felt like multiple choice was used because it was easy to grade, but then they felt the need to make the problems extremely difficult to force a class curve. Everyone did well on the homework assignments, but exam averages were around 75.

    Our semester, the cutoff to get an A was around a 78. It seems silly to me to have exams worth so much of the grade then apply a 10+ point curve, where they could just make homework assignments worth more and achieve the same thing without the added chaos. There was a major blunder in that the final exam was due the day before grades were due to the registrar, and the instructors (who never interacted with the class once during the semester) forgot/neglected to submit grades (we were never given an explanation) which required special forms to be submitted on behalf of the entire class to get the grades updated three days later.

    Overall, I recommend the class because it was interesting. It's more difficult than ISYE 6501, but worth it in my opinion. Hopefully they fix some of the course issues in future semesters, because this has the potential to be a really excellent class.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 8 hours / week

  • Georgia Tech Student2019-05-07T15:58:37Zspring 2019

    Class requires a good amount of linear algebra background which I did not have at all (have never taken a course before), but I managed to get by with a significant amount of time and research outside the lectures. For me, the biggest pros of the course are the really interesting subject matter (I just plain like optimization!) and the regular homeworks that are actually genuinely helpful in understanding the subject matter.

    I found the lectures to be rather frustrating. There were plenty of mistakes that made grasping concepts quite difficult as they totally disrupted any sort of intuitive understanding of what was going on I was able to muster. The profs also often glossed over the most complicated version of anything. In one lecture, the prof went through like 4 different example formulations of a relatively simple concept and when we get to a VERY complex formulation of an advanced concept, he says something like 'and you can figure out how this works on your own' while providing us with nowhere near enough information to do so. Was that on any HW or exam? No, but it would have been nice to have gotten a bit more information at least in the slides or something.

    There also is not enough feedback throughout the course. There is no session to review information in the exams (or, for the final, we haven't even gotten the solutions at all). The only information you get about the first exam before you take it is that 'it will be like the knowledge checks and the homework' which is decidedly false. The difficulty level is far beyond anything on the homework, coupled with tricky wording and multiple choice questions make a truly difficult exam.

    The absolute biggest issue I had with the course was the knowledge checks. The TAs make it sound like these should basically be treated as a practice exam, which would be fine if it weren't for the fact that they were riddled with errors, almost always directly referencing something on a slide, and there was no information at all about why they might be correct or incorrect. The error issue is easy enough to deal with, there's usually a piazza discussion if they're wrong. The fact that they are directly referencing something on the slide makes them a bit useless as a practice test because either 1. the information isn't really important or 2. it doesn't really require you to work anything out on your own but instead is checking if you know how to read a slide and pick the answer that matches. Both of these also make it difficult to use it as some sort of practice test because once they loose the context of the slide, they sort of loose their meaning.

    The exams also suck. They make you feel like you're a remarkable dumb person because what they're testing is so complex compared to anything you've learned in the course. Like really unnecessarily complicated equations that you need to be able to graph basically that are never mentioned in the hw or anything so you have no expectation. Like, for example, if you could figure out the values for sin and cos over a specific range, when not once in the hw are slides or anything do we discuss those graphs. Are they inherently complicated? No, but I also can't just pull out the values over a range with no preparation.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 8 hours / week

  • Georgia Tech Student2019-05-06T18:24:30Zspring 2019

    This is a challenging course. Make sure you know your linear algebra before you start! Like everyone else says, the testing in this course feels unfair. Coverage of material is good and overall the experience is good if you are willing to overlook the tests. Logistics are poor, I waited a long time before my assignments were graded. The final assignment does not get any feedback because they can't figure out how to get it into the schedule. The peer grading system is not effective for this class so expect to spend time assessing your own homework. The schedule is also fairly inflexible with one assignment due each week.

    Rating: 4 / 5Difficulty: 4 / 5Workload: 8 hours / week

  • Georgia Tech Student2019-05-06T17:34:38Zspring 2019

    TL;DR: cool stuff, challenging, mathy, good practical applications, not enough exercises/feedback, 2 horrible exams that will make you feel dumb but are graded on a curve.

    This is a challenging, very wide-ranging, and generally interesting course with a mix of deep theory and applications. It is math-heavy (derivative calculus and linear algebra). The primary focus is on linear problems, convex problems, integer - linear problems, and reformulations to those problems.

    • Part I (Weeks 1-4) covers intro concepts, convexity, relaxation, and calc-based methods like gradient descent.
    • Part II (Weeks 5-12) covers linear optimization, with case studies, reformulations of various problems to linear equivalents, deep dive on simplex algorithm, relaxation (again) and duality, and two types of huge problems that are solvable with some tricks: column/constraint generation and Dantzig-Wolfe.
    • Part III (Weeks 12-13) covers nonlinear problems that can be solved efficiently (least-squares, SVD, second-order conics, and positive semidefinite problems). This section felt very rushed and the explanations of SOCP/SDP were rather poor.
    • Part IV (Weeks 14-16) covers discrete/integer problems, how to use binary variables, relaxation (again), and a very shallow intro to branch & bound.

    As you can tell, this class covers a TON of ground and it can feel overwhelming. Lectures are rather dry, but HWs provide a good practical angle with Python (cvxpy) or sometimes optional Matlab.

    Major cons:

    • Two brutal exams that try to trick you and seem designed to make you feel stupid -- but also sometimes make you really think instead of doing plug-and-chug with memorized problem templates. (Class mean on the final was 69%). They are three-hour proctored sessions that make 60 total MC/TF questions the basis of 75% of your grade.
    • Not enough exercises to actually learn the material and get feedback: HWs aren't enough, and the solutions usually didn't provide good enough explanations for each solution, so you're basically on your own. EdX knowledge check questions were OK but provide zero explanations for why certain tricky answers were correct/incorrect, which makes learning from your mistakes difficult. I really, really wish there were more (ungraded, instant-feedback) exercises with thoroughly explained answers to help students retain material and prep for exams.
    • Some frustrating errata in both the lecture videos and EdX knowledge check questions which really ought to have been corrected by now.
    • There really needs to be a course project with students' choice of problem, and it should take some of the grade weight away from exams.
    • Peer grading of HWs is sloppy, as usual, which is usually generous but doesn't help you learn from your mistakes.

    Final Note: if you are looking to learn about optimization methods for the latest fancy neural networks you'll be disappointed (aside from basic gradient descent which is covered in this course, a lot of NN libraries use stochastic, not deterministic, methods/variations). However there are still plenty of cool applications of deterministic opt in operations research and for some ML/Stats applications (like SVMs, robust regression, and SVD).

    Rating: 4 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • Georgia Tech Student2019-05-06T02:27:39Zspring 2019

    While I've very much enjoyed the material (and learned a ton about the rationale behind linear optimization), there were two main defects with this class - logistics, and grading.

    First of all, the delivery of the course was quite poor, considering that this class actually is a very math-heavy class. There were a lot of jumps here and there, so basically unless you have a good previous understanding about convex optimization (or linear algebra applied to this optimization), you are in for hours and hours of searching and reading over the internet. Also there are some wrong information in the lecture, not corrected promptly (such as reverting max and min in a problem)

    Secondly, the TAs are not as engaged - their hw solution release was pretty late most of the time, and if you ask a question, the response takes a long time to come. Some responses are detailed but mostly they are "check this lecture" or "oh that is a typo" kind of short response. The professors are non-existent as well. We kinda relied on our cohort for those responses (thanks to those of you with better understanding of the concepts)

    Thirdly, in the knowledge checks there are no detailed explanation of why it is right and why it is wrong. If you get it wrong, in order to learn from it you need to see why you lost it. That required additional search time as well. Same goes for the exams - they just say you got it wrong, without giving the reasons. No recap session and such at all. So it does not boost your learning experience.

    Lastly, about grading. The grading is heavily (75%) exam-based. The main problem is, the lecture and hw, + knowledge checks do not provide adequate preparation for the exam. Whilst there are no practice exams given or topics listed but simply stated "like homework and knowledge checks", the difficulty is way higher than hw and knowledge checks. Quite a bit of word-tricks ("always" , "may have" etc.) There was no way to prepare adequately for the exam, unless you were just plain good with all the concepts. This seems to be a general sentiment, from what I hear in (unofficial) class slack. They should've given at least some practice questions so that one can gauge how good (or bad) they are. With solution, even better. Or just do a recap office hour or something.

    Summary)

    Pros: Material is interesting. Tons of things to learn.

    Cons: Bad logistics, horrible exams.

    Verdict: I wouldn't take it if I were to take it again. If you are really comfortable with linear algebra, go ahead. If not, no bueno. You'll learn a lot of linear algebra, but you'll be better off (and less stressed) taking famous Strang course on linear algebra if you are looking to bolster linear algebra. Neutral since I did learn quite a bit from course.

    Rating: 3 / 5Difficulty: 5 / 5Workload: 15 hours / week

  • Georgia Tech Student2019-05-05T20:29:43Zspring 2019

    Course Review ISYE6669 This is a good course and I learned a lot.

    Prerequisites: It seems to me that half of the class is just linear algebra, not specific to optimization. The course only uses a little calculus (Taylor’s series, gradient and Hessein matrix) and almost no probability/statistics. I only had a minimum level knowledge of linear algebra from my undergraduate engineering training.

    Computing: You definitely need to know python for the homework (not tested in the exams). Matlab also helps. We were asked to set up a python 2.7 environment specifically for cvxpy. I had set up a separate environment just for this class. Getting it right for this class could take some time because package compatibility issues with cvxpy. Some were able to use python 3.5 or 3.6 for this class.

    Overall, your grade and learning experience would correlate directly to your linear algebra skills and your time spent on studying materials outside the lectures. I did well simply because I dedicated far more time (probably 15-20 hours/week) than the average students.

    Course materials: There are two modules of videos (3-5 per module) each week. The total time is consistently about 2 hours per week. But I spent at least twice as much time viewing the videos, taking notes, and reading other materials to understand the lectures. A few videos had typos that confused many students, wasting much valuable time. A few knowledge-check questions also had typo or other mistakes. Besides the few mistakes, the lecture videos and slides were very good, clear and well organized. The math review in the lecture is far from sufficient. They just assume that you know linear algebra well (and intuitively). If you don’t, you can follow the lecture, the steps and procedures, but will likely be lost in the details.

    No book is required. Some recommended references can be downloaded free from authors’ websites. But I think they have too much math and didn’t find them helpful. I had a couple of (nearly 40 years) old Linear Programming books that I found very helpful. They cover the required math and explain many of the concepts and methods better than the lectures. More than half of the course is linear programming.

    There is a homework assignment every week. Most of them are not difficult but some can take more than 5-6 hours depending on your experience with python and the software package (e.g. CVX). I found the homework helpful in learning the material. All assignments are peer graded. Most students get 90-100% for the homework (which is 25% of the grade). The last one (15th) is called “bonus” and is due in the finals week. But it is not counted toward the final grade. So I did not submit it. The two lowest grades of the other (14) assignments are dropped before the average is calculated.

    The midterm (35%) and final (40%) exams were harder than the homework. The issue is that many of the questions are linear algebra, not optimization. You are required to do math by hand, not with a computer (as you can for homework). So if you just viewed the lectures and completed your homework, you are not prepared for the exams (unless you are already skilled at linear algebra). They should have given the questions at the beginning of the course to help students assess their knowledge gaps. In addition, many questions require true understanding of the concepts and approach, not merely the procedures. If you don’t understand “why” a method was developed or used but only follow “how” to solve a given problem in the lecture, some exam questions will look unfamiliar. There are so many methods to choose from. You won’t know where to start.

    I wish more homework (especially the later ones) could include questions not specific to a lecture or method so the students had to think how to approach them. But I understand that the class is trying to cover as many basic methods as it can fit in the 15 weeks. The course load is already significant. The TA’s were very responsive and very helpful on Piazza, which made the class a great learning experience. There were four office hours per week. But I did not attend any and preferred asking on Piazza.

    If you take the class, I recommend 1) study linear algebra as much as you can, 2) get a Linear Programming book as a reference, 3) set up the python environment ASAP, and 4) ask questions on Piazza.

    Rating: 4 / 5Difficulty: 4 / 5Workload: 12 hours / week

  • Georgia Tech Student2019-05-04T00:23:24Zspring 2018

    This course was solid but not great. It will give you an intro to a broad range of deterministic optimization topics and particularly linear programming.

    The course is a nice complement to the random optimization components from CS7641. It will also get you a little more understanding of what is going on under the hood of convex optimization solvers. There is also a heavy component of formulating problems into the form required by commercial solvers, which is probably the most valuable skill for a practitioner.

    The homework is well done and generally light (often 2-4 hours per week). Occasionally it was harder and caught me by surprise, so it's helpful to start early if you can.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 8 hours / week

  • Georgia Tech Student2019-04-22T20:47:50Zfall 2018

    Course gives a good introduction about optimization. However, Professors are not at all involved in this course and TA's are not very responsive.. So, I will not recommend this class if objective is to learn via discussions/ two way communication..

    Rating: 3 / 5Difficulty: 3 / 5Workload: 6 hours / week

  • Georgia Tech Student2018-12-31T04:40:24Zfall 2018

    This course is an overview of deterministic optimization algorithms with a few of their real-world applications. They would typically be presented in a general form, but then simplified into smaller dimensions for ease of understanding and ability to solve by hand when given real numbers. Course material and lecturers could be a bit dry, but definitely nothing should be skipped (typically about 1-2 hours of lecture time). Overall, this allowed the student to effectively grasp the concepts with the homeworks, which were directly useful when it came to understanding the concepts presented.

    On the subject of homeworks, there are 14 peer-graded homeworks (6501-style, 100/90/75/50/0) , mostly straightforward and relevant to the material presented in class for effective understanding reinforcement. Homeworks were mostly doable on paper, with a few homeworks to be done in Python but not requiring any more understanding than what was learned in CSE 6040. Homeworks took an average of 2-3 hours each, with some taking more but some taking less.

    Exams could be a bit tricky, as there were questions that required deeper understanding than what was presented in class, and would not be explained until after the exam period. However, since most of the class missed the same questions for reasons of lack of coverage, it seemed to have been factored into the final course grade. The final grade was curved, where the cutoff for the Fall 2018 semester seems to have hovered around slightly above the class average.

    Definitely recommended for reasons of usefulness and practical application...just be prepared for dry lectures and absentee professors (questions answered by 1-2 TAs).

    Rating: 4 / 5Difficulty: 3 / 5Workload: 6 hours / week

  • Georgia Tech Student2018-12-11T02:03:59Zsummer 2018

    Took this class Fall 2018 and not Summer 2018.

    Wow. This class covered way more material than I expected. The 14 homework assignments (1 every week) were pretty intense, but the good thing is you get to drop two. The 15th homework assignment is just a bonus and is not included in your grade.

    Grading Breakdown:

    1. Homework 25%
    2. Midterm 35% (90 minutes, 30 MC questions)
    3. Final 40% (180 minutes, 30 MC questions)

    You're allowed one 2-sided notes for each test. Fall 2018 class average for the exams were (23.1/30) for midterm and (19.8/30) for final.

    Things I liked about this class:

    1. Uses Python (helps develop your Jupyter notebooks skills and also formulating equations in LaTex)
    2. Optimization is what ML algorithms are doing, so it's very relevant to everything we're learning.
    3. There was a decent amount of material that crossed over with concepts from other classes from a more "optimization" viewpoint

    Bad things:

    1. Absolutely no professor interaction. The two TAs were great at responding to answers, but this is the first class I had where there wasn't a single professor Piazza interaction.
    2. No practice midterm/final
    3. Some of the test questions are just really difficult to get right without more practice from a practice midterm or final. Studying alone isn't sufficient enough to get the right answer. Tests were kind of demoralizing when I thought I did well, but after submitting I did way worse than expected. I think you have to have a truly good understanding of the concepts to apply them to the questions you see on the exam.
    4. Soo much material... it was hard to remember everything for the exams
    5. Errors on the midterm. There were several questions that had multiple checkboxes instead of radio buttons and credit wasn't given for questions if the wrong question was also selected. It didn't seem like the test was reviewed after it was published on Canvas. This probably shouldn't be a recurrent problem though.

    Have yet to see how generous the curve is.

    Rating: 4 / 5Difficulty: 4 / 5Workload: 10 hours / week

  • Georgia Tech Student2018-12-07T15:05:22Zsummer 2018

    This class was certainly interesting, but I felt at time I got too "in the weeds." We often got much deeper into theory than I would have liked and not so into application, but that just seems to be how this entire program goes. Professors were fine, weekly home works felt a little overkill, but the info is pretty good and I do feel like I learned a good bit. Biggest downside is the tests are unorganized and messy, and don't reflect the home works and lectures very well, imo. I think with some tweaking this could be a very strong course.

    My Background:

    23 years old, recently married, graduated undergrad in May 2017.

    Coding Experience: Moderate (academic experience with many languages, mostly Python and R)

    Statistics Experience: Moderate (4 undergrad level stat courses, Intro to Analytics Modeling, Regression Analysis)

    Math Experience: Moderate (peaked at 2nd year Calculus)

    Rating: 3 / 5Difficulty: 4 / 5Workload: 8 hours / week

  • Georgia Tech Student2018-12-04T19:32:11Zspring 2018

    Extremely difficult course. Requires a PhD in math or at least a degree in math. Teachers/TAs know a lot more than you and they assume you know as much as they know. There is no application I know of to work as a data scientist from this course. The course is very theoretical and NOT FUN. The course covers an incredible amount of information. You are tested on material not covered in lecture or covered in such poor detail as to be not covered. There is 30 hours of lecture of extremely difficult material. How are you supposed to learn everything that is taught in this course?

    Rating: 1 / 5Difficulty: 5 / 5Workload: 10 hours / week

  • Georgia Tech Student2018-06-05T17:08:53Zspring 2018

    My review is biased because I began the class with an excitement to learn about Deterministic Optimization. The material is often highly abstract, and the future rewards seem uncertain, as if the class was an experiment in reinforcement learning. Entering the class with a strong interest was helpful to push through the early math portion, stick with it. The course begins by focusing on core mathematical building blocks like linear algebra, set theory, and convexity. A good understanding of this material pays dividends when the class begins to introduce concepts like search spaces, second order cone programming, and simplex.

    This class focuses on the math and reasoning behind basic optimization techniques. In my opinion, this is the most important thing to understand about optimization before moving on to other optimization topics. Some students in the class had hoped for more applications of optimization techniques to real-world problems. While there are numerous real-world examples explained in the videos, the time spent actually applying optimization to real-world problems in the homeworks and tests is minimal. The class also doesn't really delve into the computational side of optimization. To be fair, that would probably make a good follow up class. Simple fixes like providing vectorized homework solutions could help improve the class in this regard.

    Overall I enjoyed this class because I enjoyed the material. I plan on continuing to learn about optimization and this class provides a good foundation for future exploration through the search space.

    Rating: 4 / 5Difficulty: 4 / 5Workload: 7 hours / week

  • Georgia Tech Student2018-05-01T17:43:47Zspring 2018

    I really liked this class, it manages to be both challenging, almost self sustained and very well organized, where you can expect to spend around 10hs per week between watching lectures and doing the homeworks.

    The homeworks are normally fun and consist on solving some problems I would say 50% coding 50% by hand.

    I suggest to refresh linear algebra, because even if the course covers much of what it uses, in the end the tests assume a certain level of math. There are two tests which account for 60% of the grade and are quite challenging.

    Some students criticised that it focuses much on theory and less on real applications, but I don't agree, I think it has the right dose of both sides of the coin.

    Rating: 5 / 5Difficulty: 4 / 5Workload: 10 hours / week