def __init__(self, name_model, map_x_size, map_y_size, min_step, max_step): #TODO: extract from configuration file #name_model = 'random_waypoint' #map_x_size = 100 #map_y_size = 100 self.name_model = name_model if name_model == 'random_waypoint': self.model = random_waypoint(1, dimensions=(map_x_size, map_y_size), velocity=(min_step, max_step), wt_max=0.) self.pos = None elif name_model == 'random_walk': self.model = random_walk(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'random_direction': self.model = random_direction(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'levy_walk': self.model = truncated_levy_walk(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'none': self.model = None self.pos = (str(random.randint(0, map_x_size)), str(random.randint(0, map_y_size))) else: raise Exception('The model name is not correct: %s'%name_model) self.next()
def __init__(self, name_model, map_x_size, map_y_size, min_step, max_step): #TODO: extract from configuration file #name_model = 'random_waypoint' #map_x_size = 100 #map_y_size = 100 self.name_model = name_model if name_model == 'random_waypoint': self.model = random_waypoint(1, dimensions=(map_x_size, map_y_size), velocity=(min_step, max_step), wt_max=0.) self.pos = None elif name_model == 'random_walk': self.model = random_walk(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'random_direction': self.model = random_direction(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'levy_walk': self.model = truncated_levy_walk(1, dimensions=(map_x_size, map_y_size)) self.pos = None elif name_model == 'none': self.model = None self.pos = (str(random.randint(0, map_x_size)), str(random.randint(0, map_y_size))) else: raise Exception('The model name is not correct: %s' % name_model) self.next()
import matplotlib.pyplot as plt plt.ion() ax = plt.subplot(111) line, = ax.plot([0, MAX_X], [0, MAX_Y], linestyle='', marker='.') if CALCULATE_CONTACTS: for l in range(100): ax.plot([], [], 'b-') step = 0 np.random.seed(0xffff) # UNCOMMENT THE MODEL YOU WANT TO USE ## Random Walk model rw = random_walk(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Truncated Levy Walk model #rw = truncated_levy_walk(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Random Direction model #rw = random_direction(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Random Waypoint model #rw = random_waypoint(nr_nodes, dimensions=(MAX_X, MAX_Y), velocity=(MIN_V, MAX_V), wt_max=MAX_WT) ## Gauss-Markov model #rw = gauss_markov(nr_nodes, dimensions=(MAX_X, MAX_Y), alpha=0.99) ## Reference Point Group model #groups = [4 for _ in range(10)]
import matplotlib.pyplot as plt plt.ion() ax = plt.subplot(111) line, = ax.plot(range(MAX_X), range(MAX_X), linestyle='', marker='.') if CALCULATE_CONTACTS: for l in range(100): ax.plot([], [], 'b-') step = 0 np.random.seed(0xffff) # UNCOMMENT THE MODEL YOU WANT TO USE ## Random Walk model rw = random_walk(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Truncated Levy Walk model #tlw = truncated_levy_walk(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Random Direction model #rd = random_direction(nr_nodes, dimensions=(MAX_X, MAX_Y)) ## Random Waypoint model #rwp = random_waypoint(nr_nodes, dimensions=(MAX_X, MAX_Y), velocity=(MIN_V, MAX_V), wt_max=MAX_WT) ## Gauss-Markov model #gm = gauss_markov(nr_nodes, dimensions=(MAX_X, MAX_Y), alpha=0.99) ## Reference Point Group model #groups = [4 for _ in range(10)]
def create_model_instance(self): return random_walk(self.nr_nodes, (self.MAX_X, self.MAX_Y))