I wanted to solve the simple example, given below, using the Benders decomposition approach.
from docplex.mp.model import Model
# Creating model
my_bdrex=Model('My Benders Model',log_output=True)
# Defining variables
x_1=my_bdrex.integer_var(name='x_1', lb=0)
x_2=my_bdrex.integer_var(name='x_2', lb=0)
y_1=my_bdrex.integer_var(name='y_1', lb=0)
y_2=my_bdrex.integer_var(name='y_2', lb=0)
y_3=my_bdrex.integer_var(name='y_3', lb=0)
# Adding constraints
my_bdrex.add_constraint(2*x_1+4*x_2+4*y_1-2*y_2+3*y_3<=12)
my_bdrex.add_constraint(3*x_1+5*x_2+2*y_1+3*y_2-y_3<=10)
my_bdrex.add_constraint(x_1<=2)
my_bdrex.add_constraint(x_2<=2)
# Defining the objective function
objective_bdrex=4*x_1+7*x_2+2*y_1-3*y_2+y_3
# Solving the Model
my_bdrex.maximize(objective_bdrex)
my_bdrex.parameters.benders.strategy = 1
x_1.benders_annotation=0
x_2.benders_annotation=0
y_1.benders_annotation=1
y_2.benders_annotation=1
y_3.benders_annotation=1
my_bdrex_MP.print_information()
print(my_bdrex_MP.export_as_lp_string())
my_bdrex_MP.solve(clean_before_solve=True)
my_bdrex_MP.print_solution()
The above problem is an integer programming problem. I want to solve it by putting some variables in the master problem and remaining in the subproblem. But when I run the code I get the error: CPLEX Error 2002: Invalid Benders decomposition.