def initVivae(numsensors): modem = "nengoros.comm.nodeFactory.modem.impl.DefaultModem"; # custom modem here server = "vivae.ros.simulatorControlsServer.ControlsServer" # call Vivae as a thread in Java from this process # Call Vivae as an external process #server = ["./sb/../../../../simulators/vivae/build/install/vivae/bin/vivae","vivae.ros.simulatorControlsServer.ControlsServer"] # create group of nodes g = NodeGroup("vivae", True); # create default group of nodes g.addNC(server, "vivaeSimulator", "java"); # run the simulator.. g.addNC(modem,"modem","modem") # add default modem.. g.startGroup() # start group normally modem = g.getModem() #time.sleep(3) # if the process is native, it takes longer time to init the services !! simulator = NeuralModule('VivaeSimulator',modem) # create NeuralModule which is able to add/remove agents vivae = simulator.getControls(); # this starts the control services.. vivae.setVisible(True); # make simulation window visible.. many=net.add(simulator) # add it to the Nengo network vivae.loadMap('data/scenarios/test/wallsII.svg') #addAgent(name,numSensors, maxDistance, frictionSensor) (note that you will actually get numSensors+1 floats +(speed)) vivae.addAgent('a',2*numsensors, 120 ,0) vivae.start() return simulator;
def initVivae(numsensors): modem = "nengoros.comm.nodeFactory.modem.impl.DefaultModem" # custom modem here server = "vivae.ros.simulatorControlsServer.ControlsServer" # call Vivae as a thread in Java from this process # Call Vivae as an external process #server = ["./sb/../../../../simulators/vivae/build/install/vivae/bin/vivae","vivae.ros.simulatorControlsServer.ControlsServer"] # create group of nodes g = NodeGroup("vivae", True) # create default group of nodes g.addNC(server, "vivaeSimulator", "java") # run the simulator.. g.addNC(modem, "modem", "modem") # add default modem.. g.startGroup() # start group normally modem = g.getModem() #time.sleep(3) # if the process is native, it takes longer time to init the services !! simulator = NeuralModule( 'VivaeSimulator', modem) # create NeuralModule which is able to add/remove agents vivae = simulator.getControls() # this starts the control services.. vivae.setVisible(True) # make simulation window visible.. many = net.add(simulator) # add it to the Nengo network vivae.loadMap('data/scenarios/test/wallsII.svg') #addAgent(name,numSensors, maxDistance, frictionSensor) (note that you will actually get numSensors+1 floats +(speed)) vivae.addAgent('a', 2 * numsensors, 120, 0) vivae.start() return simulator
def initVivae(modem,server): # create group of nodes g = NodeGroup("vivae", True); # create default group of nodes g.addNC(server, "vivaeSimulator", "java"); # run the simulator.. g.addNC(modem,"modem","modem") # add default modem.. g.startGroup() # start group normally modem = g.getModem() #time.sleep(3) # if the process is native, it takes longer time to init the services !! simulator = NeuralModule('VivaeTest',modem) # create NeuralModule which is able to add/remove agents vivae = simulator.getControls(); # this starts the control services.. vivae.setVisible(True); # make simulation window visible.. many=net.add(simulator) # add it to the Nengo network vivae.loadMap('data/scenarios/test/walls.svg') #addAgent(name,numSensors, maxDistance, frictionSensor) vivae.addAgent('a',8, 120 ,0) vivae.start() return simulator;
vvv = "vivae.ros.simulatorControlsServer.ControlsServer" # actual Vivae simulator, provies services # create group of nodes g = NodeGroup("vivae", True); # create default group of nodes g.addNC(vvv, "vivaeSimulator", "java"); # run the simulator.. g.addNC(modem,"modem","modem") # add default modem.. g.startGroup() # start group normally ################################## modem = g.getModem() time.sleep(3) # if the process is native, it takes longer time to init the services !! simulator = NeuralModule('VivaeTest',modem) # create NeuralModule which is able to add/remove agents Controls = simulator.getControls(); # this starts the control services.. Controls.setVisible(False); many=net.add(simulator) # add it to the Nengo network #Controls.loadMap('data/scenarios/arena2.svg') #Controls.loadMap('data/scenarios/ushape.svg') Controls.loadMap('data/scenarios/arena1.svg') #Controls.loadMap('data/scenarios/manyAgents.svg') Controls.addAgent('a',4) Controls.addAgent('b',18) Controls.addAgent('c',18,30,50) """ Controls.addAgent('d') Controls.addAgent('e',8)
vv = "vivae.ros.simulatorControlsServer.ControlsServer" # actual Vivae simulator, provies services g = NodeGroup("vivae", True) # create default group of nodes g.addNC(vv, "vivaeSimulator", "java") # add vivae ControlsServer (node that handles simulation) g.addNC(modem, "modem", "modem") # add default modem.. g.startGroup() # start group normally ################################## ################# get modem, create smart neuron with inputs/outputs modem = g.getModem() simulator = NeuralModule("VivaeTest", modem) # create NeuralModule which is able to add/remove agents Controls = simulator.getControls() # this starts the control services.. many = net.add(simulator) # add it to the Nengo network time.sleep(2) # give it some time to init services # Controls.loadMap('data/scenarios/arena2.svg') # Controls.loadMap('data/scenarios/ushape.svg') # Controls.loadMap('data/scenarios/arena1.svg') Controls.loadMap("data/scenarios/arena1.svg") Controls.addAgent("a", 4) Controls.addAgent("b", 18) Controls.addAgent("c", 18, 30, 50) Controls.addAgent("d") # adding more agents than is in the simulation Controls.addAgent("e", 8) # will result just in error message in console