A “service” is intended to serve customers. For Optimization Services, there are mainly three categories of customers:
- Application developers create and build system components such as modeling language environments and solvers as part of a larger optimization system. The components together take care of such generic functions as managing data, solving optimization problems, and presenting solutions in a graphical interface. Optimization Services provides a set of specific guidelines for application developers to implement their part of an optimization system. The “state-of-the-art” design and the resulted standardization extensively and drastically reduce the development time and effort for the developers while significantly improving software and system design qualities. Application providers are the major intended audience of this thesis.
- Modelers work in a modeling language environment or in an environment provided by some graphical user interface to build optimization models and get acceptable solutions. From the perspective of Optimization Services, modelers are the immediate customers and beneficiaries; they can now solely concentrate on building more robust models by letting Optimization Services take care of the interfacing and solution parts. Modelers should not read this thesis in detail, but they should be aware of what Optimization Services is and how Optimization Services can benefit them.
- Users run application packages that perform optimization at some stage through the optimization system. Users are usually the ultimate customers of any optimization system. With Optimization Services, users may not even realize that they are running optimization system components such as solvers, although they are often aware of optimization goals, such as minimizing costs or maximizing profits. Although not directly interfacing with Optimization Services, users will experience higher quality performance and results from of the application packages that they are using. Solutions are more likely and more quickly to be found as the application developers now have a much wider range of optimization resources to reply upon and modelers can concentrate on building better optimization models that more accurately reflect the users’ business problems.