June 15th, 2006, 12:14 pm
Alan- Yes, this is a special class of integer programming (In integer programming, the variables can take any integer values but here they can only be 0-1). The branch and bound algorithm is a well-known algorithm for solving integer programming problems. It involves solving the problem as an LP without the integrality constraint and then searching for integer solutions. The algorithm I implemented(implicit enumeration) is a specialized form of the branch-and-bound which does away with the overhead of solving the LP's capitalizing on the binary nature of the variables. I tried the general branch-and-bound as it is implemeneted in Excel Solver, I found that the there are no feasible results or the results are not optimal, depending on the starting values of x_i's!! Thanks for taking the trouble to look it up....Devilish-You are right about using a better tool..Well, that is an constraint on me ! The resulting program has to be shared with users with no access to SAS so I am stuck with VBA! The context of the problem is pretty familiar:Selection of assets from a given pool for securitization under some market/rating agencies specified guidelines.I am just trying to speed up the manual process!As you can easily notice the problem has a search space of 2^n possible compbinations (where n is the number of bonds) without the use of any optimization algorithm. Additionally, the Weighted Average/Concentration constraints are AGGREGATE constraints i.e. they can't be evaluated for feasibility unless all the x_i's are specified, whereas branch and bound type methods work one x_i at a time making the search inefficient esp. with VBA. If anyone has any experience of using a better methodology for such problems please let me know......I am sure some analytics shops have tackled the issue..Thanks Alan, devilish for your comments
Last edited by
chiranjiv on June 14th, 2006, 10:00 pm, edited 1 time in total.