def build_random_routes(attempts_num, min_len): scheme_len = len(SystemBuilder.scheme.node) k = 0 while k < attempts_num: first_station_number = int(random() * scheme_len) + 1 second_station_number = int(random() * scheme_len) + 1 way_len, way_list = \ nx.bidirectional_dijkstra(SystemBuilder.scheme, first_station_number, second_station_number) if way_len >= min_len: way_list = way_list + way_list[::-1][1:] new_route = Route(way_list, RandomFunctions.launch_cost_func(way_list)) SystemBuilder.routes.append(new_route) k += 1 SystemBuilder._create_routes_scheme()
def set_random_launch_costs(): for route in SystemBuilder.routes: route.cost_of_launch = RandomFunctions.launch_cost_func(route.route_list)