Skip to main content

用于 Python 的硬币或 CBC 本机接口

项目描述

Linux 构建状态

Windows 构建状态

cbcpy

Coin-or Branch and Cut Solver ( Cbc ) 的原生 Python 接口。

描述

该项目提供构建机制,使用SWIG在 Cbc C++ 代码和 Python 之间自动生成包装器代码。

该项目是 2019 年 8 月 CBC Coin-or Sprint 的一部分开发的。

以下平台的二进制文件已预编译并可在pypi上使用。

  • linux x86_64/python 2.7
  • linux x86_64 / python 3.5
  • linux x86_64 / python 3.6
  • linux x86_64 / python 3.7
  • 赢 x86 / python 2.7
  • 赢 x86 / python 3.5
  • 赢 x86 / python 3.6
  • 赢 x86 / python 3.7
  • 赢 x86_64 / python 3.5
  • 赢 x86_64 / python 3.6
  • 赢 x86_64 / python 3.7

不支持 Linux x86。

安装

预编译的 python 包被部署到cbcpy Pypi repositories。要安装cbcpy,您应该使用pip命令行:

pip install cbcpy

这些软件包包括 Cbc 的预编译版本。

对于 Windows:您必须为 VS2015 安装 Visual C++ Redistributable

用法

这是一个使用cbcpy. 你可以p0033.mps这里下载。

import cbcpy as cbc
solver1 = cbc.OsiClpSolverInterface()
solver1.readMps("p0033.mps")
model = cbc.CbcModel(solver1)
model.branchAndBound()
numberColumns = model.solver().getNumCols()
p_solution = model.solver().getColSolution()
solution = cbc.doubleArray_frompointer(p_solution)

for i in range(numberColumns):
  value = solution[i]
  print("%s has value %s" % (i, value))

文档

来自 Cbc 项目的原始文档可在 python 中使用该help()函数。

# python
Python 2.7.16 (default, Jul 13 2019, 16:01:51) 
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cbcpy
>>> help(cbcpy)
Help on module cbcpy:

故障排除

指定的模块无法找到。

>>> import cbcpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python37-32\lib\site-packages\cbcpy.py", line 15, in <module>
    import _cbcpy
ImportError: DLL load failed: The specified module could not be found.

msvcp140.dll在 Windows 平台上找不到文件时可能会出现此错误。您必须为 VS2015 安装 Visual C++ Redistributable。32 位下载“vc_redist.x86.exe”文件,64 位下载“vc_redist.x64.exe”文件。

支持

要获得 cbcpy 的社区帮助,您可以向Cbc 邮件列表发送电子邮件。

您还可以通过联系Patrik Dufresne Service Logiciel获得有偿支持。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

内置发行版

cbcpy-2.10.3a2-cp37-cp37m-win_amd64.whl (2.1 MB 查看哈希

已上传 cp37

cbcpy-2.10.3a2-cp37-cp37m-win32.whl (1.7 MB 查看哈希

已上传 cp37

cbcpy-2.10.3a2-cp37-cp37m-manylinux2010_x86_64.whl (4.5 MB 查看哈希

已上传 cp37

cbcpy-2.10.3a2-cp36-cp36m-win_amd64.whl (2.1 MB 查看哈希

已上传 cp36

cbcpy-2.10.3a2-cp36-cp36m-win32.whl (1.7 MB 查看哈希

已上传 cp36

cbcpy-2.10.3a2-cp36-cp36m-manylinux2010_x86_64.whl (4.5 MB 查看哈希

已上传 cp36

cbcpy-2.10.3a2-cp35-cp35m-win_amd64.whl (2.1 MB 查看哈希

已上传 cp35

cbcpy-2.10.3a2-cp35-cp35m-win32.whl (1.7 MB 查看哈希

已上传 cp35

cbcpy-2.10.3a2-cp35-cp35m-manylinux2010_x86_64.whl (4.5 MB 查看哈希

已上传 cp35

cbcpy-2.10.3a2-cp27-cp27mu-manylinux2010_x86_64.whl (4.5 MB 查看哈希

已上传 cp27

cbcpy-2.10.3a2-cp27-cp27m-manylinux2010_x86_64.whl (4.5 MB 查看哈希

已上传 cp27