列缩放的实验的源代码


列缩放的实验的源代码


导入sys从gurobipy导入中导入随机导入argparse导入*#使用更高灵活性的参数parser = argparse.argumentparser(formatter_class = argparse.argumentdefaultshelpformatter)parser.add_argument(' -  f',' -  infile',help ='问题文件',默认=无,必需= true)parser.add_argument(' -  s',' -  scale',help ='缩放因子',type = float,default = 10000.0)parser.add_argument(' -  w',' -Outfile',Help ='保存缩放模型',默认值=无)parser.add_argument(' -  O',' - 优化',help ='优化缩放问题',type = int,default = 1)args = parser。parse_args()#load输入问题m =读取(args.infile)#在m.getvars()的给定域中随机读取(args.infile)#amply域中的所有列域(args.scale / 2.0,args.scale * 2.0)翻转= random.randint(0,3)如果flip == 0:scale = 1.0 elif flip == 1:scale = 1.0 / scale col = m.getcol(var)对于I在范围(col.size()):coeff = col.getcoeff(i)行= col.getconstr(i)m.cochgcoeff(行,var,coeff * scale)var.obj = var.obj * scale如果var.lb> -grb.infinity:var.lb = var.lb/scale如果var.ub