/********************************************************/ /* Xpress-BCL C# Example Problems */ /* ============================== */ /* */ /* file xbchess.cs */ /* ``````````````` */ /* Example for the use of Xpress-BCL */ /* (Small LP-problem from XPRESS-MP User Guide) */ /* */ /* (c) 2008-2024 Fair Isaac Corporation */ /* authors: S.Heipcke, D.Brett. */ /********************************************************/ using System; using System.Text; using System.IO; using BCL; namespace Examples { public class TestChess { public static void Main() { System.Console.WriteLine("Started Chess Test.\n"); XPRB.init(); //OK, now try a few things from the sample files translated to C#: XPRBvar xs; /* Number of small chess sets to make */ XPRBvar xl; /* Number of large chess sets to make */ XPRBprob p = new XPRBprob("Chess"); /* Initialize a new problem in BCL */ /****VARIABLES****/ xs = p.newVar("xs"); xl = p.newVar("xl"); /****OBJECTIVE****/ p.setObj(p.newCtr("OBJ", 5 * xs + 20 * xl)); /****CONSTRAINTS****/ /* Define the constraint 3*xs + 2*xl <= 400 */ p.newCtr("mc_time", 3 * xs + 2 * xl <= 400); /* Define the constraint xs + 3*xl <= 200 */ p.newCtr("wood", xs + (3 * xl) <= 200); System.Console.WriteLine("Constraints set\n"); /****SOLVING****/ p.setSense(BCLconstant.XPRB_MAXIM); p.lpOptimize(); /* Solve the LP-problem */ return; } } }