# [Ipopt] Matrix factorization as an optimization problem (?)

Andreas Waechter andreasw at watson.ibm.com
Tue Mar 24 18:53:30 EDT 2009

```Hi Minh,

"EXIT: Problem has too few degrees of freedom." means that you have more
equality constraints than free variables.

Andreas

On Tue, 24 Mar 2009, Tran Minh Tuan wrote:

> Hi all,
>
> Following the previous question, I formulated the problem differently
> in order to have another optimization problem.
> In this case there are 2000 constraints and the result is:
>
> ===
> Number of nonzeros in equality constraint Jacobian...:    40000
> Number of nonzeros in inequality constraint Jacobian.:        0
> Number of nonzeros in Lagrangian Hessian.............:        0
>
> Exception of type: TOO_FEW_DOF in file "../../../../Ipopt/src/
> Interfaces/IpIpoptApplication.cpp" at line 668:
>  Exception message: status != TOO_FEW_DEGREES_OF_FREEDOM evaluated
> false: Too few degrees of freedom (rethrown)!
>
> EXIT: Problem has too few degrees of freedom.
> ===
>
> In the documentation of Ipopt, it is said that it is likely that
> there were too many constraints but I don't know "how many is too
> many ?".
>
> In fact, the problem that I try to solve is a matrix factorization
> problem: given m,n,r as matrix sizes and matrix V (m x n), find W (m
> x r) and H (r x n) such that V = W*H.
> This is not really a non-negative matrix factorization problem
> because V is not supposed non-negative (however, H must be non-
> negative as constraints, W is free).
>
> Thank you for your discussion,
> Minh
>
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt
>
>

```