<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Ok, It can be an LP the constraints are the deviation slacks for
    the&nbsp; N*N elements of the M matrix.<br>
    <br>
    Here is a MathProg formulation and&nbsp; the cplex type Lp generated.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
    /*<br>
    &nbsp; On 11/29/2011 9:53 PM, RiCo wrote:<br>
    What I want to do is to solve a problem like this (the minimization
    of a Matrix equation):<br>
    <br>
    M=[1 0 2 3; 2 -1 3 5; 4 1 -1 2; 0 -3 4 3];<br>
    N=[3 0 4; 1 5 2; 7 1 3; 2 2 1];<br>
    K=[1 0 2 3; 2 -1 3 5];<br>
    minimize( norm(M-N*X*K,Inf)&nbsp;&nbsp;&nbsp;&nbsp; infinity norm is max of the abs
    values of the cells.<br>
    return X<br>
    <br>
    (M-&nbsp; (&nbsp; (N*X) *K) ),&nbsp;&nbsp; M is 4x4, N is 4x3&nbsp; so X must be 3x?&nbsp; and K
    is 2x4.<br>
    What is the ?;&nbsp;&nbsp; It must be 2.&nbsp; So you have 6 variables Xij {
    i=1..3,j=1..2}.<br>
    <br>
    &nbsp;*/<br>
    <br>
    # set of rows of M&nbsp;&nbsp; and cols<br>
    <br>
    set I;&nbsp; # rows of M,N&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4<br>
    set J;&nbsp; # cols of M,K&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4<br>
    set K;&nbsp; # rows of K&nbsp;&nbsp; 2<br>
    set N;&nbsp; # cols of N&nbsp;&nbsp; 3<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    # dependent variables<br>
    param MM&nbsp; {i in I, j in J };<br>
    param NN&nbsp; {i in I, n in N };<br>
    param KK&nbsp; {k in K, j in J };<br>
    <br>
    # independent variable<br>
    <br>
    var x {i in I, n in N } &gt;=0;<br>
    <br>
    # define equation variables<br>
    var yp {i in I, j in J} , &gt;= 0;&nbsp;&nbsp; # positive deviation<br>
    var yn {i in I, j in J} , &gt;= 0;&nbsp;&nbsp; # negative deviation<br>
    var z &gt;= 0;&nbsp;&nbsp;&nbsp; # min the max of the (M-N*X*K)&nbsp;&nbsp; for each&nbsp; row of
    M<br>
    var nnx {i in I, n in N} ;<br>
    <br>
    <br>
    # define objective function<br>
    <br>
    minimize deviation: z;<br>
    <br>
    # define deviation constrains<br>
    <br>
    s.t. u_deviation {i in I, j in J} : z&nbsp; &gt;= yp[i,j] + yn[i,j];<br>
    <br>
    <br>
    /*<br>
    # define equation constraint&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (M-N*X*K) by cells of N<br>
    <br>
    //s.t. equation {i in I, j in J} : M[i,j] - ( NXK[i,j]&nbsp; ) = yp[i,j]
    - yn[i,j];<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fix i,p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sum {k in ?}&nbsp; ( N[i,k] *
    x[k,p])&nbsp; = NX[i,p]<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fix i,j&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sum {p in P}&nbsp; ( Nx[i,p] *
    K[p,j]) = NXK[i,j]<br>
    */<br>
    s.t. distance {i in I, j in J}&nbsp; :&nbsp; sum {k in K}&nbsp; (<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sum {n in N}&nbsp;&nbsp;&nbsp; (<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NN[i,n] *
    x[n,k]<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * KK[k,j]<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) - MM[i,j] =
    yp[i,j] - yn[i,j];<br>
    <br>
    <b>/*&nbsp; this next one is extra ---&nbsp; just use to check&nbsp; NNX sub
      product for above.*/</b><br>
    s.t. NNXtemp {i in I, k in K} :&nbsp;&nbsp; sum {n in N}&nbsp;&nbsp; (<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NN[i,n] *
    x[n,k]<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = nnx[i,k] ;<br>
    /* */<br>
    solve;<br>
    <br>
    <br>
    <br>
    /*<br>
    &nbsp;*<br>
    &nbsp;* DATA section<br>
    &nbsp;*<br>
    M=[1 0 2 3; 2 -1 3 5; 4 1 -1 2; 0 -3 4 3];&nbsp;&nbsp;&nbsp; I,J<br>
    N=[3 0 4; 1 5 2; 7 1 3; 2 2 1];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I,N<br>
    K=[1 0 2 3; 2 -1 3 5];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; K,J<br>
    &nbsp;*/<br>
    <br>
    data;<br>
    set I := 1 2 3 4;<br>
    set J := 1 2 3 4;<br>
    set K := 1 2;<br>
    set N := 1 2 3;<br>
    <br>
    # I J&nbsp;&nbsp; row col<br>
    param MM :&nbsp; 1 2 3 4 :=<br>
    &nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 0 2 3<br>
    &nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2 -1 3 5<br>
    &nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4 1 -1 2<br>
    &nbsp;&nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0 -3 4 3<br>
    ;<br>
    <br>
    # I N&nbsp;&nbsp; 4x3<br>
    param&nbsp; NN : 1 2 3 :=<br>
    &nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3 0 4<br>
    &nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 5 2<br>
    &nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7 1 3<br>
    &nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2 2 1<br>
    ;<br>
    <br>
    # X is N K&nbsp;&nbsp;&nbsp; 3x2<br>
    # K N&nbsp;&nbsp;&nbsp; 2x3<br>
    param&nbsp; KK : 1 2 3 4 :=<br>
    &nbsp; 1&nbsp;&nbsp;&nbsp; 1 0 2 3<br>
    &nbsp; 2&nbsp;&nbsp;&nbsp; 2 -1 3 5<br>
    ;<br>
    <br>
    end;<br>
    <br>
    <br>
    <br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
    <br>
    CPLEX ,lp file<br>
    \* Objective function *\<br>
    Minimize<br>
    &nbsp;deviation: +z<br>
    <br>
    \* Constraints *\<br>
    Subject To<br>
    &nbsp;u_deviation[1,1]: -yp[1,1] -yn[1,1] +z &gt;= 0<br>
    &nbsp;u_deviation[1,2]: -yp[1,2] -yn[1,2] +z &gt;= 0<br>
    &nbsp;u_deviation[1,3]: -yp[1,3] -yn[1,3] +z &gt;= 0<br>
    &nbsp;u_deviation[1,4]: -yp[1,4] -yn[1,4] +z &gt;= 0<br>
    &nbsp;u_deviation[2,1]: -yp[2,1] -yn[2,1] +z &gt;= 0<br>
    &nbsp;u_deviation[2,2]: -yp[2,2] -yn[2,2] +z &gt;= 0<br>
    &nbsp;u_deviation[2,3]: -yp[2,3] -yn[2,3] +z &gt;= 0<br>
    &nbsp;u_deviation[2,4]: -yp[2,4] -yn[2,4] +z &gt;= 0<br>
    &nbsp;u_deviation[3,1]: -yp[3,1] -yn[3,1] +z &gt;= 0<br>
    &nbsp;u_deviation[3,2]: -yp[3,2] -yn[3,2] +z &gt;= 0<br>
    &nbsp;u_deviation[3,3]: -yp[3,3] -yn[3,3] +z &gt;= 0<br>
    &nbsp;u_deviation[3,4]: -yp[3,4] -yn[3,4] +z &gt;= 0<br>
    &nbsp;u_deviation[4,1]: -yp[4,1] -yn[4,1] +z &gt;= 0<br>
    &nbsp;u_deviation[4,2]: -yp[4,2] -yn[4,2] +z &gt;= 0<br>
    &nbsp;u_deviation[4,3]: -yp[4,3] -yn[4,3] +z &gt;= 0<br>
    &nbsp;u_deviation[4,4]: -yp[4,4] -yn[4,4] +z &gt;= 0<br>
    &nbsp;distance[1,1]: +3 x[1,1] +4 x[3,1] +6 x[1,2] +8 x[3,2] -yp[1,1]
    +yn[1,1] = 1<br>
    &nbsp;distance[1,2]: -3 x[1,2] -4 x[3,2] -yp[1,2] +yn[1,2] = -0<br>
    &nbsp;distance[1,3]: +6 x[1,1] +8 x[3,1] +9 x[1,2] +12 x[3,2] -yp[1,3]
    +yn[1,3] = 2<br>
    &nbsp;distance[1,4]: +9 x[1,1] +12 x[3,1] +15 x[1,2] +20 x[3,2] -yp[1,4]
    +yn[1,4] = 3<br>
    &nbsp;distance[2,1]: +x[1,1] +5 x[2,1] +2 x[3,1] +2 x[1,2] +10 x[2,2] +4
    x[3,2] -yp[2,1] +yn[2,1] = 2<br>
    &nbsp;distance[2,2]: -x[1,2] -5 x[2,2] -2 x[3,2] -yp[2,2] +yn[2,2] = -1<br>
    &nbsp;distance[2,3]: +2 x[1,1] +10 x[2,1] +4 x[3,1] +3 x[1,2] +15 x[2,2]
    +6 x[3,2] -yp[2,3] +yn[2,3] = 3<br>
    &nbsp;distance[2,4]: +3 x[1,1] +15 x[2,1] +6 x[3,1] +5 x[1,2] +25 x[2,2]
    +10 x[3,2] -yp[2,4] +yn[2,4] = 5<br>
    &nbsp;distance[3,1]: +7 x[1,1] +x[2,1] +3 x[3,1] +14 x[1,2] +2 x[2,2] +6
    x[3,2] -yp[3,1] +yn[3,1] = 4<br>
    &nbsp;distance[3,2]: -7 x[1,2] -x[2,2] -3 x[3,2] -yp[3,2] +yn[3,2] = 1<br>
    &nbsp;distance[3,3]: +14 x[1,1] +2 x[2,1] +6 x[3,1] +21 x[1,2] +3 x[2,2]
    +9 x[3,2] -yp[3,3] +yn[3,3] = -1<br>
    &nbsp;distance[3,4]: +21 x[1,1] +3 x[2,1] +9 x[3,1] +35 x[1,2] +5 x[2,2]
    +15 x[3,2] -yp[3,4] +yn[3,4] = 2<br>
    &nbsp;distance[4,1]: +2 x[1,1] +2 x[2,1] +x[3,1] +4 x[1,2] +4 x[2,2] +2
    x[3,2] -yp[4,1] +yn[4,1] = -0<br>
    &nbsp;distance[4,2]: -2 x[1,2] -2 x[2,2] -x[3,2] -yp[4,2] +yn[4,2] = -3<br>
    &nbsp;distance[4,3]: +4 x[1,1] +4 x[2,1] +2 x[3,1] +6 x[1,2] +6 x[2,2] +3
    x[3,2] -yp[4,3] +yn[4,3] = 4<br>
    &nbsp;distance[4,4]: +6 x[1,1] +6 x[2,1] +3 x[3,1] +10 x[1,2] +10 x[2,2]
    +5 x[3,2] -yp[4,4] +yn[4,4] = 3<br>
    &nbsp;NNXtemp[1,1]: +3 x[1,1] +4 x[3,1] -nnx[1,1] = -0<br>
    &nbsp;NNXtemp[1,2]: +3 x[1,2] +4 x[3,2] -nnx[1,2] = -0<br>
    &nbsp;NNXtemp[2,1]: +x[1,1] +5 x[2,1] +2 x[3,1] -nnx[2,1] = -0<br>
    &nbsp;NNXtemp[2,2]: +x[1,2] +5 x[2,2] +2 x[3,2] -nnx[2,2] = -0<br>
    &nbsp;NNXtemp[3,1]: +7 x[1,1] +x[2,1] +3 x[3,1] -nnx[3,1] = -0<br>
    &nbsp;NNXtemp[3,2]: +7 x[1,2] +x[2,2] +3 x[3,2] -nnx[3,2] = -0<br>
    &nbsp;NNXtemp[4,1]: +2 x[1,1] +2 x[2,1] +x[3,1] -nnx[4,1] = -0<br>
    &nbsp;NNXtemp[4,2]: +2 x[1,2] +2 x[2,2] +x[3,2] -nnx[4,2] = -0<br>
    <br>
    \* Variable bounds *\<br>
    Bounds<br>
    &nbsp;nnx[1,1] &gt;= -Inf<br>
    &nbsp;nnx[1,2] &gt;= -Inf<br>
    &nbsp;nnx[2,1] &gt;= -Inf<br>
    &nbsp;nnx[2,2] &gt;= -Inf<br>
    &nbsp;nnx[3,1] &gt;= -Inf<br>
    &nbsp;nnx[3,2] &gt;= -Inf<br>
    &nbsp;nnx[4,1] &gt;= -Inf<br>
    &nbsp;nnx[4,2] &gt;= -Inf<br>
    <br>
    End<br>
    On 11/30/2011 11:11 AM, William H. Patton wrote:
    <blockquote cite="mid:4ED663A9.1030203@comcast.net" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      I would start in any matlab clone first.<br>
      Then I would not try the api. rather look at the text file input
      forms like .lp&nbsp; for rowise entry<br>
      or The harder&nbsp; .MPS&nbsp; for column oriented input.<br>
      <br>
      I cannot understand your example. I assume that the M,N,X,K are
      expressed as row vectors.<br>
      &nbsp; and parenthesis&nbsp; go&nbsp; (M-&nbsp; (&nbsp; (N*X) *K) ),&nbsp;&nbsp; M is 4x4, N is 4x3&nbsp;
      so X must be 3x?&nbsp; and K is 2x4.<br>
      What is the ?;&nbsp;&nbsp; It must be 2.&nbsp; So you have 6 variables Xij {
      i=1..3,j=1..2}.<br>
      Then (M-&nbsp; (&nbsp; (N*X) *K) )&nbsp; has 16 terms on these 6 variables.<br>
      The infinity norm is the Max of what? Presumably this form.<br>
      What are the constraints? the 6 vars positive? or free?<br>
      <br>
      Lets look at a smaller case&nbsp; M = {1} N = {3} K = { 2}&nbsp; then the
      problem is MAX{x}( 1 - 3*x*2 );<br>
      This is not much like an LP.&nbsp; I do not see it being much different
      in 2 or 10&nbsp; variables. It appears as just a form with no
      constraint equations.<br>
      <br>
      Is it accidental that K is the first 2 rows of M?&nbsp; If not then
      rewrite M as&nbsp;&nbsp;&nbsp; {K,L} and look for a simplification.<br>
      &gt;&gt;<b>very big size</b> - this could be trouble because LP
      usually likes sparse structures. Your formulation is initially
      dense<br>
      Start small and verify as in your example.<br>
      There really is no good reason to use C or the API as the
      generator for matrix posed problems.<br>
      I would try gnu <b>mathprog&nbsp; </b>or a matlab clone or something
      from the R statistics repository.<br>
      &nbsp; <a moz-do-not-send="true" class="moz-txt-link-freetext"
        href="http://www.cs.unb.ca/%7Ebremner/docs/glpk/gmpl.pdf">http://www.cs.unb.ca/~bremner/docs/glpk/gmpl.pdf</a><br>
      Decision tree:&nbsp; <a moz-do-not-send="true"
        class="moz-txt-link-freetext"
        href="http://plato.asu.edu/guide.html">http://plato.asu.edu/guide.html</a><br>
      <br>
      William<br>
      <br>
      On 11/29/2011 9:53 PM, RiCo wrote:
      <blockquote
cite="mid:CAJveyzC=MwzrPWH3QfogR8iOUzvc5u635Kzts7m=4+Lq2ZNhBQ@mail.gmail.com"
        type="cite">Hi,
        <div><br>
        </div>
        <div>I have read the installation guide. &nbsp;Since I am new in
          C/C++ and Clp, I am sorry but I don' understand how and where
          to implement the "make" instruction to tell the Dev C++ to
          link to Clp. &nbsp;There are many details which are complex to me.&nbsp;</div>
        <div><br>
        </div>
        <div>I wrote a C program using Dev C++ &nbsp;and want to call the API
          of Clp.</div>
        <div><br>
        </div>
        <div>What I want to do is to solve a problem like this (the
          minimization of a Matrix equation):</div>
        <div><br>
        </div>
        <div>
          <div>M=[1 0 2 3; 2 -1 3 5; 4 1 -1 2; 0 -3 4 3];</div>
          <div>N=[3 0 4; 1 5 2; 7 1 3; 2 2 1];</div>
          <div>K=[1 0 2 3; 2 -1 3 5];</div>
        </div>
        <div>minimize( norm(M-N*X*K,Inf) )</div>
        <div>return X&nbsp;</div>
        <div><br>
        </div>
        <div>In real case, M, N, and K are all in very big size. My C
          program will generate these three matrix. I hope to call Clp
          API to solve this minimization problem. &nbsp;</div>
        <div><br>
        </div>
        <div>I wish someone could help me with this issue. Any advice is
          very appreciated.&nbsp;</div>
        <div><br>
        </div>
        <div>Thank you so much.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
Clp mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Clp@list.coin-or.org">Clp@list.coin-or.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://list.coin-or.org/mailman/listinfo/clp">http://list.coin-or.org/mailman/listinfo/clp</a>
</pre>
      </blockquote>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Clp mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Clp@list.coin-or.org">Clp@list.coin-or.org</a>
<a class="moz-txt-link-freetext" href="http://list.coin-or.org/mailman/listinfo/clp">http://list.coin-or.org/mailman/listinfo/clp</a>
</pre>
    </blockquote>
  </body>
</html>