[Bonmin] [Cbc] Linear System Constraint Least Square

Ted Ralphs ted at lehigh.edu
Mon Oct 21 15:36:26 EDT 2013


I forgot to mention that Coopr (projects.coin-or.org/Coopr) is a
Python-based modeling language that uses the AMPL solver library to
interface with Bonmin, Couenne, and Ipopt (I believe through the
OSAmplClient). This is probably your only free alternative and your best
bet for having modeling language support. It's quite a powerful modeling
environment. I've just recently built x64 binaries with MinGW for the whole
stack and am actively in the process of producing binaries and installers
for distribution. I'll post a message when that process is complete.

Ted


On Mon, Oct 21, 2013 at 3:26 PM, soufiane khiat <soufiane.khiat at gmail.com>wrote:

> 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
>>
>
>


-- 
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/bonmin/attachments/20131021/13ad1c6d/attachment.html>


More information about the Bonmin mailing list