[Ipopt] [Cbc] Linear System Constraint Least Square

soufiane khiat soufiane.khiat at gmail.com
Mon Oct 21 15:26:55 EDT 2013


Thank for you detailled answer and clarification.
I can't buy a licence of solver like AMPL (http://www.ampl.com/index.html),
So I tried OS. MS Binaries, but as expected only x86 are provided and after
linking:
amplsolv.lib(fpinitmt.obj) : fatal error LNK1112: module machine type 'X86'
conflicts with target machine type 'x64'...

And Intel x64 binary could not be used, due to the MKL dependencies (note:
MKL is not free http://software.intel.com/en-us/intel-mkl).

So I will try to build x64 version with MinGW (I can't switch to x86).

If anyone has a x64 binary without MKL dependence that would very helpful
for Coin-OR community.

Cheers

Soufiane


2013/10/21 Ted Ralphs <ted at lehigh.edu>

> Sorry, I guess my answer wasn't too clear on a few points. The bottom line
> is that you need a Fortran compiler to build Ipopt. If you want to build
> Ipopt with Visual Studio, the only way I have successfully done it is using
> the Intel Fortran compiler along with the Visual Studio compiler. There may
> be some other ways to do it (you can build MSVC++ compatible libraries with
> the MinGW compilers for instance, though I've never done it), but this is
> by far the easiest. Actually, the only way to build the whole stack "out of
> the box" with the Visual Studio compilers is to use the autotools and the
> MSys shell, i.e., not the Visual Studio IDE. Keep in mind, though, that the
> binaries for ipopt, Bonmin, Couenne, etc only work through AMPL.
>
> To clarify one other point, the OS project is not just for building Web
> service applications. It provides libraries and binaries that work in the
> usual way, but wrap the other solvers and provide a uniform interface to
> them, including an XML-based format for specifying instances. I've
> cross-posted this to the more relevant lists in case others want to comment.
>
> Cheers,
>
> Ted
>
>
>
>
> On Mon, Oct 21, 2013 at 9:16 AM, soufiane khiat <soufiane.khiat at gmail.com>wrote:
>
>> I can't use Intel Compiler for many reason (one of them is a non-optimal
>> code for AMD http://en.wikipedia.org/wiki/Intel_C++_Compiler#Criticism).
>> So I am constraint to use Visual Studio 2012 (v11), is not a problem for
>> major part Coin-OR project's. I can automatically update to v11 from
>> MSVisualStudio/v10 folder provided by projects.
>> I don't need specially a binary (dll or/and lib) I prefer to build it my
>> self with my own options, but many dependencies are not explicited, I know
>> on linux it is very easy to compile anythink (sudo apt-get ...package...) I
>> can get directly the correct package with dependencies after make + install
>> all my dependencies are installed, but is not a case for major part of the
>> people on Windows Environnement.
>> I can't use a webservice I have to provide a standalone for users.
>> I try to build all dependencies, but all are not specified, for exemple
>> Bonmin need IpOpt and IpOpt need mpi etc...
>> I saw some project delivered with Visual Studio and Full-Third Party
>> include on one archive, I think this initiative could be generalized.
>>
>> Thanks for you time and your help
>>
>> Cheers,
>>
>> Soufiane
>>
>>
>>
>> 2013/10/19 Ted Ralphs <ted at lehigh.edu>
>>
>>> Bonmin can be built fairly easily on x64 if you have access to an Intel
>>> 64-bit compiler. Is there a reason you specifically need 64-bit binaries? I
>>> will shortly release an installer for 32-bit Windows versions of the COIN
>>> solvers built with the 32-bit Intel Fortran compiler and the 32-bit version
>>> of Visual Studio. If you need 64-bit, there will also be a 64-bit version
>>> built with MinGW. The binary of Bonmin can only be used through AMPL,
>>> however. You might take a look at the Optimization Services project (
>>> https://projects.coin-or.org/OS), which provides alternative interfaces
>>> to Bonmin and many of the other COIN solvers.
>>>
>>> Cheers,
>>>
>>> Ted
>>>
>>>
>>> On Fri, Oct 18, 2013 at 7:36 PM, soufiane khiat <
>>> soufiane.khiat at gmail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> Yes indeed Bonmin look like what I need. But on windows it's a
>>>> nightmare to build. And binary distribution do not provide any release for
>>>> Visual Studio x64.
>>>>
>>>> Other project like:
>>>> - LaGO
>>>> - Couenne
>>>> - NLPAPI
>>>> ...
>>>>
>>>> Could provide a function to solve my MIQP ?
>>>>
>>>> Thanks for you help
>>>>
>>>> Soufiane
>>>>
>>>>
>>>>
>>>> 2013/10/17 Stefan Vigerske <stefan at math.hu-berlin.de>
>>>>
>>>>> Hi,
>>>>>
>>>>> you asked for an alternative interfaces to do MIQP with Cbc, not
>>>>> whether Cbc can solve your problem.
>>>>> I never tried solving (convex) MIQPs with Cbc. Within COIN-OR, I would
>>>>> probably go with Bonmin.
>>>>>
>>>>> Stefan
>>>>>
>>>>>
>>>>> On 10/17/2013 07:46 PM, soufiane khiat wrote:
>>>>>
>>>>>> Cbc do not allow us to solve this kind of problem?
>>>>>> Or any package on Coin-OR?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Soufiane
>>>>>>
>>>>>>
>>>>>> 2013/10/17 Mike Steglich <mike.steglich at berlin.de>
>>>>>>
>>>>>>  An additional alternative for an open source MPL is CMPL (coliop.org
>>>>>>> ).
>>>>>>>
>>>>>>> Mike
>>>>>>>
>>>>>>> Am 17.10.2013 um 16:26 schrieb Stefan Vigerske:
>>>>>>>
>>>>>>>  Hi,
>>>>>>>>
>>>>>>>> you might want to look into algebraic modeling languages then, e.g.,
>>>>>>>> Pyomo, ZIMPL for open source, and
>>>>>>>> AIMMS, AMPL, GAMS for commercial.
>>>>>>>>
>>>>>>>> Stefan
>>>>>>>>
>>>>>>>>
>>>>>>>> On 10/16/2013 08:18 PM, soufiane khiat wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> I'm new on Optimization topic. I try to minimize:
>>>>>>>>> ||Ax-b||_2
>>>>>>>>> Subject to a list of constraint {B_i, L_ij, E_ij}:
>>>>>>>>> B_i (each x_i could have a: no bound, min bound, max bound or
>>>>>>>>> both):
>>>>>>>>> min_i<=x_i<=max_i
>>>>>>>>>
>>>>>>>>> L_ij (with i != j, (i,j) On [1..N]):
>>>>>>>>> x_i + x_j = u_ij With u_ij = {0 OR 1}
>>>>>>>>>
>>>>>>>>> E_ij (with i != j, (i,j) On [1..N]):
>>>>>>>>> u_i >= x_i
>>>>>>>>> u_j >= x_j
>>>>>>>>> u_i + u_j <= 1 With (u_i, u_j) is Binary variable like u_ij on
>>>>>>>>> L_ij.
>>>>>>>>>
>>>>>>>>> I have no control on size of data, number of B_i, L_ij and E_ij it
>>>>>>>>> is
>>>>>>>>>
>>>>>>>> only
>>>>>>>
>>>>>>>> a data.
>>>>>>>>> A is a Matrix NxM, x and b is a vector. So I would like to find
>>>>>>>>> best as
>>>>>>>>> possible x to satisfact this constraints.
>>>>>>>>>
>>>>>>>>> My question is, how can I fill a CbcModel to describ this problem
>>>>>>>>>
>>>>>>>> without
>>>>>>>
>>>>>>>> *.mps file?
>>>>>>>>> It is possible to only provide a Matrix A and b?
>>>>>>>>>
>>>>>>>>> Thanks for you answers.
>>>>>>>>>
>>>>>>>>> Soufiane KHIAT
>>>>>>>>> Software Engineer
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ______________________________**_________________
>>>>>>>>> Cbc mailing list
>>>>>>>>> Cbc at list.coin-or.org
>>>>>>>>> http://list.coin-or.org/**mailman/listinfo/cbc<http://list.coin-or.org/mailman/listinfo/cbc>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> ______________________________**_________________
>>>>>>>> Cbc mailing list
>>>>>>>> Cbc at list.coin-or.org
>>>>>>>> http://list.coin-or.org/**mailman/listinfo/cbc<http://list.coin-or.org/mailman/listinfo/cbc>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Cbc mailing list
>>>> Cbc at list.coin-or.org
>>>> http://list.coin-or.org/mailman/listinfo/cbc
>>>>
>>>>
>>>
>>>
>>> --
>>> Dr. Ted Ralphs
>>> Associate Professor, Lehigh University
>>> (610) 628-1280
>>> ted 'at' lehigh 'dot' edu
>>> coral.ie.lehigh.edu/~ted
>>>
>>
>>
>
>
> --
> Dr. Ted Ralphs
> Associate Professor, Lehigh University
> (610) 628-1280
> ted 'at' lehigh 'dot' edu
> coral.ie.lehigh.edu/~ted
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20131021/25fed2f9/attachment-0001.html>


More information about the Ipopt mailing list