To know a problem NP-hard or not is a delicate question. Although it is an important question for economics too, it is a kind of labyrinth for a non-specialist. Moreover, a small change of of problem setting change NP-hard problem to a tractable problem. I want to know if the problem defined below is NP-hard or not. It is a problem which lies between the (original) optimal assignment problem and the generalized assignment problem. 

The optimal assignment problem can be formulated as follows.

Find an optimal assignment  σ: a permutation of set [N] = {1, 2, ... , N} that maximizes the linear sum

            ∑i=1N   a iσ(i),

where A = ( aij ) is a positive square matrix of order N. This problem can be reduced to LP problem  

     Maximize  ∑i=1Nj=1N aij xij                                                 (1)

under the conditions

             ∑ i=1Nxij  = 1  ∀ i=1, ..., N

            ∑ j=1Nxij  = 1  ∀ j=1, ... , N;

             xij  ≧ 0     ∀ i=1, ..., N; j=1, ... , N,

This is a classical LP problem. Birkhoff, von Neumann, Koopmans and others showed that this problem can be solved by a Hungarian method. The Birkhoff-von Neumann theorem assures that this LP problem is equivalent to  the associated integer problem, i.e. the problem with the restrictions  xij = 0, 1.  

Now this problem can be generalized as Generalized Assignment Problem (GAP) and it is cited as NP-hard problem. (See for example "Generalized assignment problem" in Wikipedia.) A GAP is formulated as follows:

     Maximize  ∑ i=1M, j=1N  aij xij                                       (2)

subject to 

       ∑ j=1N  wij xij  ≦ ti  ∀ i=1, ..., M;

       ∑ i=1Mxij  = 1      ∀ j=1, ... , N;    

       xij  = {0, 1}    ∀ i=1, ..., M; j=1, ... , N,

where A = (aij) and W = (wij) are two positive rectangular matrices of size M × N and t = (ti) is a positive vector of dimension M. 

It is evident that the problem (2) is reduced problem (1) when 

            wij = 1  ∀ i, j   and   ti = 1  ∀ i.

Now let us set a third problem, which is a maximization problem on on a bipartite graph.

Let G = ([M]∪[N] , E)  where E ⊆ [M]×[N] (a bipartite graph). The problem is to

                       maximize    ∑ (i, j) ∈ E  aij xij                 (3)           

subjected to 

        ∑i=1N  xij  = 1     ∀j;

          ∑j=1xij  = 1    ∀i;

                     xij ≧ 0            ∀i, j.

If E is defined by

             (i, j)  ∈ E  if and only if   wij ≦ ti.

we see that the problem (3) lies between problem (1) and (2).

I wonder if this problem (3) is also NP-hard or it has an algorithm which ends in polynomial time. 

Similar questions and discussions