COIN-OR

✍ dations ◷ 2025-11-08 08:09:08 #数学最佳化软件

COIN-OR是作业研究(Operations Research)计算基础架构(Computational Infrastructure)的缩写,这是一个致力于"为公开文献上数学理论之数学软件而建立(create for mathematical software what the open literature is for mathematical theory)"的专案。公开文献(例如研究期刊)提供作业研究社群文件的审查与保存。作业研究期刊上的数学理论,论文里经常有计算案例的数值结果。产生这些数值结果所开发的软件、模型与资料通常并未公开。这会阻碍需要重现计算结果、进行公平比较,以求精益求精的研究人员。

Linux, Apache与其他专案的成功推动软件开发的开源模式。一群IBM研究人员提议以类似开放源码方式"发布"软件、模型与资料。COIN-OR被认为是在作业研究计算社群推动开放源码的一项倡议,并提供开源软件专案营运所需的线上资源与服务。

COIN-OR网站于2000年与乔治亚州亚特兰大市第17届数学程式设计国际研讨会一起开张时带有实验性质。2007年时COIN-OR有25个专案,包括线性规划(linear programming 如 COIN-OR CLP),非线性规划(nonlinear programming 如 IPOPT),整数规划(integer programming 如 CBC, Bcp 与 COIN-OR SYMPHONY),代数建模语言(algebraic modeling languages 如 Coopr)等工具。COIN-OR由作业研究与管理科学协会(Institute for Operations Research and the Management Sciences, INFORMS)主持,并由教育性,非营利的COIN-OR基金会营运。

CLP(COIN-OR 线性规划)是一套以 C++ 写的开放源码线性规划求解软件。因为采公用授权条款,所以可用于商业软件且不受GNU通用公众授权条款的任何影响。虽然可以做成执行档,CLP 主要作为程式库使用。它设计的像商业软件般可靠(也许速度没那么快),并且能够处理非常大型的问题。

CLP 是为解决线性规划的问题而设计的:

可以有上百万个变数跟限制条件。主要的算法为单纯形法。CLP 也用于 COIN-OR 的其他计划如 SYMPHONY, BCP(Branch Cut and Price), CBC (COIN-OR Branch and Cut)等。

CBC(COIN-OR beanch and cut)是一套以 C++ 写的开放源码混合整数规划求解软件。可独立执行或作为程式库(由AMPL, GAMS,MPL, AIMMS, 或 PuLP 呼叫使用)

SYMPHONY(单工或多工最佳化网络求解)是一套在异质网络上求解混合整数规划(MIPs),开放源码之分枝切面法(branch and cut)框架-并且可以使用 CLP, CPLEX, XPRESS 或其他线性规划求解软件求解线性问题。

SYMPHONY 是一套同时实作循序(sequential)及平行(parallel)处理分枝切面与定价(branch, cut, and price)以求解 MILPs 的程式库。分枝切面与定价法类似分支界限法(branch and bound),但还包括切面法(Cutting-plane methods)与定价(pricing)算法。借由提供特定的副程式以读取自订资料档、生成特定切割平面或应用自订分枝规则,使用者可以任意自订客制化的分枝与切面算法。算法大部分的元件,如搜寻树管理、线性规划方案管理、切割池(cut pool)管理、通讯管理都含在程式库内,使用者无须操心。执行程式可以有各种配置方式,从循序执行到有独立的切割产生器(cur generators)、切割池与线性规划求解之完全平行处理。目前分散式版本可在任何 PVM 支援的环境执行。相同的程式码也可用任何 OpenMP 相容的编译器编译为共享内存架构。

PuLP 是一套以 Python 写的线性规划建模软件。可以产生 MPS 或 LP 档案并呼叫 GLPK, CLP/CBC, CPLEX 以及 Gurobi 求解。

相关

  • 认识逻辑认识逻辑是关心与知识有关的推理的模态逻辑子领域。(认识这个词的希腊语是 Episteme)。它应用于哲学、计算机科学、人工智能和其他领域。认识逻辑的基本模态算子通常写为 K,
  • 拉马克学说现代生物分类群体从它们的 共同祖先遗传分化的图示。进化论介绍(英语:Introduction to evolution) 演化的证据 共同起源 共同起源的证据群体遗传学 · 遗传多样性 突变 · 自
  • 粉笔粉笔是日常生活中广为使用的文具,一般用于书写在黑板上。粉笔一般呈长型圆柱体,颜色包括白色和多种彩色。粉笔最早的记录是在中世纪时,人们开始发现用石灰加水,可以做成块状的物
  • 鲁道夫·耶尼施鲁道夫·耶尼施(德语:Rudolf Jaenisch,1942年4月22日-),出生于纳粹德国下西里西亚省沃尔费尔斯格伦德(英语:Międzygórze, Lower Silesian Voivodeship)(现波兰),德国分子生物学家和遗
  • 荷兰足球甲级联赛荷兰足球甲级联赛(荷兰文:Eredivisie,简称荷甲)是荷兰最高级别足球联赛。1950年前荷兰只有四个地区足球联赛,当中各区最优秀的球队可以晋级参加全国锦标赛,锦标赛采取联赛形式进行
  • 1692年重要事件及趋势重要人物
  • 理性成瘾理性成瘾(英语:Rational addiction),又称理性上瘾,一个以经济学模型提出的假说,认为成瘾行为可以用理性模型来以解释。这个理论最早在1988年由凯文·墨菲(Kevin M. Murphy)与盖瑞·
  • 新秩序新秩序(印尼语:Orde Baru)是印度尼西亚第二任总统苏哈托于1966年掌权后,为与前任总统苏卡诺的“旧秩序”(Orde Lama)有所区别而使用的政治语言。一般而言,新秩序所形容的即是苏哈托
  • 亨利三世 (英格兰)亨利三世(英语:Henry III;1207年10月1日-1272年11月16日),是金雀花王朝时期的英格兰国王,由1216年到1272年在位。虽然他的在位时间相当长,但却是英格兰历史上最不出名的国王之一。亨
  • 过氧化钾过氧化钾是一种无机化合物,化学式为 K 2 O 2