About Us academics students faculty & staff alumni & friends resources NMU
 

MA381 INTEGER PROGRAMMING & NETWORK FLOWS (3 Cr.)

COURSE DESCRIPTION

Prerequisite: MA380 Linear Programming

General Introduction and Goals

Introduction to the basic concepts, algorithms, and methodology of network and integer programming with strong emphasis on mathematical modeling, analysis, and application to nontrivial problems arising in various areas of the physical, social, and decision sciences, and applied mathematics.

Network flow theory, which is closely related to linear programming, integer programming, and graph theory, is one of the most useful tools of Operations Research. Its significance lies mainly in its remarkable capability for modeling a wide range of practical problems encountered frequently in various areas of science, mathematics, engineering, economics, management, and operations research. Network analysis has found relevance and applications in information theory, cybernetics, social-group structures, language structures, chemical-bond structures, planning and control of research and development projects, transportation systems, distribution systems, communication systems, routing problems, assignment problems, scheduling problems, and integer programming, among others.

Linear integer programming (integer programming, discrete optimization, combinatorial optimization), which is intimately connected with linear programming, network flow theory, and combinatorics, is concerned with the analysis and solution of optimization problems in which some or all of the decision variables are restricted to assume values within specified discrete sets. These discrete constraint structures allow the mathematical abstraction and formal representation of phenomena or alternatives where indivisibility is unavoidable or there is not a continuum of alternatives. Discrete optimization problems abound in many areas of science, mathematics, engineering, economics, management, and operations research. Specifically, the prototype integer programming models have found widespread applications in the design of distribution systems, production scheduling, machine sequencing, capital budgeting, portfolio analysis, facility location, telecommunication and transportation network design, VLSI circuit design, automated production systems design, computer design, combinatorics, graph theory, logic statistical data analysis, reliability theory, high-energy physics (determination of minimum energy states), cryptography (designing unbreakable codes), politics (selecting fair election districts), molecular biology, and x-ray crystallography, among others.

The mathematical underpinnings of network flow theory and integer programming belong to the domain of modern applied mathematics. This fact coupled with the possibility of accommodating and treating a broad selection of concrete problems in a unified framework will make MA 381 a valuable addition to the Mathematics and Computer Science curriculum. This and the two companion courses MA 380 and MA 485 will provide the students with ample opportunities to gain an appreciation for, an understanding of, and a facility in the use of mathematics in other fields. Furthermore, these courses will make the students aware of a broad range of career opportunities, help them in the job market, and guide them in exploring the possibilities of pursuing graduate programs in some areas of the decision sciences.

Course Content

1.       Network Models and Algorithms

a.       Basic definitions and terminology

b.       Single-commodity maximum flow problems

c.       Single-commodity minimum cost flow problems

d.       Shortest path problems

e.       Minimum spanning tree problems

f.         Project planning and control with PERT-CPM

g.       Multicommodity network flow problems

h.       Relationships between linear programming and network flows

i.         The network simplex algorithms

j.         Other network algorithms

2.       Integer Programming

a.       The origins and scope of integer programming

b.       Formulation of integer and combinatorial programming problems

c.       Examples of integer programming: capital budgeting problems, batch size problems, fixed charge problems, plant location problems, project selection problems, multiple choice problems, job sequencing problems, work scheduling problems, facility location problems, cutting stock problems, knapsack problems, matching problems, set representation problems, set covering problems, set partitioning problems, set packing problems, the Chinese postman problem, traveling salesman problems, problems containing either-or constraints, problems containing if-then constraints, combinatorial problems, assignment problems, network design problems, graph-theoretical problems, separable nonlinear programming problems, . . .

d.       Relationships between linear programming and integer programming

e.       The branch-and-bound algorithm for solving pure integer programming problems

f.         The branch-and-bound algorithm for solving mixed integer programming problems

g.       Solution of knapsack problems by the branch-and-bound method

h.       Solution of combinatorial optimization problems by the branch-and-bound method

i.         Implicit enumeration techniques

j.         Cutting plane algorithms

k.       Computer packages

3.       Deterministic Discrete Dynamic Programming

a.       Characteristics of dynamic programming

b.       Bellman's principle of optimality

c.       Formulation of dynamic programming recursions

d.       Dynamic programming formulation of network flow, combinatorial, and integer programming problems

e.       Applications of dynamic programming: equipment inspection and replacement problems, resource allocation problems, optimal capacity expansion problems, cargo-loading problems, sequencing problems, scheduling problems, dynamic inventory control problems, multistage production planning problems, discrete optimal control problems, . . .

4.       Computational Complexity

a.       Polynomial-time algorithms

b.       Nondeterministic algorithms

c.       NP-complete problems

Home
CS Courses
MA Courses
MA Ed Courses
MA Graduate Courses
MAED Graduate Courses

MA090 MA100 MA103 MA104 MA105 MA106 MA115 MA161 MA163 MA171 MA211 MA240 MA265 MA271 MA275 MA295 MA297 MA298 MA310 MA312 MA331 MA340 MA361 MA363 MA366 MA371 MA380 MA381 MA410 MA412 MA462 MA464 MA465 MA472 MA473 MA475 MA478 MA481 MA482 MA483 MA484 MA485 MA490 MA491 MA495 MA496 MA497 MA498