SED-ML / sed-ml

Simulation Experiment Description Markup Language (SED-ML)
http://sed-ml.org
5 stars 2 forks source link

Distributions (define distributions & use values from distributions in repeatedTasks) #23

Closed matthiaskoenig closed 6 years ago

matthiaskoenig commented 7 years ago

Issue

It would be great if one is able to set values using a statistical distribution.

Mainly sampling parameters and initial values from distributions and specifying how to sample. How to sample from multiple distributions at the same time? Or multi-dimensional distributions, i.e. with correlation matrix? How to specify the sampling on multi-dimensional distributions (random, Latin-Hypercube Sampling)

Examples

Proposals

Create a new type of DataGenerator which creates data from a distribution.

DistributionDataGenerator(DataGenerator):
    shape: DimensionDescription
    distribution: string (normal, lognormal, .. defined vocabulary terms)
    seed: int {use: optional} (random generator seed)
    |
     --- listOfParameters: list<Parameter> parameters of distribution

Concrete example

DistributionDataGenerator(DataGenerator):
    shape: (200, 1)
    distribution: normal
    seed: Normal
    |
     --- listOfParameters: mu=1.0, sigma=10.0

creates 200 random values from normal distribution.

The shape defines the dimension of the data output, distribution the distribution type

Related issues

luciansmith commented 6 years ago

Handling this by extending MathML instead!