| /********************************************************
  BCL Example Problems
  ====================
  file xbchess.c
  ``````````````
  Small LP-problem.
  (c) 2008 Fair Isaac Corporation
      author: S.Heipcke, Jan. 2000, rev. Mar. 2011
********************************************************/
#include 
#include "xprb.h"
/***********************************************************************/
int main(int argc, char **argv)
{
 XPRBvar xs;                     /* Number of small chess sets to make */
 XPRBvar xl;                     /* Number of large chess sets to make */
 XPRBctr c;
 XPRBprob prob;
 prob=XPRBnewprob("Chess");      /* Initialize a new problem in BCL */
/****VARIABLES****/
 xs = XPRBnewvar(prob,XPRB_PL,"xs",0,XPRB_INFINITY);
 xl = XPRBnewvar(prob,XPRB_PL,"xl",0,XPRB_INFINITY);
 
/****OBJECTIVE****/
 c = XPRBnewctr(prob,"OBJ",XPRB_N); 
 XPRBaddterm(c, xs,5);           /* Define the objective function */
 XPRBaddterm(c, xl,20);
 XPRBsetobj(prob,c);             /* Select objective function */ 
/****CONSTRAINTS****/
                                 /* Define the constraint 3*xs + 2*xl <= 400 */
 c=XPRBnewctr(prob,"mc_time",XPRB_L); 
 XPRBaddterm(c,xs,3);
 XPRBaddterm(c,xl,2);
 XPRBaddterm(c,NULL,400);
                                 /* Define the constraint xs + 3*xl <= 200 */
 c=XPRBnewctr(prob,"wood",XPRB_L);
 XPRBaddterm(c,xs,1);
 XPRBaddterm(c,xl,3);
 XPRBaddterm(c,NULL,200);
  
/****SOLVING****/
 XPRBsetsense(prob, XPRB_MAXIM);
 XPRBlpoptimize(prob,"");        /* Solve the LP-problem */
 return 0;
}
 |