We present techniques used in the implementation of an efficient constraint program for the portfolio optimization (PO) problem. This important combinatorial problem in the credit derivatives market arises for example when constructing synthetic collateralized debt obligations (CDOs) squared. A close relationship with the balanced incomplete block design (BIBD) problem exists which we make use of. Due to the large size of typical PO instances, global solving is not possible, instead we embed and solve sub-instances. The high quality of our approximate solutions can be assessed by comparison with a tight lower bound on the cost. Together with detection of BIBDs, symmetry breaking, extended reuse of already solved instances, and existence-checking during search, the performance of the program becomes good enough for constructing optimal portfolios of CDOs squared, with sizes common in the credit derivatives market, within minutes or seconds.
Note: M.Sc. thesis
Available as PDF (473 kB, no cover)
Download BibTeX entry.