def __init__(self, environment=None, **model_parameters): self.chunktype = chunks.chunktype self.chunkstring = chunks.chunkstring self.visbuffers = {} start_goal = goals.Goal() self.goals = {"g": start_goal} self.__buffers = {"g": start_goal} start_retrieval = declarative.DecMemBuffer() self.retrievals = {"retrieval": start_retrieval} self.__buffers["retrieval"] = start_retrieval start_dm = declarative.DecMem() self.decmems = {"decmem": start_dm} self.productions = productions.Productions() self.__similarities = {} self.model_parameters = self.MODEL_PARAMETERS.copy() try: if not set(model_parameters.keys()).issubset(set(self.MODEL_PARAMETERS.keys())): raise(utilities.ACTRError("Incorrect model parameter(s) %s. The only possible model parameters are: '%s'" % (set(model_parameters.keys()).difference(set(self.MODEL_PARAMETERS.keys())), set(self.MODEL_PARAMETERS.keys())))) self.model_parameters.update(model_parameters) except TypeError: pass self.__env = environment
def set_decmem(self, data=None): """ Set declarative memory. """ dm = declarative.DecMem(data) if len(self.decmems) > 1: self.decmems["".join(["decmem", str(len(self.decmems))])] = dm else: self.decmems["decmem"] = dm return dm
def set_decmem(self, data): """ Set declarative memory. """ dm = declarative.DecMem(data) self.__decmem = dm if self.__decmemcount > 0: self.decmems["".join(["decmem", str(self.__decmemcount)])] = dm else: self.decmems["decmem"] = dm self.__decmemcount += 1 return dm