Skip to content

Warn users if they are asking DREAM for too many samples (Trac #799) #899

@pkienzle

Description

@pkienzle

Users are confused about the difference between "Samples", "Steps" and "Burn-in Steps" in DREAM. They are increasing #samples to unreasonable levels instead of using burn-in. This can cause the user inteface to fail after DREAM has spent days collecting samples when it tries to create plots with ridiculous numbers of samples.

Explanation

Samples is the number of samples to save. From this we can derive #steps = #samples/(#pars*#pop) + 1.

If steps is greater than zero then samples is ignored.

Total number of steps is #burn + #steps.

On completion, all but the final steps are saved, so even if you hit stop before burn is complete you still get #steps*#pop*#pars samples (or less if fewer than #steps iterations have passed before you hit stop).

To do

(1) Make sure the explanation is clear in the documentation, tool tips and help

(2) Warn users if they are asking for more than 1M samples, or maybe limit users to 1M samples unless they are running from the command line.

Alternative

(1) Revise inputs:

Samples: #samples used for stats; does not change iterations
Steps: #iterations to run; if running a fit without changing the model, use resume so that it collects more data points without having to go through a burn-in period

(2) Show minimum steps required to collect the desired number of samples

Migrated from http://trac.sasview.org/ticket/799

{
    "status": "assigned",
    "changetime": "2017-10-26T12:48:15",
    "_ts": "2017-10-26 12:48:15.340110+00:00",
    "description": "Users are confused about the difference between \"Samples\", \"Steps\" and \"Burn-in Steps\" in DREAM.  They are increasing #samples to unreasonable levels instead of using burn-in.  This can cause the user inteface to fail **after** DREAM has spent days collecting samples when it tries to create plots with ridiculous numbers of samples.\n\n**Explanation**\n\nSamples is the number of samples to save.  From this we can derive #steps = #samples/(#pars*#pop) + 1.\n\nIf steps is greater than zero then samples is ignored.\n\nTotal number of steps is #burn + #steps.\n\nOn completion, all but the final steps are saved, so even if you hit stop before burn is complete you still get #steps*#pop*#pars samples (or less if fewer than #steps iterations have passed before you hit stop).\n\n**To do** \n\n(1) Make sure the explanation is clear in the documentation, tool tips and help\n\n(2) Warn users if they are asking for more than 1M samples, or maybe limit users to 1M samples unless they are running from the command line.\n\n**Alternative**\n\n(1) Revise inputs:\n\n    Samples: #samples used for stats; does not change iterations\n    Steps: #iterations to run; if running a fit without changing the model, use resume so that it collects more data points without having to go through a burn-in period\n\n(2) Show minimum steps required to collect the desired number of samples",
    "reporter": "pkienzle",
    "cc": "",
    "resolution": "",
    "workpackage": "SasView Bug Fixing",
    "time": "2016-11-02T17:32:14",
    "component": "SasView",
    "summary": "Warn users if they are asking DREAM for too many samples",
    "priority": "major",
    "keywords": "",
    "milestone": "SasView 5.0.0",
    "owner": "ajj",
    "type": "enhancement"
}

Metadata

Metadata

Assignees

Labels

EnhancementFeature requests and/or general improvementsMajorBig change in the code or important change in behaviour

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions