Analytica User Group

Revision as of 23:13, 21 February 2011 by Psanford (Talk | contribs) (Analytica_4.3#Structured_Optimization)

Past Topics >>

The Analytica User Group is a way for Analytica users to support each other by sharing tips and function libraries. It includes a webinar series with tutorials and demonstrations on key Analytica features.

Webinar Series

Analytica User Webinars are a great way to learn about key Analytica features and modeling skills. They are live demos, using Citrix Gotowebinar, and VOIP or your telephone, at your choice. Questions, comments, and tangents are welcome.

There are webinars most weeks, usually on Thursdays at 10am PST (1pm EST). Seats are limited. To sign up for a particular webinar, see "How to Attend" below. Presentations may last anywhere from 20 to 90 minutes (with an estimate provided upfront).

If you missed a User Webinar, don't despair. We usually records them, including audio and screensharing. So, you can replay them any time. See below for the full list.

Recent talks include

Schedule of Upcoming Webinars

Introduction to Structured Optimization

Date and Time: Thursday, Febrary 24, 2011 at 10:00am PST (1:00pm EST, 6:00pm GMT)

Presenter: Paul Sanford

Abstract Analytica 4.3 is now available for beta testing and will be released in early March. The new version includes expanded optimization capabilities and simplified workflow for encoding optimization problems. The new Structured Optimization framework in 4.3 is centered around a new function, DefineOptimization(), which replaces all three of the previous type-specific functions: LPDefine(), QPDefine() and NLPDefine(). It also introduces a new node type, Constraint, which allows you to specify constraints using ordinary expressions. Paul will build up some basic examples using Structured Optimization and field questions from users.

Model building by mouse

Date and Time: (TBD)

Presenter: (TBD)

Abstract

See Model building by mouse for the concept. The talk will also cover the TemplateInput and TemplateOutput attributes first introduced in 4.2 that make template modules possible, and thus expand the potential power and applicability of this modeling technique.

Saving Memory: Controlling when results are (and are not) cached

Date and Time: (TBD)

Presenter: Lonnie Chrisman, Lumina Decision Systems

Abstract

When a variable is computed, Analytica caches the result (i.e., keeps a copy around) so that when the same result is needed later, it does not need to be recomputed. Large array-valued results can end up consuming large amounts of memory, and lead to annoyances such as running out of available memory. There are instances where it isn't really necessary to cache a result -- either it will never be needed a second time, or it isn't a big deal to recompute it, or it is an exact copy of its parent (perhaps because only the result graph settings are different), so that by configuring that variable to not cache its result, or to release its cache as soon as all its children are computed, memory space can be recovered, perhaps allowing larger simulations to be conducted.

Analytica 4.2 introduces a new feature allowing you to configure when results are (or are not) cached. I'll demonstrate how to utilize this feature, and discuss limitations, such as situations where it would be a very bad idea not to cache.

If time allows (it probably will), I'll also throw in two other small memory-related controls new in 4.2. The WhatIf-style functions (WhatIf, WhatIfAll, Dydx, Elasticity, NlpDefine), i.e., functions that compute hypotheticals, have been modified in 4.2 to preserve previously computed values of other variables. This is a nice feature, but can impact tight-memory cases. I'll explain this change and how to avoid the extra memory consumption where appropriate. Second, I'll also show how Analytica's maximum working set size can be configured (on some operating systems), which can be used to keep other applications on your computer highly responsive even when large memory-intensive computations are churning away.

In Analytica 64-bit, you are less likely to encounter the problem of running out of memory, but you still may encounter performance slowdown from huge memory utilization. Some large models, requiring extensive memory resources, run smoothly even when requiring far more memory than there is RAM available, while other result in extensive thrashing, taking very long to evaluate. I've found that differentiating factor has to do with the size of individual arrays within the model. Thrashing tends to occur when a single array consumes more than about 1/3 the available RAM, while if all arrays in the model remain small relative to available RAM, huge memory evaluations often run very smoothly. I'll relate these observations, and what that means with respect to sample size.

This talk is appropriate for advanced Analytica modelers.


The Dynamic Function and Dynamic Loops

Date and Time: (TBD)

Presenter: Lonnie Chrisman, Lumina Decision Systems

Abstract

The Dynamic function in Analytica 4.2 is a bit more flexible than previously. It is now possible for User-Defined Functions to be part of a dynamic loop, and there are cases where it is now possible to operate over the Time index where previous it was not. I'll discuss how dynamic models are evaluated, and how that differs from non-dynamic models, and cover some tricks for tracing evaluation and debugging complex dynamic models (which can often be challenging to debug). I'll also introduce how Dynamic can be used on an index other than the built-in Time index.

IntraTables

Date and Time: (TBD)

Presenter: Lonnie Chrisman, Lumina Decision Systems

Abstract

An IntraTable is a variation of an edit Table, where (like Tables), the cells may contain expressions, but unlike Tables, the expressions in each cell can refer to values of other cells. This may (quite appropriately) conjure up nightmares of spreadsheet hell. While this isn't something you'd want to use nonchalantly, there are cases when the ability to reference other cells within the same table comes with its benefits. Because the IntraTable allows any pattern of references (it doesn't have to be strictly left-to-right, for example), as long as a cell-cycle isn't created, it is possible to encode certain recurrences that would otherwise be quite difficult to encode.

How to Attend

To attend, you need to sign up by contacting Lumina at mailto:webinars@lumina.com. Please sign up at least a day prior. Attendance is limited, so please don't sign up unless you sincerely intend to attend.

These Webinars are FREE to users who have an up-to-date Support for Analytica. If you are unsure, check with mailto:sales@lumina. For those without current support, the fee is US$50.

How to be a Presenter

Being a presenter at an Analytica webinar provides an opportunity to make others in the Analytica community aware of your successes or capabilities. Consultants may find this an opportunity for exposure to others with particular modeling needs. Also, if you are an Analytica aficionado, this is a great opportunity to help others.

If you would like to be a presenter, submit your proposed topic to webinars@lumina.com and possible presentation times (include the time zone). We will schedule the GotoMeeting conference (you do not need a gotoMeeting subscription yourself) and we will make you presenter during the session, allowing you to share your screen while you talk. You will most likely make use of Power Point and a running Analytica during your presentation.

Analytica User Group:(Large Sample Library)

Archive of Past Topics

Visit the Archive of Past Topics for abstracts, example models, and recordings of previous Analytica User Group webinars. Previous topics that have been presented include:

  • Guidelines for Model Transparency
  • Automated Monitoring and Failure Detection
  • Principal Component Analysis (PCA)
  • Internal Rate of Return (IRR) and Modified Internal Rate of Return (MIRR)
  • Bond Portfolio Analysis
  • Net Present Value (NPV)
  • The Analytica Wiki, and How to Contribute
  • Data Center Capacity Planning
  • Modeling the Precision Strike Process
  • The Performance Profiler
  • Variable Stiffness Cubic Splines
  • Introduction to DetermTables
  • Importance Sampling (Bayesian posteriors)
  • Importance Sampling (rare events)
  • Statistical Functions
  • Table Splicing
  • Analytica Web Player
  • SubTables
  • Creating Custom Distribution Functions
  • Using the Check attribute to validate inputs and results
  • The Dynamic Function
  • Logistic Regression
  • Creating Control Panels
  • Statistical Functions
  • Creating Scatter Plots
  • Using Regression
  • New Functions for Reading Directly from an Excel File
  • Advanced Tornado Charts -- when inputs are Array-Valued
  • Using the Analytica Decision Engine (ADE) from ASP.NET
  • OLE Linking
  • Tornado Charts
  • Correlated and Multivariate Distributions
  • Assessment of Probability Distributions
  • Graph Style Templates
  • Sneak preview of Analytica Web Publisher
  • Querying an OLAP server
  • Querying an ODBC relational database
  • Self-Indexes, Lists and Implicit Dimensions
  • Flattening and Unflattening of Arrays
  • Introduction to Arrays and Array Abstraction
  • Local Indexes
  • The Iterate Function
  • The Reference and Dereference Operators
  • Modeling Utility Tariffs in Analytica
  • Modeling Energy Efficiency in Large Data Centers
  • Calling External Applications
  • Introduction to Linear and Quadratic Programming
  • Non-Linear Optimization
  • Writing User-Defined Functions
  • Modeling Markov Processes in Analytica
  • Manipulating Dates in Analytica
  • Button Scripting
  • Manipulating Indexes and Arrays in Analytica Expressions
  • Edit Table Enhancements in Analytica 4.0
  • Handles and Meta-Inference

Potential future topics

If you would like to see a webinar on a given topic, please feel free to add it here. If you see a topic listed and would like to be a presenter, let us know.

  • Statistical hypothesis testing.
    • Standard textbook tests
    • Computing p-values using Monte Carlo for complex and non-standard statistical models.
  • Time-series analysis
  • Numeric precision - numeric round-off, underflow, etc., why they happen, what to do about it.
  • Net Present Value and Internal Rate of Return -- introduction to the use of these commonly used metrics for quantifying decision quality.
  • Using the Performance Profiler to understand where your model consumes time and memory resources.
  • Producing graphs from ADE: Including how to serve graphs from web pages.
  • Intracacies of the Domain attribute
  • Mastering Array Abstraction
  • Writing User-Defined Distribution functions.
  • Getting data into Analytica.
  • Large-scale sampling. Techniques when memory limitations constrain sampleSize.
  • Bayesian Inference
  • Sensitivity Analysis.
  • Dynamic Programming
  • Approximate and Stochastic Dynamic Programming

User Survey Results

During the first week of September, we sent out a survey to people who had attended webinars so far. Please continue providing us with feedback. Here is some feedback to date:

Level of difficult and speed:

So far, of those who answered this question, 25% say "a bit too easy", 25% say "too hard/fast", and 50% say "just right".

Topics requested for future webinars:

  • How to run multiple iterations, e.g. 100 iterations with uncertainty sample of 1000.
  • Sampling for rare events.
  • Using the lognormal function.
  • Financial modeling
  • New array functionality (subtables, choices in tables)
  • Optimizer !!!
  • Dynamic models (twice requested)
  • Choice of distributions
  • Re-sampling and radomize methods and uncertainty sample size
  • Tricks for sensitivity analysis
  • Input and output nodes
  • Importance analysis

The Analytica Wiki

The Analytica Wiki contains many resources, including in-depth reference materials, relevant articles, example models, tutorials, etc., to help users master Analytica and find what they need. Even better, Analytica users can contribute! You can upload your own models, articles, expand on or correct materials that are there, etc., for the benefit of the entire Analytica community.

Comments


You are not allowed to post comments.