import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from pylab import figure
from DataAnalysis.DataAnalysis import Plotter

print 'Running Simulation - Add food generators to corners'

testname = "gen_corners"

#Init Environment and food sources
foodTypes = [0,1,2,3];
mapsize = 100;
env = [Env(mapsize,foodTypes[0]),Env(mapsize,foodTypes[1]),
		Env(mapsize,foodTypes[2]),Env(mapsize,foodTypes[3])];

for e in env:
	e.makeGradient()
	for i in range (0,100):
		e.makeFoodRandom()
	e.updateMap()
	
animats = [];
for a in range(0,20):
	animats.append(Animat(random.randrange(0,mapsize),random.randrange(0,mapsize),env,foodTypes,1500,1000));

#fig = plt.figure()
#ims = []
#toPlot = zeros((mapsize,mapsize));
示例#2
0
from Environment.Env import Env
from Animat.Animat import Animat
from Animat.NNInitializer import NNInitializer
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation - Moving food around, picking up, dropping'

# Deprecated
filename = 'nn_precise_100k.p'

size = 50;
env1 = Env(size,0)
env2 = Env(size,1);
for i in range (0,20):
	env1.makeFoodRandom();
	env2.makeFoodRandom();
env1.updateMap()
env2.updateMap()

animats = [Animat(25,25,[env1,env2],filename),Animat(10,40,[env1,env2],filename)];

stateMachine = ['notholding','notholding'];

fig = plt.figure()
ims = []

toEat = [random.randrange(0,2),random.randrange(0,2)];
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 3 - Gradient maker'
mapSize = 100
food = Env(mapSize)
#a = Animat.randomStart(mapSize,mapSize)
food.makeGradient()
print 'Made gradient.'

for count in range(0,20):
	food.makeFoodRandom()

print str(count)+' food made.'
food.updateMap();

fig2 = plt.figure()
plt.pcolor(food.map)
plt.ion()
plt.show()
示例#4
0
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 2'
mapSize = 15
food = Env(mapSize)
a = Animat.randomStart(mapSize, mapSize)
food.makeGradient()

for iteration in range(1, 10):
    # Pick a random spot
    foody = random.randrange(0, mapSize)
    foodx = random.randrange(0, mapSize)
    print str(foody) + ' ' + str(foodx)
    food.map[foody, foodx] = 5  # random number

    # pass animat object our map
    # food = a.goToLocation(foody,foodx,food)
    # animat should behave appropriately
    # it should return the map unmodified
示例#5
0
from Environment.Env import Env
from Animat.Animat import Animat
from Animat.NNInitializer import NNInitializer
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

if len(sys.argv) < 2:
    print "Filename required for neural net"
    exit()

print 'Running Animat Simulations'
#Load initial Neural Net
filename = sys.argv[1]

#Init Environment and food sources
env = Env(250)
env.makeGradient()
for i in range(1, 2):
    env.makeFoodRandom()
env.updateMap()

#Create Animat
a = Animat(0, 0, env, filename)

while (1):
    a.tick()
示例#6
0
from Environment.Env import Env
from Animat.Animat import Animat
from Animat.NNInitializer import NNInitializer
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation - Find food'

#filename = 'nn_scents_based.p'
filename = 'nn_precise_100k.p'
#Init Environment and food sources
env = Env(50)
for i in range(0, 10):
    env.makeFoodRandom()
    #env.makeFood(20,20);
env.updateMap()

#Create Animat
ID = 1
a = Animat(0, 0, env, filename, 1)

fig = plt.figure()
ims = []
for i in range(0, 1000):
    print "Tick: " + str(i)
    env.tick()
    if a.alive:
示例#7
0
from Environment.Env import Env
from Animat.Animat import Animat
from Animat.NNInitializer import NNInitializer
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation - Find food'

#filename = 'nn_scents_based.p'
filename = 'nn_precise_100k.p'
#Init Environment and food sources
env = [Env(50, 0), Env(50, 1)]
for e in env:
    e.makeGradient()
    for i in range(0, 100):
        e.makeFoodRandom()
    e.updateMap()

#Create Animat
animats = [
    Animat(25, 25, env, filename),
    Animat(10, 40, env, filename),
    Animat(45, 10, env, filename),
    Animat(30, 40, env, filename)
]

fig = plt.figure()
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 3 - Gradient maker'
mapSize = 13
food = Env(mapSize)
a = Animat.randomStart(mapSize,mapSize)
food.makeGradient()


fig1 = plt.figure()
plt.pcolor(food.gradient)
plt.ion()
plt.show()

food.makeFoodRandom()
fig2 = plt.figure()
plt.pcolor(food.map)
plt.ion()
plt.show()
示例#9
0
matplotlib.use("TKAgg")
import sys

sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print "Running Simulation 1"
mapSize = 20
env = Env(mapSize)
a = Animat.randomStart(mapSize, mapSize)

# Create figure for plotting our environment
fig = plt.figure()
ims = []

