PROC() |

**begin** |

(1) Let for all and for all be , and -variables of |

the optimal solution of respectively; |

(2) Set ; |

(3) Fix some at the associated values according to Proposition 2 and determine , |

and for all by Corollary 3; |

(4) Set for all and ; |

(5) Set and for all and where and |

are binary variables having 1 only if and are not necessary |

to be solved respectively, and 0 otherwise; |

(6) Set ; |

(7) **while **** do** |

(8) **if **** then** |

(9) Set ; |

(10) **while **** do** |

(11) **if **** then** |

(12) Solve and set the resulting solution as (; |

(13) Set for all and ; |

**end** |

(14) Set and for all |

by Proposition 4(a); |

(15) Set ; |

**end** |

(16) Set for all by Proposition 4(b) where |

such that ; |

(17) **if **** then** |

(18) Set (refer to (10)); |

(19) Set and for all ; |

**end** |

**end** |

(20) Set ; |

**end** |

**end** |