Exemple #1
0
    def test(self):
        txt = """
        @relation concrete
        @attribute Cement real [102.0, 540.0]
        @attribute BlastFurnaceSlag real [0.0, 359.4]
        @attribute FlyAsh real [0.0, 200.100006]
        @attribute Water real [121.8, 247.0]
        @attribute Superplasticizer real [0.0, 32.200001]
        @attribute CoarseAggregate real [801.0, 1145.0]
        @attribute FineAggregate real [594.0, 992.6]
        @attribute Age integer [1, 365]
        @attribute ConcreteCompressiveStrength real [2.33, 82.6]
        @inputs Cement, BlastFurnaceSlag, FlyAsh, Water, Superplasticizer, CoarseAggregate, FineAggregate, Age
        @outputs ConcreteCompressiveStrength
        @data
        252.000000, 0.000000, 0.000000, 185.000000, 0.000000, 1111.000000, 784.000000, 7.000000, 13.710000
        295.799988, 0.000000, 0.000000, 185.699997, 0.000000, 1091.400024, 769.299988, 7.000000, 14.840000
        252.300003, 0.000000, 98.800003, 146.300003, 14.200000, 987.799988, 889.000000, 3.000000, 21.780001
        """

        print parse_data(txt)
        vars, out_var, data = create_from_data(txt)

        self.assertEqual(vars[0].name, "Cement")
        self.assertEqual(vars[0].min, 102)
        self.assertEqual(vars[0].max, 540)

        self.assertEqual(vars[1].name, "BlastFurnaceSlag")
        self.assertEqual(vars[1].min, 0)
        self.assertEqual(vars[1].max, 359.4)
Exemple #2
0
progressbar = ProgressBar()

def progress_callback(v):
    progressbar.updateAmount(v)
    progressbar.draw()
    pass


fs_weights = dict()
for i in xrange(1, 6):
    fname_base = "D:\\data\\diabets\\diabetes-5-%s%s.dat"

    print "================SET %s=================" % i
    tr_f_name = fname_base % (i, "tra")
    vars, out_var, tr_data = create_from_data(open(tr_f_name, 'r').read())
    for j in xrange(3):
        print "================FS %s=================" % j
        for var in vars:
            TriangleTerm("", 0, 1, 2).distribute_copies_on_var(var, 5, True, 1)
        tr_data_sub_set = tr_data[i::3]
        fs = SingleTone(vars, None, out_var)
        fsd = AutoLSMDecorator(fs, tr_data_sub_set)
        bb = FuzzySystemBlackBox(tr_data_sub_set, calc_rmse, out_var, fsd)
        #    bb = FuzzySystemBlackBox(tr_data, calc_rmse, out_var, fs)

        before = bb.get_target_value()
        print "run ga"
        genetic_alg(bb, progress_callback, 50)

        after = bb.get_target_value()