def build_model_from_mps_file(self, filename): if not os.path.exists(filename): raise IOError("Path doesn't exist: %s" % filename) decoder = mps.Decoder() with open(filename, "r") as stream: decoder.decode(stream) return MPModelBuilder.build_from(decoder)
from les.mp_model import MPModel from les.mp_model.mp_model_builder.formats import mps from les.mp_model.mp_model_builder import MPModelBuilder decoder = mps.Decoder() filename = "/home/ira/les/data/demos/demo6.mps"#"/home/ira/Downloads/demo4.mps"#"/home/ira/Downloads/Tasks/demo_3f.mps" with open(filename, "r") as stream: decoder.decode(stream) model = MPModelBuilder.build_from(decoder) model.pprint() print model.optimize() print model.get_objective_value() nm, res = model.preproc() nm.pprint() nm.optimize() print nm.get_objective_value() for i in res: print i for i in range(len(nm.get_variables_names())): print nm.get_variables_names()[i], nm.columns_values[i]
import os import timeit from les.mp_model import MPModel from les.backend_solvers.scip import SCIP from les.frontend_solver import FrontendSolver from les.mp_model.optimization_parameters import OptimizationParameters from les.ext.google.operations_research.linear_solver import pywraplp from les.mp_model.mp_model_builder.formats import mps from les.mp_model.mp_model_builder import MPModelBuilder directory = '.' #'/home/ira/Desktop/imp/diploma/' tests = os.listdir(directory) for t in tests: if t.endswith('.mps'): model = MPModelBuilder.build_from(t) print "\n\n", t, "\n" print "LES" params = OptimizationParameters() params.driver.driver = 0 solver = FrontendSolver() solver.load_model(model) start_time = timeit.default_timer() sol2 = solver.solve(params) print sol2.get_objective_value(), timeit.default_timer() - start_time print "SCIP" params = pywraplp.MPSolverParameters() params.SetIntegerParam(params.PRESOLVE, params.PRESOLVE_OFF)