Developing Models using Solver Foundation
Whether you use Solver Foundation for operations research, business planning, risk modeling, or scheduling, you have many ways to develop models. You can use an Excel add-in, you can write code directly in Visual Studio by using the Optimization Modeling Language, or you can integrate Solver Foundation Services into your application.
Solver Foundation Excel Add-In
You can use the Solver Foundation Excel add-in to create and solve models. The Solver Foundation Ribbon includes the following functionality:
Importing models in the .oml, .mps, .qps, and .smps file formats.
Exporting models in the .oml, .mps, and .qps file formats.
Deploying models in the .omlx file format and C# code.
Configuring the level of detail in reports, including infeasibility and sensitivity information.
Adjusting simulation options, such as Monte Carlo or Latin Hypercube.
Verifying and solving a model.
In addition, you can use the Solver Foundation modeling pane for data binding and quantitative modeling. You can bind data to parameters and decisions; add goals, constraints, and directives; and view the model in the OML format.
For more information, see Modeling in Excel.
Optimization Modeling Language
Solver Foundation includes an algebraic modeling language called Optimization Modeling Language (OML) that is designed for modeling and solving models. The language includes identifiers, comments, string literals, Boolean constants, and arbitrary numeric literals. For more information, see Optimization Modeling Language (OML).
Solver Foundation Services
If you prefer to develop standalone applications, you can use the Solver Foundation Services (SFS) layer to access solvers and services and to solve models. The SFS layer provides some abstraction away from the solver level. Instead of interacting directly with a solver, you can create models by using the Decision, Constraint, and Goal objects. For more information, see Developing with Solver Foundation Services (SFS).
Solver Foundation Solvers
Advanced developers can interact directly with Solver Foundation solvers such as the simplex solver to create and solve models. For more information, see Developing By Using Solver Foundation Solvers.