I do not want to dig deep into theory of duality regarding the mixed integer programs, because I know they are far from being convex.
but, I did try to formulate dual of a very simple knapsack problem of low dimension, (MILP)
which in the dual problem, I only needed one dual variable due to the single constraint of the primal ( that be the capacity limit ) .
The dual was formulated without any notion or regard to the binary nature of primal variables.
solving the dual ( an LP), I did exactly get zero duality gap,
but the thing is the dual variable value, which should be seen as the Lagrange multiplier(lambda) of the primal constraint , does not behave like that.
by that I mean, when I increase the capacity by the lambda, the objective function does not increase accordingly.
is there an explanation behind that?
I hope I did make myself clear, sorry if I couldn't put it very technical.