mellow-quasar-3800
Edited
• 3 Credit Hours
Key adjectives used by students — color intensity reflects sentiment
mellow-quasar-3800
Edited
fair-parrot-7365
Edited
polite-falcon-3346
Edited
valiant-turtle-4376
Edited
humble-turtle-5543
Edited
patient-hound-1405
Edited
fair-pelican-8800
Edited
cool-hawk-6462
Edited
worthy-rabbit-5628
Edited
pure-finch-2610
Edited
I thought this was an excellent course. Even coming in with industry experience in mathematical optimization (LP/IP, commercial solvers), I learned a lot of genuinely new and useful material. The only real downside is the timing around the midterm—having a regular homework due during the main exam study week can be rough.
Overall impression
I genuinely think this is a great course. It’s well-structured, the topics are thoughtfully sequenced, and the class provides a strong foundation that is both academically solid and highly relevant to real-world optimization work.
For context, I finished the course with an A.
My background (so you can calibrate this review)
I work professionally as a mathematical optimization / operations research engineer. In my day-to-day job, I build optimization models and solve them using commercial solvers such as Gurobi and IBM ILOG CPLEX. Before taking this class, I already had a working knowledge of linear programming and integer programming, so I did not start from zero.
What I liked most: topic coverage and progression
One of the best parts of this course is that it feels like it walks through the “standard” optimization curriculum in a clean and logical order—very similar to how a good optimization textbook would build up concepts from fundamentals.
That said, even with my background, I still found a lot of value because the course includes advanced (but very practical) topics that I had not studied deeply before. Examples include: • Transforming certain robust optimization formulations via duality (and seeing how they can reduce to more standard planning formulations) • Dantzig–Wolfe decomposition and the underlying idea of decomposing large structured problems • Actually getting hands-on exposure to column generation, which I strongly believe will translate directly to real industry projects
Nonlinear / convex optimization coverage
I also appreciated that the course doesn’t stop at LP/IP. It introduces the “entrance” to nonlinear optimization and convex optimization in a way that’s approachable and easy to follow. It won’t turn you into a convex optimization specialist overnight, but it does a great job giving you the core intuition and vocabulary.
One thing I would improve: midterm week load
If I had one critique, it’s the scheduling around the midterm. During the key week when you realistically need time to study for the midterm, you may still have a normal weekly homework due. That alone is tough, but what made it harder for me was that the homework around that time covered concepts that become very important later in the course. If your understanding gets shallow there due to time pressure, the second half can feel unnecessarily painful.
So I don’t think the homework itself is “bad”—it’s important. I just think the overlap of heavy exam preparation + regular homework in the same week is a bit brutal and could be adjusted.
Exams, pressure, and whether you should take it
This course is definitely motivating: it pushes you to study seriously, and an A from this class really does mean you put in the work. Personally, I actually liked that aspect.
In my case, I scored around 80% on the midterm, which put me under pressure to perform extremely well on the final. I ended up getting a perfect score on the final, and the process of studying under that pressure honestly strengthened my understanding a lot.
So here’s how I’d frame it: • If you want an “easy A with minimal stress,” you might want to avoid taking this in a term when your schedule is tight. • But if you’re okay with a normal level of graduate-school intensity—and you want a rigorous, valuable optimization course—then I’d absolutely recommend it.
Taken Fall 2025
The reason I am leaving a review is because I saw a recent negative post about this class and wanted to chime in.
Firstly, as someone who enjoys math, I really enjoyed this class. I think the class is well-structured and the homework reinforces the materials since it forces you to apply course concepts. You learn to how to model problems as optimization problems and then methods for solving said problems. It was interesting and felt very practical. I didn’t think the material was hard, but it definitely assumes some familiarity with derivatives and linear algebra.
Secondly, I’m not sure if there was a curve at all. My assumption was that there was no curve. If there was one, then it was not mentioned at all by staff. I managed to get an A without any curve. Getting an A is definitely doable, but it is stressful because of how heavily weighted each exam is. I firmly believe that if you did the knowledge checks and practice exams, like really really studied them, then you’d be well-prepared for the exams.
Lastly, the material is definitely relevant. Linear programming might not be prominent in everyday life, but some concepts definitely appear frequently. If your job is to model problems and solve them, then this course is relevant. If you’re in the ML space, then you’re bound to encounter optimization problems since the goal is to either minimize error or maximize performance. See Andrew Ng’s lectures on regression/classification and you’ll see the importance of optimization.
This course sucks in the way that it forces curve. Only x % got A no matter what. I don’t agree with some comments here praising the course design. It’s pretty much all about linear programming and old school stuff and to be honest, it has almost 0 value in real practice.
This is for Fall 2025.
It's a great course. The lecture is well organized and teaches many interesting techniques and algorithms for solving various types of optimization problems. The weekly homework and two exams are well designed. Some of the exam questions felt a bit hard but overall closely followed the style of the practice tests. As long as you do homework and review the lecture, you'll do well. I agree with other reviewers that this class provides a good theoretical foundation for other harder ML classes like CDA and DL.
The content isn't difficult, but the homework assignments are more challenging than necessary. The exams are quite tricky. I managed to get an A, but only 20% of the class achieved this grade. Be prepared to invest considerable effort into the homework. However, your exam grades are what really matter. Preparation for the exams is mostly through practice exams and quizzes, rather than the homework, which mainly helps with understanding the material.
I was new to IE and this course provided a comprehensive introduction to a variety of concepts and techniques used in optimization. The experience depends a lot on the professor, I suppose. Sometimes, the study is mostly self driven - be mentally prepared.
Deterministic Optimization is a class about solving equations. Mostly linear minimization/maximization problems, but generalizations are mentioned. It feels much more like a traditional college math class.
An introductory course in linear algebra typically centers around the equation Ax = b where A, x, and b are matrices. Eigenvalues, Row elimination, and matrix properties like inversion can all be viewed through this lens. This course can be thought of an extension of that to the form min b*x subject to Ax > 0, x > 0. This dramatically opens up the problem space and now includes problems like the travelling salesmen, set partitioning, set packing, etc. Properties of x become important for the solutions that we can guarantee. Ideas like the dual, polyhedrons, and changing the basis of our problem are taught.
My background is in physics, so I did not find the need to learn new methods or categories of concepts (you need linear algebra and really basic multivariable calculus).
As corny as it sounds, you get out of this class what you put in. The methods discussed are the backbone of low paying industries such as: financial market making, supply and logistics, optimization of networks.
The course structure is a homework every week (two lowest grades are dropped) and then a midterm and a final. The class has no curve.
Homeworks are easy and map directly onto the week's lectures. Most can be solved by hand on paper or written up on Latex. You can also go the extra mile and solve all of them via programs. A few of the problems must be solved via python-based solvers.
Exams are also easy and consist of basic versions of homework problems and concepts. You get a 'cheat sheet' to write whatever you want on it.
Overall, the I think this would be a great class to take in person or in a setting where you could maybe focus on big project. In its current form I was able to spend ~ 3 hours a week cranking out the homework's and then maybe an additional 5 hours to study for the tests. It's a good class if you're interested in the math.
I thought this course was great, although certainly not easy and certainly a weekly time commitment. Math proficiency, especially with derivatives and matrices, will be a huge help in being comfortable with the material. My biggest gripe is that the course is kind of relentless - each of the 15 weeks consists of new material made up of lecture videos that can get lengthy for certain weeks, and a homework assignment. This includes during exam weeks, so you have to worry about keeping up with the material and assignment while studying for an exam worth a large portion of your grade. Others also complain about the large weight of exams, which is fair, but I'm not sure what the alternatives are. The homeworks are peer graded, which in my experience works in the student's favor, and are already worth 25% of your grade. Given that they're peer reviewed, I don't blame them for not making these worth more. The only thing I can think of are more quizzes, similar to the knowledge checks.
I found the lecture videos of the course to be really good. Even though the videos come from a mix of two different professors, I thought they both did a good job of explaining the material in an organized fashion and including relevant examples to drive the concepts home. Additionally, although there are weekly homework assignments, I thought they were reasonable and did a good job reinforcing the material. There are definitely some tricky questions in the assignments, but overall I thought it was very doable especially for a master's level course. Some of the assignments do involve coding in cvxpy in python, so that can take a little getting used to, but the TAs do provide resources for this.
Regarding the exams (midterm and final), they're not the easiest and can be intimidating given the large weight. They consist of 30 multiple choice questions, and I found having a strong understanding of all the theorems/properties from lectures to be essential, as well as being able to apply the methods taught in class. You do get cheat sheets, and by far the most helpful piece is that they provide a practice exam which is very similar to the exam. Definitely take this practice exam to get a sense of your preparedness and to get a good feel for the actual test. The averages hovered around 80 - low 80s, which is higher than it used to be before the practice exams were provided.
As for the material itself, it's very mathematical and more giving you the background of how optimization programs work, less so than actually applying them to models. YMMV in terms of how useful you find the material depending on which classes you take later in the program. I wouldn't call it essential, but it will give you the background for how different models/algorithms you cover in other classes arrive at solutions, so I would only recommend it if you find that interesting/useful, which I did.
Lastly, I found the TA's to be great. The head TAs office hours are very informative and the other TAs hold office hours throughout the week that were useful if you felt stuck on certain concepts.
Overall, I thought the lectures and TAs were great, the homeworks were reasonable and helpful for your understanding, the exams are tough but made much more doable with the practice exams, but be prepared to always be "on" with this class since there's material and deliverables every week.
Spring 2024: Despite earning a C in this class, here are several reasons why you might still consider enrolling:
Cons:
Pros:
Optimization is a valuable skill across many fields. Completing this course can enhance your confidence in tackling more complex mathematical optimization problems.
Retake Strategy: If I were to retake this class, I would:
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.