Esempio n. 1
0
    def __init__(self):

        # environment parameters
        self.world = WorldMap()
        # number of defenders and intruders
        self.dcount = Config.DEFENDER_COUNT
        self.icount = Config.INTRUDER_COUNT

        self.lock = Value('i', 1)

        self.episode_count = Value('i', 0)

        self.init_dstates = []
        self.init_istates = []
        for d in range(self.dcount):
            self.init_dstates.append((-5+12*d, 7-3*d, 0))
        for i in range(self.icount):
            self.init_istates.append((5-2*i, 10+i, 0))

        self.dstates = Array(state_structure, self.init_dstates)
        self.istates = Array(state_structure, self.init_istates)

        self.done = Value('i', 0)

        # defenders and intruders
        self.defenders = [] # all the defender objectives
        self.intruders = []
        for i in range(self.icount):
            self.intruders.append(ProcessIntruder(self, i, self.istates[i], self.episode_count))
            self.intruders[i].daemon = True
        for d in range(self.dcount):
            self.defenders.append(ProcessDefender(self, d, self.dstates[d], self.episode_count))
            self.defenders[d].daemon = True
    def __init__(self, propsfile):
        self.canvas = Tk()

        self.props = json.load(open(propsfile))
        self.worldMap = WorldMap(propsfile)

        self.wg = WorldGrid(self.canvas, self.props, self.worldMap)
        self.wg.registerCallBack(self.processEvent)

        self.robot = Robot(self.props, self.worldMap)
        self.robot.registerSenseCallBack(self.sense)
        self.robot.registerMoveCallBack(self.move)

        self.rRow = -1
        self.rCol = -1

        self.randomizeRobotPosition()
        self.robot.sense()
        self.shadeSquares()
Esempio n. 3
0
import time
import sys
import random
from PyQt5.QtWidgets import QApplication

sys.path.insert(0, ".")
from WorldMap import WorldMap
from WorldUI import WorldUI
from WorldUnits import UnitOrganic
from WorldProtocols import CreateUnit

if __name__ == "__main__":
    app = QApplication(sys.argv)

    wmap = WorldMap(5, 5, "#000")
    wmap.append_protocol(CreateUnit(2, 2, UnitOrganic()))

    wui = WorldUI(wmap)
    app.exec_()