Skip to content

Commit

Permalink
Made a variety of local edits.
Browse files Browse the repository at this point in the history
  • Loading branch information
mmcdermott committed Aug 13, 2016
1 parent ff867ca commit fdbfab8
Show file tree
Hide file tree
Showing 11 changed files with 147 additions and 59 deletions.
38 changes: 27 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,38 @@
# Guesstimate

Guesstimate is an app that helps you run Monte Carlo simulations on things with uncertainty.
Guesstimate is a spreadsheet tool that helps you model and forecast uncertain quantities. Guesstimate's interface is
similar to other spreadsheet tools, such as Excel or Google Sheets. Each model is a grid of cells, and each cell can
be filled with a name and value. Functions can be used to connect cells together to represent more complex quantities.

## Make Beautiful Spreadsheets
For example, a simple model of how many piano tuners there are in Boston might look like this:
![Example Model](./assets/Example Cells.png)

Guesstimate is a spreadsheet tool, similar to Excel or Google Sheets. Each model is a grid of cells. Each cell can represent a metric with a name and value. Equations can be used to connect metrics to other, dependent metrics.
#### Use Numbers With Uncertainty

## Use Numbers With Uncertainty
In addition to the standard spreadsheet capabilities, Guesstimate can also be used for modeling under uncertainty. The
primary way of introducing uncertainty into a Guesstimate model is via a _confidence interval_, expressed as a range of
the form `X to Y`, or via a dataset. Both ranges and datasets can be inserted directly into a Guesstimate cell, and the
system will perform all downstream calculations in a statistically meaningful way.

In addition to working with exact values, Guesstimate can be used for metrics with uncertainty. For instance, if you want to guesstimate the number of sandals in a store, you can instead enter a range that you think would contain the number of sandals in the store. For instance, if you type '10 to 90' into a cell, this means that you are 90% confident that the number of sandals in the store is between 10 and 90. The math would be done on this entire range for dependent values, in a statistically meaningful way.
For example, if we expand our Boston piano tuner population model from above, we might refine our estimate of the number
of pianos in Boston to account our uncertainty, and say that instead of their being 100,000 pianos in boston, there are
rather somewhere between 85,000 and 150,000 pianos in Boston. We can also add some custom data to our pianos per tuner
estimate by polling all of our piano tuner friends to see how many pianos they service, then entering their responses as
a comma or enter separated list directly into the cell.

## Share Your Results
![Example Model with Uncertainty](./assets/Ranges & Data.png)

Most models on Guesstimate are public. These can be adjusted by anyone, but can only be saved by their owners. To share a public model with a friend, copy the url for that model and send it to them.
#### Share Your Results

## Short Intro
<iframe width="560" height="315" src="https://www.youtube.com/embed/_fZdBq0TOPk" frameborder="0" allowfullscreen></iframe>
Guesstimate supports public, private, and private organizational models.

