Build your Python model for artificial intelligence / machine learning (AI/ML), financial and portfolio planning, process simulation, agent-based analysis, or other types of studies, and then use SimWrapper to perform optimization, experimental design, sampling, batch runs, and response surface characterization on your model. Use the analytics, data mining, and graphing tools in SimWrapper to explore your results, or easily export them to Tableau, Qlik, Excel, or other data exploration and visualization frameworks.
Analysts invest large amounts of time and money creating a model, populating it with data, and validating it for use. However, analysts rarely, if ever, retrieve all of the knowledge and insights that the model may yield.
Once you have a model, use SimWrapper to answer questions like:
Answers to these questions are not only important for validating the legitimacy of the model, but they provide key insights for decision makers within the organization, increasing the return on investment of your analyst team and the studies they perform.
SimWrapper can be used to manipulate any combination of binary, integer, discrete, continuous, enumerated, permutation/sequencing, and design inputs to your model. It supports constrained or unconstrained optimization with one or more objectives, and allows linear, nonlinear, or more complex functions as objectives and constraints. For multiple objectives, SimWrapper does not rely on simple weighting schemes that require subjective weightings and yield only a single best result. SimWrapper directly searches for and displays a true efficient frontier of optimial tradeoffs between your competing objectives.
SimWrapper is a cross-platform, Java application that can be used to wrap any model built in Python. You can run it on Windows, Linux, or Mac, wherever you have Java and Python. The user interface guides the user through specifying the model inputs to vary and the outputs to collect. SimWrapper interacts with OptQuest (OptTek’s proprietary optimization engine) to perform optimization, design of experiments, sampling, and batch runs. SimWrapper then uses a library of analytical tools to analyze completed runs and provide information on model sensitivities. SimWrapper also provides two- and three-dimensional plotting of model input parameters and outputs to visually explore the executed runs.
To optimize your Python model simply add some code to your Python model to update input parameters provided by SimWrapper, execute your model, and the pass model outputs back to SimWrapper. Example models are available in Python to get you started. Hooking your model up to SimWrapper can be done in minutes.