The RDK offers access to the risk analysis and distribution fitting technology available in the world’s most widely-used risk analysis tool - @RISK for Excel. It can be used to easily create custom applications that include Monte Carlo simulation, such as financial modeling tools, corporate financial systems, and industry-specific programs.
Unlike the Excel version of @RISK, the RDK does not require a spreadsheet to run simulations. This means user models can be larger and execute faster. All simulation results can be accessed programmatically, directly in the developer’s application. Two powerful charting engines—that of @RISK and Microsoft Excel with its extensive customization capabilities—can be used to generate graphs of simulation results.
RDK applications can be run in a desktop, network server, or web environment. (Click here for examples.) The RDK fully supports multithreading to allow the development of scalable web applications. Models built using the RDK can run simulations and generate results entirely in the user’s program or the @RISK Interface can be used to display reports and graphs on simulation results.
Why Use the RDK?
For many users the spreadsheet is the preferred risk modeling environment. However, many times an application written in a standard programming language needs Monte Carlo simulation or distribution fitting capabilities. The application will have its own user interface, variables and model calculations. In addition, a developer may want to allow users to access the application over a corporate network or over the Internet.
The RDK allows custom applications such as these to run simulations and generate result graphs and statistics. Applications written with the RDK will often run faster and can contain larger numbers of distributions and outputs when compared with models written in spreadsheet versions of @RISK. This is because RDK applications are compiled and do not contain additional routines executed during spreadsheet recalculation.
Distribute Custom Solutions Over the Web
The RDK allows you to streamline the distribution of your risk analysis solutions through enterprise-wide web deployment. Server-based risk analysis models—such as corporate financial models, engineering applications, and financial planning tools—can be accessed over the Internet from any browser, allowing users to enter model parameters and inputs, run simulations, and view results and graphs. Model structure, logic, and RDK simulation libraries are stored on the server, ensuring consistency for all end-users and removing local installation and support issues.
ActiveX Interface Makes Integrating Risk Analysis Easy
The RDK and included BestFit Developer Kit (BDK) now ship with two programming interfaces: the new ActiveX interface and the standard .DLL interface.
ActiveX Interface
The new ActiveX/COM Interface makes development of custom risk analysis solutions easy. An intuitive set of methods and properties allow the developer to quickly set up a simulation model in a custom application – defining input probability distributions, simulation settings, and model logic. (See a list of methods and properties, by object, here.) The RDK also makes it easy to handle events during a simulation run and process and display results. This interface can be used in any ActiveX-aware programming environment such as Visual Basic or C++. Example programs are included.
.NET AND ACTIVEX
Because the .NET environment offers the COM Interoperability feature, .NET programmers can also take advantage of the easy-to-use ActiveX/COM interface. Examples in two .NET programming languages—C# and Visual Basic .NET—are included.
DLL Interface
The RDK DLL Interface includes a library of functions that allows you to build Monte Carlo simulation models using C, Visual Basic or other programming languages. Use of the RDK function library requires an installed programming language and knowledge of programming techniques. You are not, however, restricted to using these languages for developing your simulations. Any Windows-based language which can call .DLL functions can be used for developing RDK applications using the RDK DLL Interface. Example programs in C++ and Visual Basic are included.
Monte Carlo Simulation and the RDK
Monte Carlo simulation is a quantitative risk analysis technique. Uncertain inputs in a Monte Carlo model are represented by probability distributions of possible values. The results you are interested in are distributions of possible outcomes; that is, the range of possible outcomes that could occur and the likelihood of any outcome occurring. These results are generated by letting your computer recalculate your model over and over again, each time using different randomly selected sets of values from the probability distributions. In effect, the computer is trying all valid combinations of inputs to simulate all possible outcomes. This is like running hundreds or thousands of “What-if” analyses on your model, all at one sitting. The results are distributions of possible outcomes that you can use to determine the probabilities of certain results occurring.
Executing a Monte Carlo simulation using the RDK is done by repeatedly executing the portion of your program that calculates your model. Each time the model is executed (an iteration), different values are sampled from the distribution functions used in your model. These sampled values are used in calculating a new set of model results. The RDK automatically stores the results from each iteration. A simulation will execute the number of iterations you select. A run in the RDK executes the number of simulations you specify, with each simulation calculating the desired number of iterations.
BestFit Developer Kit Included for Distribution Fitting
The RDK includes the BestFit Developer’s Kit (BDK) which allows you to fit probability distribution functions to data in programs written in C, C#, Visual Basic, or other Windows or .NET programming languages. The BDK can be used to select probability distributions to be used in an RDK model based on historical or sampled data. Fitting distributions to data sets focuses a model and helps to accurately define the uncertain factors, thereby saving time and avoiding costly errors. All of the fitting methods, distribution functions, and many graphs in BestFit (which is integrated with @RISK Professional and Industrial editions) are included with the BDK. Using the BDK, you can develop your own custom applications that use the same sophisticated fitting techniques.
BestFit traditionally is used for fitting distributions to data in Windows. Typically, BestFit is used in conjunction with @RISK for fitting distributions to data in spreadsheet risk analysis models. However, as with the RDK, some users have applications written in a standard programming language that they wish to add distribution fitting capabilities to. The BDK allows a custom application to fit distributions to data and generate statistics on fit results.
Fitting done in applications written with the BDK will often run faster than fitting done in BestFit or in spreadsheet versions of @RISK. Like the RDK, this is because BDK applications are compiled and do not contain the additional processing that occurs when the BestFit or @RISK Interface is used.
| Typical Applications that Can Incorporate the RDK |
Capital Budgeting
|
Insurance |
| Chemical Process Engineering |
Mergers & Acquisitions |
| Corporate Planning |
Mortgage Pricing |
| Cost Analysis |
Operation Research Analysis |
| Energy Production and Pricing |
Petroleum and Mining Resource Evaluations |
| Engineering Reliability |
R&D Assessment |
| Environmental Impacts & Policy |
Toxicological Analysis |
| Foreign Exchange Modeling |
Transportation Safety and Investments |
| Health Risk Assessment |
And any other field where there is uncertainty |
RDK Distribution Functions
The RDK allows you to replace uncertain values in your simulation model with any of 37 @RISK probability distribution functions which represent a range of possible values. Available distribution types include:
- Beta
- Beta General
- Beta-Subjective
- Binomial
- Chi-Square
- Cummulative
- Discrete
- Discrete Uniform
- Error Function
- Erlang
- Exponential
- Extreme Value/Gumbel
- Gamma
|
- General
- Geometric
- Histogram
- Hypergeometric
- Integer Uniform
- Inverse Gaussian/Wald
- Logistic
- Log-Logistic
- Lognormal
- Lognormal2
- Negative Binomial
- Normal
- Pareto
|
- Pareto 2
- Pearson V
- Pearson VI
- PERT
- Poisson
- Rayleigh
- Student's t
- Triangular
- Triangular General
- Uniform
- Weibull
|
Development and Deployment of RDK Applications
The RDK Developer Edition gives you everything you need to get up and running with your own risk analysis application. Affordable and flexible, it is ideal for developing and testing custom risk solutions. Multiple Developer Kits can be purchased to run applications in small workgroups. The Developer Edition includes:
DLL and ActiveX functions to perform all @RISK for Excel and BestFit features as described above
Examples in Windows and .NET programming languages
Installer for deployment of an unlimited number of 30-day demo licenses of any application developed using the RDK
Note: Applications developed using the Developer Kit cannot be left running unattended for long periods or in a production environment. The Developer's Kit is designed for software development and testing only.
|