Пример #1
0
    def Optimal_Data(self, c_list, R_list, thres_CR):
        self.c_list = c_list
        self.R_list = R_list
        self.thres_CR = thres_CR
        res = pd.DataFrame()
        print('Generate optimal test plans data for ' + self.name + ' RDT')
        cR_list = np.array([(c, R) for c in self.c_list for R in self.R_list])
        CR_list = []
        #PR_list = []
        AP_list = []
        RDT_list = []
        RG_list = []
        RG_exp_list = []
        WS_list = []
        WS_exp_list = []
        WS_failureprob_list = []
        cost_list = []
        n_optimal_list = []
        for i in range(len(cR_list)):
            self.c = cR_list[i][0]
            self.R = cR_list[i][1]
            self.n = Optimal.Optimal(self.name, self.pi).Optimal_Sample_Size(self.c, self.R, self.thres_CR)
            n_optimal_list.append(self.n)
            CR_list.append(Risk.Risk(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).Consumer_Risk())
            #PR_list.append(Risk.Risk(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).Producer_Risk())
            AP_list.append(Risk.Risk(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).Acceptance_Prob())
            RDT_list.append(Cost.Cost(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).RDT(self.cost_fix, self.cost_var))
            RG_list.append(Cost.Cost(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).Reliability_Growth(self.cost_reliability_growth))
            RG_exp_list.append(RG_list[i] * (1 - AP_list[i]))
            WS = Cost.Cost(self.name, n = self.n, c = self.c, pi = self.pi, R = self.R).Warranty(self.sales_volume, self. cost_warranty)
            WS_list.append(WS[0])
            WS_failureprob_list.append(WS[1])
            WS_exp_list.append(WS_list[i] * AP_list[i])
            cost_list.append(RDT_list[i] + RG_exp_list[i] + WS_exp_list[i])

        res['n'] = n_optimal_list
        res['c'] = cR_list[:, 0]
        res['R'] = cR_list[:, 1]
        res['CR'] = CR_list
        #res['PR'] = PR_list
        res['AP'] = AP_list
        res['RDT_Cost'] = RDT_list
        res['Reliabiltiy_Growth_Cost'] = RG_list
        res['Reliabiltiy_Growth_Cost_exp'] = RG_exp_list
        res['Warranty_Services_Cost'] = WS_list
        res['Warranty_Services_Failure_Probability'] = WS_failureprob_list
        res['Warranty_Services_Cost_exp'] = WS_exp_list
        res['Cost_exp'] = cost_list

        return res
Пример #2
0
 def evaluate(self, solution):
     y = solution.variables
     solution.objectives[:] = [
         -Res.Res(y, self.d, self.hStar),
         Cost.Cost(y, self.d)
     ]
     solution.constraints[:] = Constraint.Constraint(y, self.d, self.hStar)
Пример #3
0
 def fitness(self, x):
     from epanettools import epanet2 as et
     from epanettools.epanettools import EPANetSimulation, Node, Link, Network, Nodes, \
         Links, Patterns, Pattern, Controls, Control  # import all elements needed
     d = EPANetSimulation('/home/varsha/Documents/Project.inp')
     f1 = Cost.Cost(x)
     f2 = PRI.PRI(x, d)
     return [f1, f2]
Пример #4
0
 def evaluate(self, solution):
     y = solution.variables
     solution.objectives[:] = [PRI.PRI(y, self.d), Cost.Cost(y, self.d)]
     solution.constraints[:] = Constraint.Constraint(y, self.d)
Пример #5
0
 def buildCostMap(self, testMap):
     cost = Cost()
     costMap = cost.buildCostMap(testMap)
     return costMap