示例#1
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)];
示例#2
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,
示例#3
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
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));
示例#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

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:
示例#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

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()
示例#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 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 = []
示例#9
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