示例#1
0
        def wrap(*args, **kwargs):
            def measure():
                time1 = time.time()
                x = func(*args, **kwargs)
                time2 = time.time()
                return (time2 - time1) * 1000.0

            measures = [measure() for _ in range(self._repeat_count)]
            mean, mn, mx, std, left, right = interval_statistics(measures)
            print(
                "Statistics - mean: {0}, min: {1}, max: {2}, std: {3}, left: {4}, right: {5} by {6} runs"
                .format(mean, mn, mx, std, left, right, self._repeat_count))

            return func(*args, **kwargs)
示例#2
0
        def componoud_update(w, c1, c2, p, best, pop):
            #doMap = random.random()
            #if doMap < 0.1:
            mapping_update(w, c1, c2, p.mapping, best.mapping, pop)
            #else:
            ordering_update(w, c1, c2, p.ordering, best.ordering, pop)

        toolbox = Toolbox()
        toolbox.register("population", heft_gen)
        toolbox.register("fitness", fitness, _wf, rm, estimator)
        toolbox.register("update", componoud_update)
        return toolbox

    pass


if __name__ == "__main__":
    exp = RdpsoBaseExperiment(wf_name="Epigenomics_24",
                              W=0.2,
                              C1=0.5,
                              C2=0.5,
                              GEN=300,
                              N=20)
    result = repeat(exp, 60)
    print(result)
    # result = exp()
    sts = interval_statistics(result)
    print("Statistics: {0}".format(interval_stat_string(sts)))
    print("Average: {0}".format(numpy.mean(result)))
    pass
        #for (profit, trans) in profit_list:
        #    file.write(str(profit) + "    " + str(trans) + "\n")   `
    w = 0.1
    c1 = 0.6
    c2 = 0.2
    gen = 300
    n = 20
    fileRes = open("F:\eScience\Work\experiments\OMPSOvsRDPSO\Sipht_30 c1_06 c2_02 gen_300 n_20 FILTER only RD TEST.txt", 'w')
    fileInfo = open("F:\eScience\Work\experiments\OMPSOvsRDPSO\Sipht_30 c1_06 c2_02 gen_300 n_20 FILTER info only RD TEST.txt", 'w')

    exp_om = OmpsoBaseExperiment(wf_name=wf_list[0],
                              W=w, C1=c1, C2=c2,
                              GEN=gen, N=n)
    result2 = repeat(exp_om, 100)
    sts2 = interval_statistics(result2)
    #for w in [x / 10 for x in range(15)]:
    for _ in [1]:
        print(w)
        wf_cur = wf_list[0]
        print(wf_cur)
        exp_rd = RdpsoBaseExperiment(wf_name=wf_cur,
                              W=0.1, C1=0.6, C2=0.2,
                              GEN=gen, N=n)

        result1 = repeat(exp_rd, 100)
        sts1 = interval_statistics(result1)


        fileInfo.write("OM " + str(w) + " " + str(sts2) + "\n")
        fileInfo.write("RD " + str(w) + " " + str(sts1) + "\n")
示例#4
0
        #curFileRD = open("C:\Melnik\Experiments\Work\PSO_compare\\result\\" + wf_cur + "\\" +  "RD w_0.2 c1_0.6 c2_test gen_300 n_20.txt", 'w')
        #curFileRD2 = open("C:\Melnik\Experiments\Work\PSO_compare\\result\\" + wf_cur + "\\" +  "RD2 w_0.2 c1_0.6 c2_test gen_300 n_20.txt", 'w')
        #curFile.write("#C1    OM    RD    RDwithMap    Heft" + "\n")
        #for wcur in [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5
        #c2 = wcur
        #print(c2)

        exp_om = OmpsoBaseExperiment(wf_name=wf_cur,
                                     W=w,
                                     C1=c1,
                                     C2=c2,
                                     GEN=gen,
                                     N=n,
                                     data_intensive=100)
        result2 = repeat(exp_om, execCount)
        sts2 = interval_statistics([makespan for (makespan, pop) in result2])

        #print("    om finish")

        exp_rd = RdpsoBaseExperiment(wf_name=wf_cur,
                                     W=w,
                                     C1=c1,
                                     C2=c2,
                                     GEN=gen,
                                     N=n,
                                     data_intensive=100)
        result1 = repeat(exp_rd, execCount)
        sts1 = interval_statistics([makespan for (makespan, pop) in result1])

        #print("    rd finish")
        """