Public models can be seen by anyone, but only edited by their owners. Any viewer of a model will be able to locally edit
the model, but their changes won't be saved. You can browse all our existing public models
[here](https://www.getguesstimate.com/models).

## Older Demo
<iframe width="560" height="315" src="https://www.youtube.com/embed/ZPxII_NKLDw" frameborder="0" allowfullscreen></iframe>
Private models are only visible to their creator, and private
organizational models are visible to everyone within the owning organization. Private models & private organizational
models are only available on our [paid plans](https://www.getguesstimate.com/pricing).

#### Short Demo
<iframe width="560" height="315" src="https://www.youtube.com/embed/_fZdBq0TOPk" frameborder="0" allowfullscreen></iframe>
Binary file added assets/Documentation Widget.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/Example Cells.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/Function Documentation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/Proportion Image.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/Ranges & Data.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
46 changes: 33 additions & 13 deletions basic_modeling/input_types.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,62 @@
# Input Types

## Point Values
Guesstimate cells support several diferent types of inputs.

#### Point Values

![](https://s3.amazonaws.com/elevio-article-assets/565e550e67ffc/5674c65321b7b_point.png)

Point values are exact numbers. Enter a value by simply typing that value.

## Confidence Intervals ("low to high")
#### Confidence Intervals

![](https://s3.amazonaws.com/elevio-article-assets/565e550e67ffc/575f534aeb9f2_recent-image.png)

Guesstimate can convert your confidence intervals into two different types of distributions.
[Confidence intervals](./theory/confidence_intervals.md) are statistical expressions of uncertainty about a quantity.
Enter a confidence interval by entering your lower and upper bounds for the interval into the value field, separated by
the word 'to', like this: `low to high`.

Guesstimate can convert your confidence interval into three different possible formal distributions.

1. [Normal Distributions](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwjZ1ZDQyrfLAhVkr4MKHXOxDHsQFggcMAA&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FNormal_distribution&usg=AFQjCNEOuAsc3h-p3E2f0u3Cnkdz3Np1kQ&sig2=u_UI4k0Y9zBKC7DA8vx6VQ&bvm=bv.116573086,d.dmo): This should be used when you think that values near the center of your range are more likely than values near the edges of your range, and values outside your range are possible, but increasingly unlikely.
Guesstimate interprets your input as a 90% CI distributed symmetrically about the mean.
2. [Uniform Distributions](https://en.wikipedia.org/wiki/Uniform_distribution_(continuous\)) : This should be used when you are 100% certain that the value would fall within your range, and it is equally likely it would fall anywhere within your range.
2. [Uniform Distributions](https://en.wikipedia.org/wiki/Uniform_distribution_(continuous\)) : This should be used when
you are 100% certain that the value would fall within your range, and it is equally likely it would fall anywhere
within your range.
Guesstimate interprets your input as the full range of possible values the metric could take.
3. [Lognormal Distributions](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwjxk_XRyrfLAhXswYMKHUxfB6sQFggdMAA&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLog-normal_distribution&usg=AFQjCNH6r87BB9IaLASYhr0DIL88rh0OGQ&sig2=Uckv53L7BzDE_SuiDJKmqQ): This should be used when your value must be positive, and is more likely near the left edge of your range than the right, but has a long tail of possibility to the right (more specifically, when values are symmetrically likely on the log scale across the multiplicative center of your range).
Guesstimate interprets your input as a 90% CI with your left endpoint at the 5th percentile and your right at the 95th percentile.
For lognormal, both endpoints of your confidence interval must be positive.

### Proportions (hits of total)
##### Proportions

![](https://s3.amazonaws.com/elevio-article-assets/565e550e67ffc/571fc6785f2b3_screenshot-from-2016-04-26-124913.png)
![Proportions are entered with the syntax 1 in 5](../assets/Proportion Image.png)

Guesstimate can also convert your estimates of proportionality into a [beta distribution](https://en.wikipedia.org/wiki/Beta_distribution). When you say '1 of 5', Guesstimate will generate a distribution between 0 and 1 centered around 1/5, with uncertainty reflective of the precision in your estimate (e.g. 1/5 will have more uncertainty than 200/1000).
Guesstimate can also convert your estimates of proportionality into a
[beta distribution](https://en.wikipedia.org/wiki/Beta_distribution), which is designed to work well for estimates of
proportions/percentages. To enter a proportion, simply express the proportion via the syntax `events of/in total` (e.g.
`1 of 5`, `3 in 10`).

### Functions (=)
When you say '1 of 5', Guesstimate will generate a distribution between 0 and 1 centered around 0.2, with uncertainty
reflective of the precision in your estimate (e.g. `1 of 5` will have more uncertainty than `200 of 1000`).

##### Functions (=)

![](https://s3.amazonaws.com/elevio-article-assets/565e550e67ffc/5674c67d9330e_function.png)

Values can be functions of other metrics. To do this, simply begin the field with an 'equals' sign, followed by the formula. Each metric has a two letter variable name.
Values can be functions of other metrics. To do this, simply begin the field with an 'equals' sign, followed by the
formula. Each metric has a two letter variable name.

You can type this explicitly or simply click on that metric while the function is selected to insert it. You can also use functions to specify specific distributions, with additional parameters. For example, if you wish to specify a normal distribution by mean and standard deviation, you can do this via the functional form. This is covered in the 'Additional Distributions' article.
You can type this explicitly or simply click on that metric while the function is selected to insert it. You can also
use functions to specify specific distributions, with additional parameters. For example, if you wish to specify a
normal distribution by mean and standard deviation, you can do this via the functional form. This is covered in the
[Additional Distributions](../functions/distributions.md) article.

### Custom Data
#### Custom Data

![](https://s3.amazonaws.com/elevio-article-assets/565e550e67ffc/56df472b84913_custom-data-example.png)

Custom data can be entered directly into the 'value' field by simply pasting a stream of enter separated values. You can also expand the card into its full, expanded view, then edit the custom data field directly. This view accepts comma separated values as well. Data will be up or down sampled to approximately 5000 samples, to match the other nodes.

Custom data can be entered directly into the 'value' field by simply pasting a stream of comma, enter, or space
separated values. You can also expand the card into its full, expanded view, then edit the custom data field directly.
This view accepts comma separated values as well. Data will be up or down sampled to approximately 5000 samples, to
match the other nodes.
19 changes: 13 additions & 6 deletions basic_modeling/sips_and_slurps.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,23 @@
# SIPS and SLURPS

IPs and SLURPs are the two key elements to the [SIPmath Standard](http://probabilitymanagement.org/standards.html), a standard designed for the communication of uncertain quantities.
SIPs and SLURPs are the two key elements to the [SIPmath Standard](http://probabilitymanagement.org/standards.html), a
standard designed for the communication of uncertain quantities.

A SIP, or _Stochastic Information Packet_, contains a name field, describing the quantity being measured, a provenance field, detailing the source of the data, and a list of the samples representative of the quantity being measured.
A SIP, or _Stochastic Information Packet_, contains a name field, describing the quantity being measured, a provenance
field, detailing the source of the data, and a list of the samples representative of the quantity being measured.

A SLURP, or _Stochastic Library Unit with Relationships Preserved,_ is a collection of potentially related SIPs, with relationships preserved via the order of the samples within each SIP.
A SLURP, or _Stochastic Library Unit with Relationships Preserved,_ is a collection of potentially related SIPs, with
relationships preserved via the order of the samples within each SIP.

The SIPmath Standard is managed by [Probability Management](http://probabilitymanagement.org/what-we-do.html), a non-profit which helps businesses manage their uncertainty.
The SIPmath Standard is managed by [Probability Management](http://probabilitymanagement.org/what-we-do.html), a
non-profit which helps businesses manage their uncertainty.

Guesstimate currently can import JSON Slurps via the 'file' menu within a space. Each SIP within the SLURP will be imported as a new metric at the bottom of the model, with the name, reasoning, and data of the metric inferred from the SIP.
Guesstimate currently can import JSON Slurps via the 'file' menu within a space. Each SIP within the SLURP will be
imported as a new metric at the bottom of the model, with the name, reasoning, and data of the metric inferred from the
SIP.

The SIPmath standard allows for SLURPs to come in many formats, but Guesstimate can only currently import the JSON format. An Example JSON SLURP is shown below.
The SIPmath standard allows for SLURPs to come in many formats, but Guesstimate can only currently import the JSON
format. An Example JSON SLURP is shown below.

<pre>{
"name": "exampleSLURP",
Expand Down
3 changes: 3 additions & 0 deletions book.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"plugins": ["katex"]
}
Loading

0 comments on commit fdbfab8

Please sign in to comment.