return master.Objective_rule(), slave.Objective_rule() # Resolviendo puntos de partida print '\nSolving Starting Points' Requerimientos = {} contador = {} for p in master_instance.PARTICIONES: Requerimientos[0, p] = (100, 100) Requerimientos[1, p] = (150, 100) Requerimientos[2, p] = (100, 150) for i in [0, 1, 2]: print ("--- Creando Master -- ", p) data_master1p.load(filename=path_datos+'data_config_'+p+'.csv', param=master_model.config_value, index=master_model.CONFIG) master1p = master1p.create(data_master1p) print '\nStarting point', i+1, ' ', p [fobj[i, p], ENS[i, p]] = solve_despacho_y_confiabilidad(master1p, slave_instance, Requerimientos[i, p][0], Requerimientos[i, p][1]) print 'ENS de la particion ', p, ' del punto ', Requerimientos[i, p], ' = ', ENS[i, p], ' [MW]' v1 = [ENS[2, p]-ENS[0, p], Requerimientos[2, p][0]-Requerimientos[0, p][0], Requerimientos[2, p][1]-Requerimientos[0, p][1]] v2 = [ENS[it, p]-ENS[1, p], Requerimientos[1, p][0]-Requerimientos[0, p][0], Requerimientos[1, p][1]-Requerimientos[0, p][1]] vnormal = [v1[1]*v2[2]-v1[2]*v2[1], v1[2]*v2[0]-v1[0]*v2[2], v1[0]*v2[1]-v1[1]*v2[0]] vnormal = [1, vnormal[1]/vnormal[0], vnormal[2]/vnormal[0]]
filename=path_datos + "data_bar_dyn.csv", param=master_model.demanda, index=(master_model.BARRAS, master_model.ESCENARIOS), ) data_master.load(filename=path_datos + "data_scenarios.csv", set=master_model.ESCENARIOS) data_master.load( filename=path_datos + "data_config_CN-CENTRO.csv", param=master_model.config_value, index=master_model.CONFIG ) data_slave = data_master print ("--- Creando Master ---") master_instance = master_model.create(data_master) # master_instance2 = master_model.create(data_master2) print ("--- Creando Slave---") slave_instance = slave_model.create(data_slave) opt = SolverFactory("cplex") def solve_despacho_y_confiabilidad(master, slave, req1, req2): master.Req_Z1 = req1 master.Req_Z2 = req2 # master.preprocess() results_master = opt.solve(master, tee=False)