Reprinted from Compass News, number 2, spring 1996 Total Quality Meats (not the company's real name) produces pork and beef consumer products for two major companies. It also makes a number of private label brands. The main product line comprises about 75 different types of beef patties of the type that are sold in supermarkets and served in fast food restaurants.
Each unique product is made according to a flexible recipe. The recipe specifies a permissible percentage range of each input material (beef trims, binder materials, water). A feasible output material must satisfy constraints on the percentage of fat, moisture and protein of the blend. Because the price of the meat ingredients is very volatile, the problem in its simplest form is that of finding the least cost recipe for each batch that is made. A saving of even 2 cents a pound per batch can reduce weekly costs by $25,000. Thus this is a critical application for the company.
The model framework is essentially that of the classic diet problem. The problem is confounded however by the following real-world constraints:
The initial model was designed and implemented using Advanced Revelation (a PC Pick-based database tool) to store the model data. A LINDO solver was used to get a solution. A custom model generator was written that extracted data from the database and created an ASCII file containing an algebraic representation of the model. The solution was stored in the database by custom code that parsed the print-line images output by the solver.
A year ago management decided to extend the scope of the mathematical model beyond optimizing just the blend optimization step in the production process. The enhanced model would be the backbone of production planning and procurement optimization. The extended model was based on the MONet (Material and Operations Network) model of production processes developed by Dr. J.B. Moore at the University of Waterloo. The company had also committed to use Windows as its platform of choice for all computing applications. This provided an excellent opportunity to make two major changes -- first, to use the facilities of a commercial math programming language to express and solve the model; and second, to use the Microsoft Access database platform to store the input and solution data.
The most important reason for choosing any modeling language was to reduce the dependence of the company on the author for maintaining and enhancing the model. This independence results from the ease of defining, editing and executing a model in a language such as AMPL. As well, a modeling language contains a great deal more built-in functionality than a custom model/matrix generator typically has.
AMPL Plus was chosen for several reasons. First, the ODBC interface to Windows provides and easy way of extracting model constants and parameters from Excel spreadsheets or Access tables. It likewise makes it very easy to store the solver results in these same spreadsheets and/or tables. This interface eliminated logic that previously required over 4,000 lines of complex code. Second, the functionality of AMPL, particularly its powerful set handling capabilities and its network modeling features, have made it easy to express the complex constraint logic in the enhanced model. Third, several of the best and most popular solvers can be used with AMPL Plus, meaning that one can choose the solver that best satisfies constraints related to functionality, the nature of the running environment, and price.
The company is very satisfied with the implementation of the new model. It has provided a new level of decision support for management, a more usable and powerful interface for the operators who run the model up to 50 times a day, and greater peace of mind for the designer/developer who no longer needs to worry about middle-of-the-night phone calls to fix unexpected problems.
The designer/developer referred to is Dr. J.B. Moore, author of the article, a Compass Member Consultant, and Professor of Management Sciences at the University of Waterloo, Canada.
Return to the AMPL cases index.
Return to the AMPL home page.