| |||||||||||||||||||||||||||||||||
Retrieving data from a Mosel model Description mmexset.java: Using sets in Mosel (requires burglari.bim)
Further explanation of this example: 'Mosel Library Reference javadoc'
Source Files By clicking on a file name, a preview is opened at the bottom of this page.
Data Files
mmexprob.java /********************************************************/ /* Mosel Library Examples */ /* ====================== */ /* */ /* file mmexprob.java */ /* `````````````````` */ /* Example for the use of the Mosel libraries */ /* (accessing problems and solution information) */ /* */ /* (c) 2008 Fair Isaac Corporation */ /* author: S. Heipcke, 2004 */ /********************************************************/ import com.dashoptimization.*; public class mmexprob { public static void main(String[] args) throws Exception { XPRM mosel; XPRMModel mod; XPRMArray varr, darr; XPRMLinCtr lgrade; int[] indices; mosel=new XPRM(); // Initialize Mosel mod=mosel.loadModel("Models/blend2.bim");// Load a BIM file mod.run(); // Run the model // (it includes optimization) mod.exportProblem("p","blend"); // Export problem to a file in LP // format (maximization) if(mod.getProblemStatus()==mod.PB_OPTIMAL) // Test whether optimal is found System.out.println("Solution is optimal"); System.out.println("Objective value: "+mod.getObjectiveValue()); // Print the objective function value varr=(XPRMArray)mod.findIdentifier("x"); // Get the model object named 'x' // it must be an array darr=(XPRMArray)mod.findIdentifier("COST");// Get the model object 'COST' // it must be an array indices=varr.getFirstIndex(); // Get the first entry of the array varr do { // Display solution value and corresponding cost System.out.println( "x(" + indices[0] + ")=" + varr.get(indices).asMPVar().getSolution() + "(COST: " + darr.getAsReal(indices) + ")"); } while(varr.nextIndex(indices)); // Get the next index // Get the model object 'LoGrade' // it must be a reference to // a linear constraint lgrade=((XPRMReference)mod.findIdentifier("LoGrade")).asLinCtr(); System.out.println( // Display the activity and dual values "LoGrade: activity=" + lgrade.getActivity() + ", dual=" + lgrade.getDual() ); mod.reset(); } } | |||||||||||||||||||||||||||||||||
© Copyright 2024 Fair Isaac Corporation. |