Analytica is a visual software developed by Lumina Decision Systems to create, analyze and communicate quantitative decision models.Granger Morgan and Max Henrion (1998), Analytica:A Software Tool for Uncertainty Analysis and Model Communication , Chapter 10 of Uncertainty: A Guide to Dealing with Uncertainty in Quantitative Risk and Policy Analysis, second edition, Cambridge University Press, New York. It combines hierarchical influence diagrams to visually create and view models, intelligent arrays to work with multidimensional data, Monte Carlo simulation to analyze risk and uncertainty, and optimization, including linear and nonlinear programming. Its design is based on ideas from the field of decision analysis. As a computer language, it combines a declarative programming (non-procedural programming) structure for referential transparency, array abstraction, and automatic dependency maintenance for efficient sequencing of computation.
Hierarchical influence diagrams Analytica models are organized as influence diagrams. Variables (and other objects) appear as nodes of various shapes on a diagram, connected by arrows that provide a visual representation of dependencies. Analytica influence diagrams may be hierarchical, in which a single module node on a diagram represents an entire sub-model.
Hierarchical influence diagrams in Analytica serve as an organizational tool. Because the visual layout of an influence diagram matches these natural human abilities both spatially and in the level of abstraction, people are able to take in more information about a model's structure and organization at a glance than is possible with less visual paradigms, such as Spreadsheets and Mathematical expressions. Managing the structure and organization of a large model can be a significant part of the modeling process, but is substantially aided by the visualization of influence diagrams.
Influence diagrams also serve as a tool for communication. Once a quantitative model has been created and its final results computed, it is often the case that an understanding of how the results are obtained, and how various assumptions impact the results, is far more important than the specific numbers computed. Analytica gives users the ability to help target audiences understand these aspects within their models. The visual representation of an influence diagram quickly communicates an understanding at a level of abstraction that is normally more appropriate than detailed representations such as mathematical expressions or cell formulas. When more detail is desired, users can drill down to increasing levels of detail, speeded by the visual depiction of the model's structure.
The existence of an easily understandable and transparent model supports communication and debate within an organization, and this effect is one of the primary benefits of quantitative model building. When all interested parties are able to understand a common model structure, debates and discussions will often focus more directly on specific assumptions, can cut down on "cross-talk", and therefore lead to more productive interactions within the organization. The influence diagram serves as a graphical representation that can help to make models accessible to people at different levels.
Intelligent multidimensional arrays Analytica uses index objects to track the dimensions of multidimensional arrays. An index object has a name and a list of elements. When two multidimensional values are combined, for example in an expression such as
Profit = Revenue − Expenses
where Revenue and Expenses are each multidimensional, Analytica repeats the profit calculation over each dimension, but recognizes when same dimension occurs in both values and treats it as the same dimension during the calculation, in a process called intelligent array abstraction. Unlike most programming languages, there is no inherent ordering to the dimensions in a multidimensional array. This avoids duplicated formulas and explicit FOR loops, both common sources of modeling errors. The simplified expressions made possible by intelligent array abstraction allow the model to be more accessible, interpretable, and transparent.
Another consequence of intelligent array abstraction is that new dimensions can be introduced or removed from an existing model, without requiring changes to the model structure or changes to variable definitions. For example, while creating a model, the model builder might assume a particular variable, for example Discounted rate, contains a single number. Later, after constructing a model, a user might replace the single number with a table of numbers, perhaps Discount rate broken down by Country and by Economic scenario. These new divisions may reflect the fact that the effective discount rate is not the same for international divisions of a company, and that different rates are applicable to different hypothetical scenarios. Analytica automatically propagates these new dimensions to any results that depend upon Discount rate, so for example, the result for Net present value will become multidimensional and contain these new dimensions. In essence, Analytica repeats the same calculation using the discount rate for each possible combination of Country and Economic scenario.
This flexibility is important when exploring computation tradeoffs between the level of detail, computation time, available data, and overall size or dimensionality of parametric spaces. Such adjustments are common after models have been fully constructed as a way of exploring what-if scenarios and overall relationships between variables.
Uncertainty analysis Incorporating uncertainty into model outputs helps to provide more realistic and informative projections. Uncertain quantities in Analytica can be specified using a distribution function. When evaluated, distributions are sampled using either Latin hypercube, Monte Carlo, or Sobol sampling, then the samples are propagated through the computations to the results. The sampled result distribution and summary statistics can then be viewed directly (mean, Fractile bands, probability density function (PDF), cumulative distribution function (CDF)), Analytica supports collaborative decision analysis and probability management through the use of the SIP Math standard.The SIPmath Standard Paul D. Kaplan and Sam Savage (2011), Monte Carlo, A Lightbulb for Illuminating Uncertainty , in Investments & Wealth Monitor
Systems dynamics modeling System dynamics is an approach to simulating the behavior of complex systems over time. It deals with feedback loops and time delays on the behavior of the entire system. The Dynamic() function in Analytica allows definition of variables with cyclic dependencies, such as feedback loops. It expands the influence diagram notation, which does not normally allow cycles. At least one link in each cycle includes a time lag, depicted as a gray influence arrow to distinguish it from standard black arrows without time lags.
As a programming language Analytica includes a general language of operators and functions for expressing mathematical relationships among variables. Users can define functions and libraries to extend the language.
Analytica has several features as a programming language designed to make it easy to use for quantitative modeling:
It is a visual programming language, where users view programs (or "models") as influence diagrams, which they create and edit visually by adding and linking nodes. It is a declarative language, meaning that a model declares a definition for each variable without specifying an execution sequence as required by conventional imperative languages. Analytica determines a correct and efficient execution sequence using the dependency graph. It is a referentially transparent functional language, in that execution of functions and variables have no side effects i.e. changing other variables. Analytica is an array programming language, where operations and functions generalize to work on multidimensional arrays.
Applications of Analytica
Analytica has been used for policy analysis, business modeling, and risk analysis.Jun Long, Baruch Fischhoff (2000), Setting Risk Priorities: A Formal Model Risk Analysis, Risk Analysis 20(3):339–352. Areas in which Analytica has been applied include energy,Ye Li and H. Keith Florig (Sept. 2006), Modeling the Operation and Maintenance Costs of a Large Scale Tidal Current Turbine Farm, Oceans (2006):1-6Jouni T Tuomisto and Marko Tainio (2005), An economic way of reducing health, environmental, and other pressures of urban traffic: a decision analysis on trip aggregation, BMC Public Health 5:123. Yurika Nishioka, Jonathan I. Levy, Gregory A. Norris, Andrew Wilson, Patrick Hofstetter, John D. Spengler (Oct 2002), Integrating Risk Assessment and Life Cycle Assessment: A Case Study of Insulation, Risk Analysis 22(5):1003–1017. health and pharmaceuticals,Davis Bu, Eric Pan, Janice Walker, Julia Adler-Milstein, David Kendrick, Julie M. Hook, Caitlin M. Cusack, David W. Bates, and Blackford Middleton (2007), Benefits of Information Technology–Enabled Diabetes Management, Diabetes Care 30:1137–1142, American Diabetes Association.E. Ekaette, R.C. Lee, K-L Kelly, P. Dunscombe (Aug 2006), A Monte Carlo simulation approach to the characterization of uncertainties in cancer staging and radiation treatment decisions, Journal of the Operational Research Society 58:177–185.Lyon, Joseph L.; Alder, Stephen C.; Stone, Mary Bishop; Scholl, Alan; Reading, James C.; Holubkov, Richard; Sheng, Xiaoming; White, George L. Jr; Hegmann, Kurt T.; Anspaugh, Lynn; Hoffman, F Owen; Simon, Steven L.; Thomas, Brian; Carroll, Raymond; Meikle, A Wayne (Nov 2006),Thyroid Disease Associated With Exposure to the Nevada Nuclear Weapons Test Site Radiation: A Reevaluation Based on Corrected Dosimetry and Examination Data, Epidemiology 17(6):604–614.Negar Elmieh, Hadi Dowlatabadi, Liz Casman (Jan 2006), A model for Probabilistic Assessment of Malathion Spray Exposures (PAMSE) in British Columbia , CMU EEP.DC Kendrick, D Bu, E Pan, B Middleton (2007), Crossing the Evidence Chasm: Building Evidence Bridges from Process Changes to Clinical Outcomes, Journal of the American Medical Informatics Association, Elsevier.Jan Walker, Eric Pan, Douglas Johnston, Julia Adler-Milstein, David W. Bates, and Blackford Middleton (19 Jan 2005), The Value Of Health Care Information Exchange And Interoperability, Health Affairs.Doug Johnston, Eric Pan, Blackford Middleton, Finding the Value in Healthcare Information Technologies , Center for Information Technology Leadership (C!TL) whitepaper.Chrisman, L., Langley, P., Bay, S., and Pohorille, A. (Jan 2003), "Incorporating biological knowledge into evaluation of causal regulatory hypotheses", Pacific Symposium on Biocomputing (PSB).Jan Walker, Eric Pan, Douglas Johnson, Julia Adler-Milstein, David W. Bates and Blackford Middleton (2005), The Value of Health Care Information and Exchange And Interoperability" Health Affairs.Steve Lohr, Road Map to a Digital System of Health Records, New York Times, January 29, 2005