示例#1
0
文件: main.py 项目: migonsu/pyProCT
if __name__ == '__main__':
    parser = optparse.OptionParser(usage='%prog [--mpi] [--print] script', version=pyproct.__version__)

    parser.add_option('--mpi', action="store_true",  dest = "use_mpi", help="Add this flag if you want to use MPI-based scheduling.")
    parser.add_option('--print', action="store_true",  dest = "print_messages", help="Add this flag to print observed messages to stdout.")

    options, args = parser.parse_args()

    if(len(args)==0):
        parser.error("You need to specify the script to be executed.")

    json_script = args[0]

    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()
示例#2
0
    # Saving matrices
    for dataset_name in data.all_datasets:
        handler = MatrixHandler(condensed_matrices[dataset_name],
                                {"method": "load"})
        handler.save_matrix("./matrices/%s" % dataset_name)

    # Run pyProCT for each of them
    base_script = "".join(open("base_script.json", "r").readlines())
    for dataset_name in ['concentric_circles'
                         ]:  #data.all_datasets: #["spaeth_06"]:#
        print dataset_name
        # Change placeholders
        script_str = base_script % (os.path.abspath(
            "./tmp/%s" % dataset_name), "./matrices/%s" % dataset_name)
        parameters = ProtocolParameters.get_params_from_json(script_str)
        # And change another hypothesis stuff
        parameters["clustering"]["evaluation"]["maximum_noise"] = data.noise[
            dataset_name]
        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]
示例#3
0
    create_directory("./matrices")
    create_directory("./tmp")
    condensed_matrices, all_observations = vtools.create_matrices(data)
    
    # Saving matrices
    for dataset_name in data.all_datasets:
        handler = MatrixHandler(condensed_matrices[dataset_name], {"method":"load"})
        handler.save_matrix("./matrices/%s"%dataset_name)

    # Run pyProCT for each of them
    base_script = "".join(open("base_script.json","r").readlines())
    for dataset_name in ['concentric_circles']: #data.all_datasets: #["spaeth_06"]:#
        print dataset_name
        # Change placeholders
        script_str = base_script%(os.path.abspath("./tmp/%s"%dataset_name),"./matrices/%s"%dataset_name)
        parameters = ProtocolParameters.get_params_from_json(script_str)
        # And change another hypothesis stuff
        parameters["clustering"]["evaluation"]["maximum_noise"] = data.noise[dataset_name]
        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()))
示例#4
0
@author: victor
"""
from pyproct.driver.parameters import ProtocolParameters
from pyproct.driver.driver import Driver
from pyproct.driver.observer.observer import Observer
import sys
from pyproct.driver.handlers.matrix.matrixHandler import MatrixHandler
from pyproct.tools.matrixTools import get_submatrix
from pyproct.tools.plotTools import matrixToImage
from itertools import product
import numpy
from pyproct.tools.pdbTools import get_number_of_frames

if __name__ == '__main__':
    base_script = "".join(open("base_script.json","r").readlines())
    parameters = ProtocolParameters.get_params_from_json(base_script)
    parameters["global"]["workspace"]["base"] = sys.argv[3]
    parameters["data"]["files"] = [sys.argv[1], sys.argv[2]]

    frames_ini = get_number_of_frames(sys.argv[1])
    frames_proto = get_number_of_frames(sys.argv[2])
    print sys.argv[1],"->",frames_ini
    print sys.argv[2],"->",frames_proto

    try:
        Driver(Observer()).run(parameters)
    except SystemExit:
        # Expected improductive search
        # Load again the matrix
        handler = MatrixHandler({
            "method": "load",
示例#5
0
文件: main.py 项目: lowks/pyProCT
if __name__ == '__main__':
    parser = optparse.OptionParser(usage='%prog [--mpi] [--print] script', version=pyproct.__version__)

    parser.add_option('--mpi', action="store_true",  dest = "use_mpi", help="Add this flag if you want to use MPI-based scheduling.")
    parser.add_option('--print', action="store_true",  dest = "print_messages", help="Add this flag to print observed messages to stdout.")

    options, args = parser.parse_args()

    if(len(args)==0):
        parser.error("You need to specify the script to be executed.")

    json_script = args[0]

    parameters = None
    try:
        parameters = ProtocolParameters.get_params_from_json(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()
示例#6
0
@author: victor
"""
from pyproct.driver.parameters import ProtocolParameters
from pyproct.driver.driver import Driver
from pyproct.driver.observer.observer import Observer
import sys
from pyproct.driver.handlers.matrix.matrixHandler import MatrixHandler
from pyproct.tools.matrixTools import get_submatrix
from pyproct.tools.plotTools import matrixToImage
from itertools import product
import numpy
from pyproct.tools.pdbTools import get_number_of_frames

if __name__ == '__main__':
    base_script = "".join(open("base_script.json", "r").readlines())
    parameters = ProtocolParameters.get_params_from_json(base_script)
    parameters["global"]["workspace"]["base"] = sys.argv[3]
    parameters["data"]["files"] = [sys.argv[1], sys.argv[2]]

    frames_ini = get_number_of_frames(sys.argv[1])
    frames_proto = get_number_of_frames(sys.argv[2])
    print sys.argv[1], "->", frames_ini
    print sys.argv[2], "->", frames_proto

    try:
        Driver(Observer()).run(parameters)
    except SystemExit:
        # Expected improductive search
        # Load again the matrix
        handler = MatrixHandler({
            "method": "load",
示例#7
0
文件: main.py 项目: gabocic/python
    parser.add_option(
        '--print',
        action="store_true",
        dest="print_messages",
        help="Add this flag to print observed messages to stdout.")

    options, args = parser.parse_args()

    if (len(args) == 0):
        parser.error("You need to specify the script to be executed.")

    json_script = args[0]

    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)