MPL Model Library MPL Model Library Portfolio Selection, Example 1.3b, Shapiro { Exmpl1-3b_PortfolioSelection.mpl } { Roy D. Shapiro, Optimization Models for Planning and Allocation } { Chapter 1, Example 3, Portfolio Selection, Size: 5x6, Page 21 } TITLE PortfolioSelection; INDEX bond := (A, B, C, D, E); type := (Municipal, Agency, Government); BondType[bond,type] := (A, Municipal, B, Agency, C, Government, D, Government, E, Municipal); DATA TotalAvailForInvest := 10; QualityBank[bond] := (2, 2, 1, 1, 5); YearsToMaturity[bond] := (9, 15, 4, 3, 2); Yield[bond] := (8.6%, 10.8%, 10.0%, 8.8%, 9.0%); YieldAfterTax[bond] := (8.6%, 5.4%, 5.0%, 4.4%, 9.0%); MaxMunicipal := 3; MaxAvgQuality := 1.4; MaxAvgMaturity := 5; TaxRate := 50%; BorrowInterestRate := 11%; VARIABLES Invest[bond] -> x; Borrow -> y; MODEL MAX AfterTaxEarnings = SUM(bond: YieldAfterTax * Invest) - BorrowInterestRate * TaxRate * Borrow; SUBJECT TO AmountInvested: SUM(bond: Invest) <= TotalAvailForInvest + Borrow; MaxInvestType[type=Municipal]: SUM(bond IN BondType: Invest) <= MaxMunicipal; QualityReq: SUM(bond: QualityBank * Invest) <= MaxAvgQuality * SUM(bond: Invest); MaturityReq: SUM(bond: YearsToMaturity * Invest) <= MaxAvgMaturity * SUM(bond: Invest); MaxBorrow: Borrow <= 1; END Return to MPL Model Library