Search Wiki:
Solver Foundation is a Microsoft framework designed to deliver critical business insight tools to CxOs, quantitative analysts and developers of mission-critical systems. Traditionally referred to as mathematical programming, these tools provide business intelligence and planning support to organizations seeking maximal competitive advantage.

Whether helping to schedule large conferences, optimize global supply chains or derive maximal profit for services such as online advertizing and portfolio management – Solver Foundation provides the modeling, solving and programming tools. Built entirely with Microsoft’s .NET technologies and able to seamlessly integrate third party solver technologies (new in version 1.1), Solver Foundation provides a complete solution tool chain. Solver Foundation also provides a high productivity environment for information workers and analysts in addition to deep support for developers. Critical business and engineering decision making can be integrated back into the systems that drive profit and competitive advantage in record time. Companies and organizations needing the best and most efficient tools to stay competitive have a new toolset stretching from Office through Visual Studio to their production environments: Solver Foundation.

Solver Foundation is a pure, managed code runtime for mathematical programming, modeling, and optimization. This .NET/CLR based framework provides a rich set of tools, services, and engines to aid companies in their continuous quest for operational efficiency, profit maximization, and risk management. Solver Foundation is designed to help businesses make strategic decisions. It affords its users the advantage of easy to use tools, numerically stable solver technologies and deep integration with ubiquitous information worker systems like Microsoft Office.

Solver Foundation uses a declarative programming model, consisting of simple compatible elements that are solved by application of solvers, meta-heuristics, search techniques, and combinatorial optimization mechanisms to accelerate the solution finding process. Building a model in Solver Foundation is as simple as specifying the decisions to be made, constraints to be respected, the goals to be used to evaluate candidate proposals (solutions) and the data to be processed by the model (historical or projected parameters). This can be done from any CLS-compatible language and the modeler does not need to understand anything about the details of solver technologies or search strategies. The separation of concerns is total, providing a high degree of modularity.

Solver Foundation consists of a series of layered services that efficiently divide the work of modeling and solving. The following system diagram describes the extensible architecture.


As innovations in solver technology emerge, they can be transparently and easily integrated into the runtime and framework without refactoring or recompilation. The service layers include programming and modeling services for NETfx Developers and Excel 2007 users, services for model interchange, feasibility analysis, declarative parallel solving, and extensibility services for third party solver integration.

The main developer interface is the Solver Foundation Services (SFS): essentially a runtime API that augments the capabilities of individual solvers with framework-level model analysis and meta-heuristics. In short, we abstract the complexities of optimization so users can focus on modeling and solving their decision problems. Key features in the SFS include:
    • Easy data binding. SFS allows easy LINQ data binding of model parameters and delivery of results in multiple formats
    • Solver/Capability Selection. SFS will automatically analyze models and determine which solver is most appropriate. Advanced Modelers can optionally choose specific solvers, and solver attributes
    • Transparent Parallelism. SFS will manage all threading, many-core, synchronization, and scheduling around the solvers and model execution
    • Solver Plug-in Capability (new in v1.1). Solver Foundation allows new or existing 3rd party solvers to plug into the SFS directly, avoiding the need to learn a new modeling language or the significant overhead in managing solver specific solutions. In v1.1, we included a collection of certified partner wrappers for Gurobi and Mosek ™. In addition, we included reference wrappers for CPLEX ® , Xpress-MP ™, and lp_solve
    • Model/Solver Reports and Analysis. SFS can report information about solver behavior and results, and provide additional information about solutions, including sensitivity
    • Type safe version of the Optimization Modeling Language (OML). The SFS interface provides the same facilities as OML, but adds type checking and higher-level constructs

Solver Foundation also comes with a Microsoft Office add-in via Excel that combines the power of Solver Foundation and Excel to provide a complete modeling environment. Key features in the Excel add-in include:
    • Modeling Editor. We integrated a modeling pane to vastly simplify the modeling experience. We have also included a modeling syntax checker and other similar features exposed through our MSF ribbon bar for Excel
    • Excel Cell Binding. Range binding of static or dynamic data to the model
    • Automatic Results and Report generation. All results, reports, and sensitivity details are displayed on separate Excel sheets for easy viewing or integration into workflow systems
    • Leverages the SFS. By leveraging the SFS, Solver Foundation for excel will continue to see functional parity. All solvers currently enabled within the SFS are exposed through the Add-in
    • Import/Export capabilities. MSF for excel supports MPS, QPS, and OML formats

At the base of Solver Foundation is a collection of solvers: engines embodying numerical, symbolic and search algorithms. Use of the solvers does not require advanced training and they are designed to be used from the Solver Foundation Services and Modeling layers of the system. Low-level access to the solvers is also provided. Solver Foundation’s intrinsic solvers are written in managed code , covering several families of numerical and symbolic programming.
    • Revised Simplex Linear Programming (Primal and Dual Simplex)
    • Interior Point Method Linear and Quadratic Programming
    • Constraint Programming with Exhaustive Tree Search, Local Search, and Metaheuristic Techniques
    • Compact, Quasi-Newton (L-BFGS), Unconstrained Nonlinear Programming
    • Mixed Integer Programming. In this release, we have partnered with Gurobi Optimization, a certified Solver Foundation partner, to provide stat-of-the-art Mixed Integer Programming via our Solver plug-in SDK. The Gurobi MIP solver is included in this release as the default MIP solver

An extensive set of documentation and samples are included in each edition of Solver Foundation – please refer to the specific installation instructions for more details.

-Solver Foundation Team
Last edited Feb 13 2009 at 7:28 PM  by joberon, version 35
Kirby wrote  Nov 7 2010 at 3:30 AM  

Page view tracker