源代码,实验上一个薄可行区域


源代码,实验上一个薄可行区域


Test the effect of small微扰on the optimal solutions # for a problem with a thin可行域rhs = 1e3 m = Model(' thin line Optimization') x = m.d advar (obj=1) y = m.d advar (obj=0, lb=-GRB)。c1 = m.addConstr无穷,乌兰巴托= GRB.INFINITY) (1 e-5 * y + 1 e-0 * x < = rhs) c2 = m.addConstr (- 1 e-5 * y + 1 e-0 * x < = rhs) m.Params.OutputFlag = 0 m.Params.Presolve = 0 m.optimize () xval = x.X yval = y.X maxdiff = 0范围(1024 * 1024):我的c1。Rhs = Rhs + 2e-6 * random.random()Rhs = Rhs + 2 e-6 * random.random () x.Obj = 1 + 2 e-6 * random.random () y.Obj = 0 + 2 e-6 * random.random () m.optimize () x2val = x.X y2val = y.X错误= (xval-x2val) * (xval-x2val) + (yval-y2val) * (yval-y2val)如果错误> 1 e-5 + maxdiff:打印(“新maxdiff % g Iter % d Kappa % g违规行为:%g %g %g' %(错误,i, m.KappaExact, m.BoundVio, m. condvio, m.DualVio)) sys.stdout.flush() maxdiff =错误