Linear Programming in Database
Akira Kawaguchi, Andrew Nagel · InTech eBooks · 2008
Linear programming is a powerful optimization technique and an important field in the areas of science, engineering, and business.Large-scale linear programming problems arise in many practical applications, and solving these problems requires an integration of dataanalysis and data-manipulation capabilities.Database technology has become a central component of today's information systems.Almost every type of organization is now using database systems to store, manipulate, and retrieve data.Nevertheless, little attempt has been made to facilitate general linear programming solvers for database environments.Dozens of sophisticated tools and software libraries that implement linear programming models can be found.But, there is no database-embedded linear programming tool seamlessly and transparently utilized for database processing.The focus of the study in this chapter is to fill this technical gap between data analysis and data manipulation, by solving large-scale linear programming problems with applications built on the database environment.Specifically, this chapter studies the representation of the linear programming model in relational structures, as well as the computational method to solve the linear programming problems.We have developed a set of ready to use stored procedures to solve general linear programming problems.A stored procedure is a group of SQL statements, precompiled and physically stored within a database, thereby having complex logic run inside the database.We show versions of procedures in the open-source MySQL database and commercial Oracle database system.The experiments are performed with several benchmark problems extracted from the Netlib library.Foundations for and preliminary experimental results of this study are presented.