Operations Research I
Teaching · IE 3315 · UT Arlington · 2023–
An introduction to the major deterministic techniques of operations research and their application to decision problems, focused on improving modeling and decision-making skills.
Topics
- Linear programming: the simplex and interior-point methods
- Integer programming and branch-and-bound
- Convex and nonlinear programming
- Network analysis, and transportation and assignment problems
- Game theory
- Sensitivity and trade-off analysis
How it is taught and assessed
- Three exams (60%)
- A team project that applies the course to a real problem (25%)
- Homework, mostly computer assignments done in groups (10%)
- Individual quizzes (5%)
Tools. Optimization modeling in Python and Excel, visualization, and formal report writing.
Textbook
Operations Research: An Introduction, 10th edition, Hamdy Taha available through the UTA library
Key concepts
- Linear program (LP)
- Maximizing or minimizing a linear objective subject to linear constraints.
- Feasible and optimal
- A feasible solution satisfies every constraint; an optimal one is feasible and provably has the best objective value.
- Basic solution
- A corner point of the feasible region, found by setting the non-basic variables to zero; the simplex method moves from one corner to a better neighbour.
- Duality and shadow prices
- Every LP has a dual whose optimal values price each constraint: how much the objective would improve per unit of extra resource.
- Sensitivity analysis
- How far a cost or a right-hand side can change before the optimal solution changes.
- Integer program
- An LP in which some variables must be whole numbers; solved by branch-and-bound, which splits the problem and discards branches that cannot beat the best answer so far.
- Network flow
- Problems on nodes and arcs, such as shortest path, transportation and assignment, that often have special, fast solution methods.
- Pareto optimal
- A solution in which no objective can be improved without making another worse.
Code examples
- Linear programming, three ways to solve it
- GurobiPy basics: an LP, the diet model and facility location
- GurobiPy beyond LP: quadratic constraints, piecewise-linear functions and multiple objectives