# Walk around the map randomly, for 100 iterations
for t in range(1, 100):
    # time.sleep(.05)
    # print 'Time: '+str(t)

    # Pick a random spot to move to
    randomSpot = random.randrange(1, 4 + 1)
    if randomSpot == 1:
        # north
import sys

sys.path.append("..")

from Environment.Env import Env
import matplotlib.pyplot as plt
from random import choice
import cPickle as pickle
import time

print 'Running Simulation - Make scents'

#Init Environment and food sources
envSize = 1000
env = Env(envSize)
env.makeGradient()
for i in range(0, 70):
    env.makeFoodRandom()
env.updateMap()

fig = plt.figure()
im = plt.imshow(env.map)
im.set_cmap('spectral')
plt.ion()
plt.show()

print 'Making training data...'
t0 = time.clock()
# Traverse
inputTraining = []
示例#11
0
matplotlib.use('TKAgg')
import sys

sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 3 - Gradient maker'
mapSize = 100
food = Env(mapSize)
#a = Animat.randomStart(mapSize,mapSize)
food.makeGradient()
print 'Made gradient.'

for count in range(0, 20):
    food.makeFoodRandom()

print str(count) + ' food made.'
food.updateMap()

fig2 = plt.figure()
plt.pcolor(food.map)
plt.ion()
plt.show()
示例#12
0
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 2'
mapSize = 15
food = Env(mapSize)
a = Animat.randomStart(mapSize,mapSize)
food.makeGradient()

for iteration in range(1,10):
	# Pick a random spot
	foody = random.randrange(0,mapSize)
	foodx = random.randrange(0,mapSize)
	print str(foody) + ' ' + str(foodx) 
	food.map[foody,foodx] = 5 # random number
	
	
	# pass animat object our map
	# food = a.goToLocation(foody,foodx,food)
	# animat should behave appropriately
	# it should return the map unmodified
示例#13
0
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 1'
mapSize = 20
env = Env(mapSize)
a = Animat.randomStart(mapSize,mapSize)

# Create figure for plotting our environment
fig = plt.figure()
ims = []

# Walk around the map randomly, for 100 iterations
for t in range(1,100):
	#time.sleep(.05)
	#print 'Time: '+str(t)
	
	# Pick a random spot to move to
	randomSpot = random.randrange(1,4+1)
	if randomSpot == 1:
		# north
示例#14
0
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from pylab import figure
from DataAnalysis.DataAnalysis import Plotter

print 'Running Simulation - Add food generators to corners'

testname = "gen_corners"

#Init Environment and food sources
foodTypes = [0, 1, 2, 3]
mapsize = 100
env = [
    Env(mapsize, foodTypes[0]),
    Env(mapsize, foodTypes[1]),
    Env(mapsize, foodTypes[2]),
    Env(mapsize, foodTypes[3])
]

for e in env:
    e.makeGradient()
    for i in range(0, 100):
        e.makeFoodRandom()
    e.updateMap()

animats = []
for a in range(0, 20):
    animats.append(
        Animat(random.randrange(0, mapsize), random.randrange(0, mapsize), env,
import matplotlib
matplotlib.use('TKAgg')
import sys
sys.path.append("..")

from Environment.Env import Env
from Animat.Animat import Animat
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation 4 - Food generator test'
mapSize = 100
food = Env(mapSize)
#a = Animat.randomStart(mapSize,mapSize)
food.makeGradient()
print 'Made gradient.'

food.addFoodGenerator(20,20,10)
food.addFoodGenerator(90,50,50)
food.addFoodGenerator(25,88,200)

ims = []
fig = plt.figure()
for iterations in range(0,1000):
	food.tick()
	# animation
	im = plt.imshow(food.map)
	ims.append([im])
示例#16
0
sys.path.append("..")

from Environment.Env import Env
#from Animat.Animat import Animat
#from Animat.NNInitializer import NNInitializer
from Animat.QLearn import QLearn
import time
from numpy import zeros
import random
#import matplotlib.pyplot as plt
#import matplotlib.animation as animation

print 'Running Simulation - have q learner give us an action to take'

#Init Environment and food sources
env = Env(50)
env.makeGradient()
for i in range (0,10):
	env.makeFoodRandom()
	#env.makeFood(20,20);
env.updateMap()

#Create Animat
#a = Animat(0,0,env, filename)

# This should really be inside the animat class, since that's the one that'll make
# a decision on what action to take.


actions = ['north','south','east','west','stay','eat','pickup','drop'];
#state = getState();
from Environment.Env import Env
from Animat.Animat import Animat
from Animat.NNInitializer import NNInitializer
import time
from numpy import zeros
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation

print 'Running Simulation - Find food'

#filename = 'nn_scents_based.p'
filename = 'nn_precise_100k.p'
#Init Environment and food sources
env = Env(50)
for i in range (0,10):
	env.makeFoodRandom()
	#env.makeFood(20,20);
env.updateMap()

#Create Animat
ID = 1;
a = Animat(0,0,env, filename,1)

fig = plt.figure()
ims = []
for i in range(0,1000):
	print "Tick: "+str(i);
	env.tick()
	if a.alive: