Difference between revisions of "Modeling"
Jump to navigation
Jump to search
(12 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | Mostly based on [http://greenteapress.com/ | + | [[Category:AI]] |
+ | Mostly based on an older version of [http://greenteapress.com/modsimpy/ModSimPy3.pdf this paper] that comes with its own modsim library. | ||
− | = | + | * A model depicts a system. |
− | Store results in a | + | * The state of the system attributes is stored in a [[Pandas#Series]] |
+ | * Results of how the system attributes change over time are stored in Pandas Series too (1 Series per attribute). | ||
+ | * Parameters that determine how the system attributes change are also stored in a pandas series. | ||
+ | * The functions that change the system attributes take the system parameters as parameter. This way you can play with the parameter values to get the best result. | ||
+ | ** [[Numpy#linspace]] provides an equally distributed range of values so you can play easily between the limits you set. | ||
+ | * The quality of the model can be judged by calculating the relative error of the [[Approximation]] | ||
+ | |||
+ | =Other remarks= | ||
+ | * If you use randomness in a function, get the mean values of several runs. | ||
+ | |||
+ | =Example code= | ||
+ | [[Numpy]] [[Numpy#linspace | linspace]] | ||
+ | <syntaxhighlight lang=python> | ||
+ | funcAresults = pd.Series([]) | ||
+ | p1_array = np.linspace(0,1,12) | ||
+ | for p1 in p1_array: | ||
+ | for a in range(50): | ||
+ | funcAresults[a] = functionAcall(p1,p2) | ||
+ | print(funcAresults) | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Store results in a [[Pandas]] [[Pandas#Series|Series]] | ||
<syntaxhighlight lang=python> | <syntaxhighlight lang=python> | ||
for a in range(100): | for a in range(100): | ||
Line 9: | Line 31: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | =Naming conventions= | |
− | |||
− | |||
− | + | ;system | |
− | + | :[[Pandas#Series]] to store parameters of how the model behaves | |
− | + | ;system.alpha | |
− | + | :Variable to store the net change. | |
− | + | ;system.t_0 | |
− | + | :First time-stamp | |
− | + | ;system.p_0 | |
− | + | :State of the system at t_0 (a Pandas series) | |
+ | ;system.t_end | ||
+ | :Last time-stamp |
Latest revision as of 14:35, 24 January 2020
Mostly based on an older version of this paper that comes with its own modsim library.
- A model depicts a system.
- The state of the system attributes is stored in a Pandas#Series
- Results of how the system attributes change over time are stored in Pandas Series too (1 Series per attribute).
- Parameters that determine how the system attributes change are also stored in a pandas series.
- The functions that change the system attributes take the system parameters as parameter. This way you can play with the parameter values to get the best result.
- Numpy#linspace provides an equally distributed range of values so you can play easily between the limits you set.
- The quality of the model can be judged by calculating the relative error of the Approximation
Other remarks
- If you use randomness in a function, get the mean values of several runs.
Example code
funcAresults = pd.Series([])
p1_array = np.linspace(0,1,12)
for p1 in p1_array:
for a in range(50):
funcAresults[a] = functionAcall(p1,p2)
print(funcAresults)
Store results in a Pandas Series
for a in range(100):
funcAresults[a] = functionAcall(bla,bla)
funcBresults[a] = functionBcall(bla,bla)
Naming conventions
- system
- Pandas#Series to store parameters of how the model behaves
- system.alpha
- Variable to store the net change.
- system.t_0
- First time-stamp
- system.p_0
- State of the system at t_0 (a Pandas series)
- system.t_end
- Last time-stamp