Question on bilinear programming

4.4k Views Asked by At

Could someone please explain the meaning and applications of bilinear programming?

I know about linear programming and the term 'bilinear' but I don't really understand the difference between linear, bilinear and quadratic programming.

What I know is, that a bilinear function maps the product of two vectors to another vector $V\times W \rightarrow R$. In this context, bilinear means that for any fixed value of the components $u$, $v$ and $w$ of e.g. $V$, the function is linear for any value of the components of $W$ and vise versa. Hence, it's different from linear programming where it's not allowed to have the product of two variables. Quadratic programming doesn't neccessarly has the requirement to have the bilinear property. Is this correct?

Another thing that interest me is: Does the bilinear property apply to the constraints as well or just to the objective function? And is bilinear programming a subset of convex optimization?

1

There are 1 best solutions below

0
On BEST ANSWER

A bilinear problem is an extension of a linear problem, allowing in the objective an expression of the form $x^TQy$, where $x,y$ is a partition of all the problem variables. So you allow mixed quadratic terms $x_iy_j$, but not a product within $x$ or $y$.

Bilinear problems are as you see a special case of quadratic problems. They are nonconvex. The pooling problem is an example http://nekst-online.nl/what-is-the-pooling-problem/