def __init__(self, bidirectional, metric_goal, metric_collapse, metric_collapse_threshold, max_depth=10000, max_iterations=10000, max_time=120, max_memory_MB=25): ''' :param bidirectional: :param metric_goal: :param metric_collapse: :param metric_collapse_threshold: :param max_depth: :param max_iterations: :param max_time: :param max_memory_MB: ''' super(GenericGraphPlanner, self).__init__() self.bidirectional = bidirectional distances = get_conftools_uncertain_image_distances() self.metric_goal = distances.instance(metric_goal) self.metric_collapse = distances.instance(metric_collapse) self.metric_collapse_threshold = metric_collapse_threshold self.max_iterations = max_iterations self.max_depth = max_depth self.max_time = max_time self.max_memory_MB = max_memory_MB
def __init__(self, top, right, bottom, left, distance): self.top = top self.right = right self.bottom = bottom self.left = left self.id_distance = distance l = get_conftools_uncertain_image_distances() self.other = l.instance(self.id_distance) self.other2 = l.instance(self.id_distance)
def define_jobs_context(self, context): distances_library = get_conftools_uncertain_image_distances() distances = distances_library.expand_names(self.options.distances) distances = natsorted(distances) streams_library = get_conftools_streams() streams = streams_library.expand_names(self.options.streams) streams = natsorted(streams) # id_comb = ','.join(streams) + '-' + ','.join(distances) create_diststats_jobs(context, distances=distances, streams=streams, maxd=self.options.maxd)
def benchmark_distance(id_distance, testcases, repeat): library_testcases = get_conftools_testcases() testcases = map(library_testcases.instance, testcases) d = get_conftools_uncertain_image_distances().instance(id_distance) fps = InAWhile() for _ in range(repeat): for tc in testcases: fps.its_time() result = d.distance(tc.y0, tc.y1) print('%s / %s: %s (%s)' % (id_distance, tc.id_tc, result, tc.true_plan)) print('%s: frames per second: %s' % (id_distance, fps.fps()))
def define_jobs_context(self, context): library = get_conftools_uncertain_image_distances() distances = library.expand_names(self.options.distances) library = get_conftools_testcases() testcases = library.expand_names(self.options.testcases) self.info('Using distances: %s' % distances) self.info('Using testcases: %s' % testcases) for c, id_distance in iterate_context_names(context, distances): c.comp_config(benchmark_distance, id_distance, testcases, repeat=self.options.repeat)
def define_jobs_context(self, context): distances_library = get_conftools_uncertain_image_distances() distances = distances_library.expand_names(self.options.distances) streams_library = get_conftools_streams() streams = streams_library.expand_names(self.options.streams) discdds_library = get_conftools_discdds() discdds = discdds_library.expand_names(self.options.dds) for c, id_discdds in iterate_context_names(context, discdds): create_predstats_jobs(context=c, distances=distances, id_discdds=id_discdds, streams=streams, maxd=10)
def compute_dist_stats(id_distance, id_stream, delta): distances_library = get_conftools_uncertain_image_distances() distance = distances_library.instance(id_distance) stream = get_conftools_streams().instance(id_stream) it = stream.read_all() results = [] for logitem in iterate_testcases(it, delta): assert_allclose(len(logitem.u), delta) y0 = UncertainImage(logitem.y0) y1 = UncertainImage(logitem.y1) d = distance.distance(y0, y1) results.append(d) logger.info('%s: found %d of %d steps in %s' % (id_distance, len(results), delta, id_stream)) return results
def compute_predstats(id_discdds, id_stream, delta, id_distances): dds = get_conftools_discdds().instance(id_discdds) stream = get_conftools_streams().instance(id_stream) distances_library = get_conftools_uncertain_image_distances() distances = dict(map(lambda x: (x, distances_library.instance(x)), id_distances)) dtype = [(x, 'float32') for x in id_distances] results = [] for logitem in iterate_testcases(stream.read_all(), delta): assert_allclose(len(logitem.u), delta) y0 = UncertainImage(logitem.y0) y1 = UncertainImage(logitem.y1) py0 = dds.predict(y0, dds.commands_to_indices(logitem.u)) ds = [] for name in id_distances: d = distances[name].distance(y1, py0) # d0 = distances[name].distance(y1, y0) ds.append(d) a = np.array(tuple(ds), dtype=dtype) results.append(a) return results
def compute_predstats(id_discdds, id_stream, delta, id_distances): dds = get_conftools_discdds().instance(id_discdds) stream = get_conftools_streams().instance(id_stream) distances_library = get_conftools_uncertain_image_distances() distances = dict( map(lambda x: (x, distances_library.instance(x)), id_distances)) dtype = [(x, 'float32') for x in id_distances] results = [] for logitem in iterate_testcases(stream.read_all(), delta): assert_allclose(len(logitem.u), delta) y0 = UncertainImage(logitem.y0) y1 = UncertainImage(logitem.y1) py0 = dds.predict(y0, dds.commands_to_indices(logitem.u)) ds = [] for name in id_distances: d = distances[name].distance(y1, py0) # d0 = distances[name].distance(y1, y0) ds.append(d) a = np.array(tuple(ds), dtype=dtype) results.append(a) return results
def __init__(self, metric_attractor, **kwargs): distances = get_conftools_uncertain_image_distances() self.metric_attractor = distances.instance(metric_attractor) super(InformedPlannerGreedy, self).__init__(**kwargs)
def __init__(self, metric_attractor, **kwargs): distances = get_conftools_uncertain_image_distances() self.metric_attractor = distances.instance(metric_attractor) super(InformedPlannerGreedyTree, self).__init__(**kwargs)