Contract Awards 2 |
|
|
|
|
|
| A
large software company with 4 separate buildings in different states, has
offers from 3 different |
| floppy
disk manufacturers to supply their monthly need of new diskettes. To whom
should the |
| contracts be
awarded to minimize cost? |
|
|
|
|
|
|
|
|
|
|
|
| Bids per 1000
diskettes |
|
|
|
|
|
| |
Building 1 |
Building 2 |
Building 3 |
Building 4 |
|
|
| Manufacturer
1 |
$50 |
$45 |
$48 |
$52 |
|
|
| Manufacturer
2 |
$52 |
$48 |
$51 |
$54 |
|
|
| Manufacturer
3 |
$49 |
$51 |
$50 |
$52 |
|
|
|
|
|
|
|
|
|
| Contracts awarded per 1000
diskettes |
|
|
|
| |
Building 1 |
Building 2 |
Building 3 |
Building 4 |
Total |
Available |
| Manufacturer
1 |
5 |
5 |
5 |
5 |
20 |
25 |
| Manufacturer
2 |
5 |
5 |
5 |
5 |
20 |
30 |
| Manufacturer
3 |
5 |
5 |
5 |
5 |
20 |
25 |
| Total |
15 |
15 |
15 |
15 |
|
|
| Required |
20 |
25 |
15 |
15 |
|
|
| Manufacturer
1 is only interested in contracts of 15000
diskettes or more. |
|
|
|
|
|
|
| Decisions |
0 |
0 |
0 |
0 |
|
|
| |
0 |
0 |
0 |
0 |
|
|
| |
0 |
0 |
0 |
0 |
|
|
| |
|
|
|
|
|
|
| Total Cost |
$3,010 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Problem |
|
|
|
|
|
|
| A
large software company with 4 different buildings in different states, needs
a large supply |
| of
diskettes on a monthly basis in each of those buildings. The company has 3
different offers |
| from
several floppy disk manufacturers. However, Manufacturer 1 is only interested
in |
| contracts
of 15,000 diskettes or more. Which offer or combination of offers should the |
| company accept
to minimize cost? |
|
|
|
|
| |
|
|
|
|
|
|
| Solution |
|
|
|
|
|
|
| On
the surface this problem seems to be no different from the one in Award1.
However, we |
| have
the problem that the number of diskettes bought from Manufacturer 1 should
either be 0 |
| or
greater than 15000. This is a frequently occurring constraint and Award2
shows us how to |
| handle
this type of condition. The key is to introduce 4 new binary integer
variables that tell us |
| whether a
contract is bought from manufacturer 1 or not, for each building. |
|
| |
|
|
|
|
|
|
| 1)
The variables are the contracts to be awarded, and the binary integer
variables as discussed |
| above. In worksheet Award2 these are given the
names Contracts and Contract_decisions. |
| 2) First, we
still have the constraints used in Award1: |
|
|
|
| |
Contracts_given >= Contracts_required |
|
|
|
| |
Total_contracts <= Contracts_available |
|
|
|
| |
Contracts >= 0 via the Assume Non-Negative option |
|
|
| Second, we
have the logical constraints for the binary integer variables: |
|
| |
Contract_decisions = binary |
|
|
|
| The 15000
diskettes constraint is now handled by: |
|
|
|
| |
Awarded_to_1 <= Maximum_diskettes |
|
|
|
| |
Awarded_to_1 >= Minimum_diskettes |
|
|
|
| 3) The objective is still to minimize total cost, defined
on this worksheet as Total_Cost. |
| |
|
|
|
|
|
|
| Remarks |
|
|
|
|
|
|
| The
introduction of binary integer variables often allows us to express the
effect of more |
| complex
conditions as seen in this model. It would also be possible to handle other
types of |
| constraints.
For example, if Manufacturer 2 only distributes diskettes in multiples of
5000, |
| we
could model this constraint with binary integer variables. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|