def __init__(self, config): self.width = config['dims'][0] self.height = config['dims'][1] self.N_Predators = config['n_pred'] self.N_Prey = config['n_prey'] self.N_Steps = config['n_steps'] self.Predator_Starts = config['pred_start_points'] self.Prey_Starts = config['prey_start_points'] self.pred_starts_random = config['pred_starts_random'] self.prey_starts_random = config['prey_starts_random'] # Start Setting up the Simulation Params if self.pred_starts_random: for pd in range(self.N_Predators): self.Predator_Starts[pd] = utility.spawn_random_point( np.zeros((self.width, self.height))) else: for d in range(self.N_Predators): x1 = int(raw_input('Enter Predator(s) x1:')) y1 = int(raw_input('Enter Predator(s) y1:')) print '1 Predator will Be Initialized @ \033[1m\033[33m[' + \ str(x1) + ',' + str(y1) + ']\033[0m' pred_start = [x1, y1] self.Predator_Starts[d] = pred_start if self.prey_starts_random: print "\033[1m\033[31m[*] Prey Will Start From Random Locations [*]\033[0m" for py in range(self.N_Prey): self.Prey_Starts[py] = utility.spawn_random_point( np.zeros((self.width, self.height))) else: for y in range(self.N_Prey): x1 = int(raw_input('Enter Prey(s) x1:')) y1 = int(raw_input('Enter Prey(s) y1:')) print '1 Prey will Be Initialized @ \033[1m\033[33m[' + \ str(x1) + ',' + str(y1) + ']\033[0m' prey_start = [x1, y1] self.Prey_Starts[y] = prey_start # Display Simulation Settings/Parameters print str(len(self.Prey_Starts) ) + ' Different Predator Starting Locations ' + str( self.N_Prey) + ' Prey]' print str(len(self.Predator_Starts) ) + ' Different Prey Starting Locations [' + str( self.N_Predators) + ' Predators]' print '\033[1m\033[32m========================= :: BEGINNING_SIMULATION :: =======' \ '====================\033[0m'
def initialize(n_particles, width, height, show): cosmos = [] canvas = np.zeros((width, height)) for pt in range(n_particles): [x, y] = utility.spawn_random_point(canvas) canvas[y, x] = 1 cosmos.append(canvas) if show: plt.imshow(canvas, 'gray_r') plt.show() return canvas, cosmos