On software design for stochastic processors
Point 1 addressed the model globally. The user should not have to explicitly set a flag to generate stochastic data. The same requirement does not apply at the individual variable level. The best modeling platforms let the end user toggle sets of stochastic definitions, or even individual data elements, from deterministic to stochastic and then back to deterministic again. A common complaint of stochastic optimization is that, if the numbers are randomly generated, then how can the same solution be recreated if needed i.
Modern optimization software solves this issue easily be storing seed values with each solve — e. As long as a copy of the model is saved so that all deterministic input data remains the same, a seed value can be input in the future in order to force the same prior solution. This is particularly useful for Monte Carlo simulations where some additional processes are omitted until the best overall solution is found.
Then the seed value can be retrieved and the model re-solved with all additional processes executed. The best optimization modeling platforms, like those found in fifth-generation languages, include graphical user interface visualizations that will identify and highlight where active stochastic definitions exist in the model, what they are, and how they affect the remainder of the model.
Look for an optimization platform with built-in data checking. Generating stochastic values, like those used for variable constraints, can easily cause data errors. For example, if a generated minimum constraint value exceeds a deterministic maximum constraint value, then any software package that requires the modeler to code data checks from scratch will take much longer. The best optimization modeling platforms include a large library of built-in data checks, which execute between the time the random values are generated and when the model is solved.
If a generated random value is deemed inconsistent with other data or likely to cause an infeasibility, an error message is generated and the user is alerted. Along the same lines as defining stochastic data, look for optimization modeling platforms that enables the process of easily running Monte Carlo simulations. Preferably, any script needed to automate this process should be very simple to create — e.
Anything overly complicated should be avoided since too much complexity will make supporting it much more difficult in the future. Ideally, automating the process should be straightforward with very little documentation needed to get started. It is my hope that this list helps to better inform those who are currently running optimization-based Monte Carlo simulations and those who are seeking software solutions for such simulations.
By using the most capable software solution, modelers and end users can achieve significantly better results in much less time than was previously ever possible. We offer a suite of supply chain planning, network optimization, order allocation, and general planning solutions that are purpose-built for business users rather than data scientists.
Just click the button below, and grab a time slot that works for your schedule. Get in Touch. Code-free Solutions are Taking Over Stochastic optimization problems are normally solved by using Monte Carlo simulation, which is a batch process of n solves, each time randomly generating different objective function coefficients, matrix coefficients, or bound values within the specified distribution function and parameters.
Based on my past experience, the typical stochastic modeling exercise using a third-generation language or a fourth-generation algebraic modeling language goes something like this: The deterministic model is constructed and validated after some number of weeks or months. The algebraic matrix code might still be somewhat understandable to someone trained in the software, but not intimately familiar with the model.
The deterministic model is then made stochastic with the additional requirement that every solution must be stored in a tree for analysis and retrieval. Such processors with relaxed constraints have often been referred to as stochastic processors [10, 15, 11]. In this paper we present three approaches for building applications for such processors. The first approach relies on relaxing the correctness of the application based upon an analysis of application characteristics.
The second approach relies upon detecting and then correcting faults within the application as they arise. Web of Science. Let us know here. System error. Please try again! How was the reading experience on this article? The text was blurry Page doesn't load Other:.
Details Include any more information that will help us locate the issue and fix it faster for you. Thank you for submitting a report! Submitting a report will send us an email through our customer support system. Submit report Close. ISBN doi Recommended Articles Loading There are no references for this article. Read and print from thousands of top scholarly journals.
0コメント