Solver Platform SDK - Monte Carlo SimulationMonte Carlo SimulationThe Solver Platform SDK includes complete facilities for creating models in C++, C#, VB.NET, Visual Basic, Java, and MATLAB with uncertain variables and functions, running Monte Carlo simulations, and collecting statistics from the Monte Carlo samples. You could pay $1,200 or more for other software libraries that provide only probability distribution modeling and Monte Carlo simulation -- but in the Solver Platform SDK, all this power is included at no extra cost.
Sampling MethodsThe Solver Platform SDK includes four different, high quality random number generators, covering the full spectrum of tradeoffs between long periods and statistical independence of the samples:
Monte Carlo samples are generated from a wide range of probability distributions, using any of three methods:
Sobol numbers are an innovation in the Solver Platform SDK that's not found in other software for Monte Carlo simulation. They are widely used by application developers in quantitative finance. For low to moderate dimensional problems, Sobol numbers offer the "best of both worlds" -- the speed of Standard Monte Carlo with the "coverage" of Latin Hypercube sampling. Probability DistributionsThe Solver Platform SDK provides a complete set of analytic probability distributions. And you can specify shifting and truncation to customize your probability distributions.
You can easily create an instance of a Distribution object, with the properties of any of these probability distributions. By simply accessing properties of this object, you can obtain the probability density (PDF) or cumulative density (CDF) function, or analytic values for the moments of the distribution, based on its type and parameters. Distribution FittingThe Solver Platform SDK makes it easy to fit an analytic distribution and its parameters to sample data. You can specify the distribution type and ask the SDK to find the best-fitting parameters, or you can just supply the sample data, specify continuous or discrete, and let the SDK automatically choose the best-fitting distribution type and the best parameters. This is illustrated in the Example Source Code. The SDK can fit 22 different distributions (from the list of 38 above), including both continuous and discrete distributions. Correlated DistributionsThe Solver Platform SDK makes it easy to create correlated input distributions, by creating a DoubleMatrix object that specifies rank correlations between two or more distributions. You simply assign this correlation matrix to the appropriate property of the Model object. This is illustrated in the Example Source Code. To consistently specify correlations among multiple distributions, a rank correlation matrix must be positive semidefinite (PSD). Users often have "desired correlations" among the key distributions, but insufficient information to fill out the matrix. The Solver Platform SDK includes methods to test a DoubleMatrix for positive semidefiniteness (IsPSD) and to transform a non-PSD matrix into a "nearest" matrix that is positive semidefinite (MakePSD). Unlike other software, the SDK can find a PSD matrix that leaves your "desired correlations" among key distributions nearly unchanged. Statistical ResultsIn the Solver Platform SDK, you can obtain any of the statistics listed below for both uncertain variables and uncertain functions, by simply accessing the appropriate property or method of a Statistics object embedded in each Variable and Function object. You can obtain confidence intervals (CI) for the mean or standard deviation, or the number of Monte Carlo trials required to obtain a result within your specified confidence interval.
100 percentile values (0 to 99) are computed for each variable and function. In addition, you can obtain the observed correlation in the Monte Carlo sample between any two uncertain functions, or between an uncertain function and an uncertain variable, by accessing a property of the Function object. Risk MeasuresThe Solver Platform SDK goes beyond computation of "standard moments" to compute several risk measures popular in quantitative finance applications. Again you can obtain these values by simply accessing the appropriate property or method of a Statistics object embedded in each Variable and Function object.
|
Platform Capabilities What's New in Version 9.0 Language/OS Support Monte Carlo Simulation Plug-in Solver Engines
Risk Solver Platform is an integrated superset of Premium Solver Platform and Risk Solver with best-of-breed simulation, best-of-breed optimization, and new stochastic programming and robust optimization capabilities you can't get anywhere else. Premium Solver Platform, our premier tool for conventional optimization, uses new PSI Technology to automatically analyze and transform your Excel model. It solves every type and size of problem, using built-in and plug-in Solver Engines. Premium Solver, our basic upgrade for the Excel Solver, solves up to 10X larger problems at much higher speed, and solves new kinds of problems with our Evolutionary Solver.
Risk Solver Platform is an integrated superset of Premium Solver Platform and Risk Solver with best-of-breed simulation, best-of-breed optimization, and new stochastic programming and robust optimization capabilities you can't get anywhere else. Risk Solver Premium integrates all the features of Premium Solver and Risk Solver, with far superior optimization and higher performance, easier to use simulation, for about the same price as competitive products for Monte Carlo simulation. Risk Solver is the easiest and fastest tool available for risk analysis of your Excel models, using Monte Carlo simulation. Evaluate thousands of scenarios in seconds, and see instantly updated charts and statistics, each time you ask "what if". Software Developer Tools: Solver Platform SDK makes it easy to solve any type or size of optimization problem in your Visual Basic, VB.NET, C/C++, C#, Java, or MATLAB program. And it's easy to deploy your application with our flexible licensing for software vendors and corporate developers. |


