Bilevel optimization library of test problems


BOLIBver2 collects 173 bilevel optimization test examples containing 24 linear, 138 nonlinear and 11 simple ones from a wide range of publications. It was constructed from the old version BOLIB (Read more). The whole list of examples can be found in BOLIB 2019: Bilevel Optimization LIBrary of test problems version 2. All examples are coded through Matlab and saved in m-files. Each m-file has a similar pattern, such as the form in the following table. Each m-file defines one example with including the function values, first and second order derivatives of all functions.

function w=Outrata1990Ex1a(x,y,keyf,keyxy)
% This file provides all functions defining Outrata1990Ex1a problem and their first and second order derivatives.
% [dim_x dim_y dim_G dim_g] = [2 2 0 4]

if nargin<4 || isempty(keyxy)
    switch keyf
    case 'F'; w = 0.1*(x'*x)+0.5*sum((y-[3; 4]).^2)-12.5;
    case 'G'; w = [];   
    case 'f'; w = 0.5*(y'*[1 -2; -2 5]*y)-x'*y;
    case 'g'; w = [[-0.333 1]*y-2; [1 -0.333]*y-2; -y];   
    end    
else
    switch keyf
    case 'F'
        switch keyxy
        case 'x' ; w = 0.2*x;         
        case 'y' ; w = y -[3; 4];     
        case 'xx'; w = 0.2*eye(2);
        case 'xy'; w = zeros(2);
        case 'yy'; w = eye(2);
        end 
    case 'G'  
        switch keyxy            
        case 'x' ; w = [];    
        case 'y' ; w = [];          
        case 'xx'; w = [];
        case 'xy'; w = [];
        case 'yy'; w = [];
        end           
    case 'f'   
        switch keyxy
        case 'x' ; w = -y;    
        case 'y' ; w = [1 -2; -2 5]*y-x;        
        case 'xx'; w = zeros(2);
        case 'xy'; w = -eye(2);
        case 'yy'; w = [1 -2; -2 5];
        end           
    case 'g'   
        switch keyxy
        case 'x' ; w = zeros(4,2);
        case 'y' ; w = [-0.333 1; 1 -0.333; -eye(2)];                
        case 'xx'; w = zeros(8,2);
        case 'xy'; w = zeros(8,2);
        case 'yy'; w = zeros(8,2);
        end        
   end   
end
end