from algorithm import algorithm import json import ray @ray.remote class average_x(algorithm): def __init__(self): self.config_dict_ = None self.config_ = None self.average_number_ = 10 self.present_number_ = 0 self.avg_ = 0 def set_config(self, config): self.config_ = config self.config_dict_ = json.loads(self.config_) self.average_number_ = self.config_dict_["AVERAGE_NUMBER"] self.init_flag_ = False def config(self): return self.config_ def eval(self, value): if self.init_flag_ == False: self.init_flag_ = True self.avg_ = value else: self.avg_ = self.avg_ * (self.average_number_ - 1)/self.average_number_ + value / self.average_number_ return self.avg_