def run(self): global ongoing_clustering ongoing_clustering = True self.status_listener = StatusListener(self.observer, self.status) self.status_listener.start() try: self.driver = Driver(self.observer) self.driver.run(self.parameters) except Exception, e: print e print traceback.format_exc()
class ExecutionThread(ThreadWithExc): def __init__(self, observer, parameters): super(ExecutionThread, self).__init__() self.observer = observer self.parameters = parameters self.status = {"status":"Initializing...","value":False} self.driver = None self.driver_process = None def run(self): global ongoing_clustering ongoing_clustering = True self.status_listener = StatusListener(self.observer, self.status) self.status_listener.start() try: self.driver = Driver(self.observer) self.driver.run(self.parameters) except Exception, e: print e print traceback.format_exc() finally:
parameters["clustering"]["evaluation"][ "minimum_cluster_size"] = data.minsize[dataset_name] parameters["clustering"]["evaluation"][ "minimum_clusters"] = data.num_cluster_ranges[dataset_name][0] parameters["clustering"]["evaluation"][ "maximum_clusters"] = data.num_cluster_ranges[dataset_name][1] print parameters["clustering"]["evaluation"][ "minimum_clusters"], parameters["clustering"]["evaluation"][ "maximum_clusters"] if dataset_name in data.criteria: parameters["clustering"]["evaluation"][ "evaluation_criteria"] = data.criteria[dataset_name] else: parameters["clustering"]["evaluation"][ "evaluation_criteria"] = data.criteria["default"] Driver(Observer()).run(parameters) for dataset_name in ['concentric_circles']: #data.all_datasets: results_file = os.path.join(os.path.abspath("./tmp/%s" % dataset_name), "results/results.json") results = convert_to_utf8(json.loads(open(results_file).read())) best = results["best_clustering"] clustering = Clustering.from_dic( results["selected"][best]["clustering"]) vtools.show_2D_dataset_clusters( all_observations[dataset_name], clustering, scale=20, margin=20).save("clustering_images/%s.jpg" % dataset_name, "JPEG") print dataset_name, results["selected"][best]["type"], results[ "selected"][best]["clustering"]["number_of_clusters"], results[ "selected"][best]["evaluation"][ "Noise level"], #results["selected"][best]["parameters"]
parameters = None try: parameters = ProtocolParameters.get_params_from_json( tools.remove_comments(open(json_script).read())) parameters["global"]["workspace"]["base"] = os.path.abspath( parameters["global"]["workspace"]["base"]) except ValueError, e: print "Malformed json script." print e.message exit() observer = None cmd_thread = None if options.use_mpi: from pyproct.driver.mpidriver import MPIDriver from pyproct.driver.observer.MPIObserver import MPIObserver observer = MPIObserver() if options.print_messages: cmd_thread = CmdLinePrinter(observer) cmd_thread.start() MPIDriver(observer).run(parameters) else: observer = Observer() if options.print_messages: cmd_thread = CmdLinePrinter(observer) cmd_thread.start() Driver(observer).run(parameters) if options.print_messages: cmd_thread.stop()