Example #1
0
    def getRealAction_real(self, state, actVars=None):
        Program.execute(state, self.registers, self.program.instructions[:, 0],
                        self.program.instructions[:, 1],
                        self.program.instructions[:, 2],
                        self.program.instructions[:, 3])

        return self.registers[:self.actionLength]
Example #2
0
    def bid(self, state, memMatrix):
        Program.execute(state, self.registers, self.program.instructions[:, 0],
                        self.program.instructions[:, 1],
                        self.program.instructions[:, 2],
                        self.program.instructions[:, 3], memMatrix,
                        memMatrix.shape[0], memMatrix.shape[1])

        return self.registers[0]
Example #3
0
    def getRealAction_real_mem(self, state, actVars=None):
        Program.execute(state, self.registers, self.program.instructions[:, 0],
                        self.program.instructions[:, 1],
                        self.program.instructions[:, 2],
                        self.program.instructions[:, 3], actVars["memMatrix"],
                        actVars["memMatrix"].shape[0],
                        actVars["memMatrix"].shape[1],
                        Program.memWriteProbFunc)

        return self.registers[:self.actionLength]
Example #4
0
    def bid_def(self, state, actVars=None):
        # exit early if we already got bidded this frame
        if self.frameNum == actVars["frameNum"]:
            return self.registers[0]

        self.frameNum = actVars["frameNum"]

        Program.execute(state, self.registers,
                        self.program.instructions[:,0], self.program.instructions[:,1],
                        self.program.instructions[:,2], self.program.instructions[:,3])

        return self.registers[0]
Example #5
0
    def bid_mem(self, state, actVars=None):
        # exit early if we already got bidded this frame
        if self.frameNum == actVars["frameNum"]:
            return self.registers[0]

        self.frameNum = actVars["frameNum"]

        Program.execute(state, self.registers,
                        self.program.instructions[:,0], self.program.instructions[:,1],
                        self.program.instructions[:,2], self.program.instructions[:,3],
                        actVars["memMatrix"], actVars["memMatrix"].shape[0], actVars["memMatrix"].shape[1],
                        Program.memWriteProbFunc)

        return self.registers[0]
Example #6
0
    def getLearnersInsOuts(self, learners, clearStates=True):
        inputs = []
        outputs = []
        for lrnr in learners:
            lrnrInputs = []
            lrnrOutputs = []
            for state in lrnr.states:
                regs = np.zeros(len(lrnr.registers))
                Program.execute(state, regs, lrnr.program.modes,
                                lrnr.program.operations,
                                lrnr.program.destinations,
                                lrnr.program.sources)
                lrnrInputs.append(state)
                lrnrOutputs.append(regs[0])

            if clearStates:  # free up some space
                lrnr.states = []

            inputs.append(lrnrInputs)
            outputs.append(lrnrOutputs)

        return inputs, outputs
Example #7
0
    def bid(self, state):
        Program.execute(state, self.registers, self.program.modes,
                        self.program.operations, self.program.destinations,
                        self.program.sources)

        return self.registers[0]