Quintiq file version 2.0 
 | 
#parent: #root 
 | 
MethodOverride Initialize (const LibOpt_Task task, MathematicalProgram program_basetype) 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    LibOpt_TestUnit_Suboptimizer::Initialize( this, this.RunContextForUTF(), task ); 
 | 
     
 | 
    program := program_basetype.astype( LibOpt_MyMPSuboptimizer_TestMP ); 
 | 
     
 | 
    var1 := program.NewVariable( 'Var1' ); 
 | 
    var1.UpperBound( 1.0 ); 
 | 
    var2 := program.NewVariable( 'Var2' ); 
 | 
    var2.UpperBound( 1.0 ); 
 | 
     
 | 
    if( this.HasHierarchicalGoal() ) 
 | 
    { 
 | 
      goal := program.NewGoal( 'Level 1' ); 
 | 
      goal.Priority( 1 ); 
 | 
      goal.NewTerm( 1.0, var1 ); 
 | 
       
 | 
      goal := program.NewGoal( 'Level 2' ); 
 | 
      goal.Priority( 2 ); 
 | 
      goal.NewTerm( 1.0, var2 ); 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      goal := program.Goal(); 
 | 
      goal.NewTerm( 1.0, var1 ); 
 | 
      goal.NewTerm( 1.0, var2 ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |