max_iter = 10 opt_tol = 2 # % ns = 15 # Number of scenarios solved per Forward/Backward Pass # NOTE: ns should be between 1 and len(n_stage[time_periods]) z_alpha_2 = 1.96 # 95% confidence level # ###################################################################################################################### # create scenarios and input data nodes, n_stage, parent_node, children_node, prob, sc_nodes = create_scenario_tree( stages, scenarios, single_prob) sc_headers = list(sc_nodes.keys()) readData.read_data(filepath, stages, n_stage) # create blocks m = b.create_model(time_periods, max_iter, n_stage, nodes, prob) print('finished generating the blocks, started counting solution time') start_time = time.time() # Decomposition Parameters m.ngo_rn_par = Param(m.rn_r, m.n_stage, default=0, initialize=0, mutable=True) m.ngo_th_par = Param(m.th_r, m.n_stage, default=0, initialize=0, mutable=True) m.ngo_rn_par_k = Param(m.rn_r, m.n_stage, m.iter, default=0, initialize=0, mutable=True) m.ngo_th_par_k = Param(m.th_r, m.n_stage, m.iter,
self.mutex.acquire() self.count[0] = self.count[0] - 1 if self.count[0]: self.barrier.release() self.mutex.release() solve_barrier = Barrier(NumProcesses) calc_barrier = Barrier(NumProcesses) break_barrier = Barrier(NumProcesses) with pymp.Parallel(NumProcesses) as p: pid = p.thread_num # create blocks m = b.create_model(n_stages, time_periods, t_per_stage, max_iter) start_time = time.time() # Decomposition Parameters m.ngo_rn_par = Param(m.rn_r, m.stages, default=0, initialize=0, mutable=True) m.ngo_th_par = Param(m.th_r, m.stages, default=0, initialize=0, mutable=True) m.nso_par = Param(m.j, m.r, m.stages, default=0, initialize=0, mutable=True) # Parameters to compute upper and lower bounds mean = {} std_dev = {} cost_tot_forward = {} cost_UB = {} cost_LB = {} gap = {} scenarios_iter = {}
max_iter = 50 opt_tol = 1 # % ns = 30 # Number of scenarios solved per Forward/Backward Pass # NOTE: ns should be between 1 and len(n_stage[time_periods]) z_alpha_2 = 1.96 # 95% confidence level # ###################################################################################################################### # create scenarios and input data nodes, n_stage, parent_node, children_node, prob, sc_nodes = create_scenario_tree( stages, scenarios, single_prob) sc_headers = list(sc_nodes.keys()) readData.read_data(filepath, stages, n_stage, t_per_stage) # create blocks m = b.create_model(n_stages, time_periods, t_per_stage, max_iter, n_stage, nodes, readData.L_max_s, 0) print('finished generating the blocks, started counting solution time') start_time = time.time() # Decomposition Parameters m.ngo_rn_par = Param(m.rn_r, m.n_stage, default=0, initialize=0, mutable=True) m.ngo_th_par = Param(m.th_r, m.n_stage, default=0, initialize=0, mutable=True) m.ngo_rn_par_k = Param(m.rn_r, m.n_stage, m.iter, default=0, initialize=0, mutable=True) m.ngo_th_par_k = Param(m.th_r, m.n_stage, m.iter,