mtl-aas/stl/featurize.py
2017-11-11 17:35:48 -08:00

14 lines
339 B
Python

from stl import pointwise_sat
def ordered_evaluator(phi):
params = {ap.name for ap in phi.params}
order = tuple(params)
def vec_to_dict(theta):
return {k: v for k, v in zip(order, theta)}
def eval_phi(theta, x):
return pointwise_sat(phi.set_params(vec_to_dict(theta)))(x, 0)
return eval_phi, order