A Network Optimization Solution Using SAS/OR® Tools for the Department of the Army Branching Problem
This paper will demonstrate the use of SAS® and SAS/OR® to solve a long standing Army problem of assigning ROTC cadets to their initial basic branch (Infantry, Armor, etc). The paper starts with a problem statement, describes the problem as a network optimization (maximization) and then shows model results after adding each of the constraints from the problem statement. The paper summarizes with comments about why a network optimization is a good solution for this type of problem. Finally, the paper makes the assertion that SAS® data manipulation and statistics procedures are an additional benefit provided by the SAS/OR® solution not found elsewhere.
View the SGF 2010 paper.
You can also see the SGF 2010 Presentation.
Sample code in a zip file, Optm.zip with sample data. n1.sas is for PROC NETFLOW and o1.sas is for PROC OPTMODEL. Filename references are setup for a Unix installation.
Sample code in a zip file, Optm2.zip with sample data. n1.sas is for PROC NETFLOW and o1.sas is for PROC OPTMODEL. In this example, the NETFLOW solution matches the simple OPTMODEL solution exactly. This adjustment includes deleting arcs from the NETFLOW model that prevent cadets from going to ineligible branches. Note that in the Optm.zip solution, no cadets actually get ineligible assignments, so both .zip files contain correct NETFLOW solutions, but Optm2.zip explains the slight difference between the simple OPTMODEL and NETFLOW solutions. Filename references are setup for a Unix installation as before.
An immutable copy of the documents above.