IPapplic

advertisement

Math 4630/5630

Applications of Integer Programming

1. Fair representation in electoral systems.

Suppose that a state sends R persons to the U.S. House of Representatives. There are D counties in the state ( D>R ), and the state legislature wants to group these counties into R distinct electoral districts, each of which sends a delegate to Congress. The total population of the state is P , and the legislature wants to form districts whose population approximates p=P/R . Suppose that the appropriate legislative committee studying the electoral districting problem generates a long list of N candidates to be districts ( N>R ).

Each of these candidates contains contiguous counties and a total population p j

( j=1,2,

…, N

) that is acceptably close to p . Define c j

=|p j

– p| . Each county i ( i=1,2,…, D

) is included in at least one candidate and typically will be included in a considerable number of candidates (in order to provide many feasible ways of selecting a set of R candidates that includes each county exactly once). Define a ij

1

0 if if county not .

i is included in candidate j ,

Given the values of the c j

and the a ij

, the objective is to select R of these N possible districts such that each county is contained in a single district and such that the largest of the associated c j

is as small as possible.

Formulate an IP model for this problem.

2. Consultant Hiring

Assume that you are responsible for hiring outside consultants for a large corporation.

There are potential projects currently being considered by the corporation, each of which would require outside consultants if pursued. Let I denote the set of projects. Assume that the profit from project i, excluding consulting costs, has been estimated at $p i

.

The corporation has a pool of outside consultants. Let J denote the set of consultants. Let

$c j

denote the weekly cost of consultant j. Each consultant in the pool is characterized in terms of certain attributes, such as knowledge of the programming language C++.

Assume that there are K different attributes which the corporation considers relevant.

Numbering these attributes k=1,…,K, each consultant can thus be thought of as the Kvector which has “1” as the k th coefficient if the consultant possesses attribute k and has

“0” otherwise.

The needs of the projects can also be characterized in terms of K-vectors; the k th coefficient indicates the number of consultants needed whom possess attribute k. For example, if the first attribute is knowledge of C++ and the first coefficient is 3 then the project needs three consultants with knowledge of C++. A single consultant can fulfill many of the needs of a project if that consultant is richly endowed in attributes.

Each of the projects has a certain duration. If a consultant is hired to work on a project then the consultant must work only on that project for the entire duration of the project.

Project i must start precisely at the beginning of week b i

and must be completed precisely at the end of week e i

. (So there is no choice as to when to begin and end projects.)

Which projects should be pursued, and which consultants should be hired for those projects that are pursued? Formulate an IP.

Download