예제 #1
0
    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'
예제 #2
0
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