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
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)
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]
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)
def buildCostMap(self, testMap): cost = Cost() costMap = cost.buildCostMap(testMap) return costMap