conncur mech step, per-se
This commit is contained in:
parent
ee21530f02
commit
4df2b8cdc9
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -21,8 +21,12 @@ def mech_step(m_step, sL, state_funcs, behavior_funcs, env_processes, t_step):
|
|||
|
||||
_input = getBehaviorInput(m_step, sL, last_in_obj, behavior_funcs)
|
||||
|
||||
for f in state_funcs:
|
||||
f(m_step, sL, last_mut_obj, _input)
|
||||
# OLD: no bueno! Mutation Bad
|
||||
# for f in state_funcs:
|
||||
# f(m_step, sL, last_mut_obj, _input)
|
||||
|
||||
# New
|
||||
last_mut_obj = dict([ f(m_step, sL, last_mut_obj, _input) for f in state_funcs ])
|
||||
|
||||
apply_env_proc(env_processes, last_mut_obj, last_mut_obj['timestamp'])
|
||||
|
||||
|
|
|
|||
4
test.py
4
test.py
|
|
@ -1,2 +1,4 @@
|
|||
from engine import run
|
||||
run.main()
|
||||
from tabulate import tabulate
|
||||
result = run.main()
|
||||
print(tabulate(result, headers='keys', tablefmt='psql'))
|
||||
Binary file not shown.
36
ui/config.py
36
ui/config.py
|
|
@ -29,29 +29,47 @@ def b2m3(step, sL, s):
|
|||
|
||||
# Internal States per Mechanism
|
||||
def s1m1(step, sL, s, _input):
|
||||
s['s1'] = s['s1'] + _input
|
||||
y = 's1'
|
||||
x = s['s1'] + _input
|
||||
return (y, x)
|
||||
def s2m1(step, sL, s, _input):
|
||||
s['s2'] = s['s2'] + _input
|
||||
y = 's2'
|
||||
x = s['s2'] + _input
|
||||
return (y, x)
|
||||
|
||||
def s1m2(step, sL, s, _input):
|
||||
s['s1'] = s['s1'] + _input
|
||||
y = 's1'
|
||||
x = s['s1'] + _input
|
||||
return (y, x)
|
||||
def s2m2(step, sL, s, _input):
|
||||
s['s2'] = s['s2'] + _input
|
||||
y = 's2'
|
||||
x = s['s2'] + _input
|
||||
return (y, x)
|
||||
|
||||
def s1m3(step, sL, s, _input):
|
||||
s['s1'] = s['s1'] + _input
|
||||
y = 's1'
|
||||
x = s['s1'] + _input
|
||||
return (y, x)
|
||||
def s2m3(step, sL, s, _input):
|
||||
s['s2'] = s['s2'] + _input
|
||||
y = 's2'
|
||||
x = s['s2'] + _input
|
||||
return (y, x)
|
||||
|
||||
# Exogenous States
|
||||
proc_one_coef_A = 0.7
|
||||
proc_one_coef_B = 1.3
|
||||
def es3p1(step, sL, s, _input):
|
||||
s['s3'] = s['s3'] * bound_norm_random(seed['a'], proc_one_coef_A, proc_one_coef_B)
|
||||
y = 's3'
|
||||
x = s['s3'] * bound_norm_random(seed['a'], proc_one_coef_A, proc_one_coef_B)
|
||||
return (y, x)
|
||||
def es4p2(step, sL, s, _input):
|
||||
s['s4'] = s['s4'] * bound_norm_random(seed['b'], proc_one_coef_A, proc_one_coef_B)
|
||||
y = 's4'
|
||||
x = s['s4'] * bound_norm_random(seed['b'], proc_one_coef_A, proc_one_coef_B)
|
||||
return (y, x)
|
||||
def es5p2(step, sL, s, _input): # accept timedelta instead of timedelta params
|
||||
s['timestamp'] = ep_time_step(s, s['timestamp'], seconds=1)
|
||||
y = 'timestamp'
|
||||
x = ep_time_step(s, s['timestamp'], seconds=1)
|
||||
return (y, x)
|
||||
|
||||
# Environment States
|
||||
def env_a(x):
|
||||
|
|
|
|||
Loading…
Reference in New Issue