在线时间 155 小时 最后登录 2013-4-28 注册时间 2012-5-7 听众数 5 收听数 0 能力 2 分 体力 2333 点 威望 0 点 阅读权限 50 积分 913 相册 1 日志 26 记录 52 帖子 291 主题 102 精华 0 分享 6 好友 84
升级 78.25%
TA的每日心情 开心 2013-4-28 12:11
签到天数: 160 天
[LV.7]常住居民III
群组 : 数学软件学习
Xpress-MP是一个数学建模和优化工具包,它用于求解线性,整数,二次,非线性,以及随机规划问题。Xpress-MP的用户包括:fG>.S^
0 N9 |+ q) d) `6 l' R' E 需要在其产品中嵌入优化功能的OEM/ISV。a
- Q$ h# z+ V% `8 \7 ~8 T; v 向顾客提供优化解决方案的咨询人员。M'"SVA
/ F6 v, a5 W+ N 大型机构中需直接解决其自身的优化问题的商业分析师和其他最终用户。f/ ~% x0 E& ]. Z. x0 T* U
Xpress-MP工具包可以用于所有常见的计算机平台,并具有不同性能的版本,以及解决各种不同规模的问题。本产品支持多种用户/软件接口,包括可以使用C,C++,VB,Java,和.net语言进行调用的API库,以及独立的命令行界面。请点击此处以查看详细信息。rSV,V8 j# y2 p2 y; v( v' c/ @9 h
在这里我们将介绍Xpress-MP工具包中的各种产品,这些产品使Xpress-MP能够应用于如此广泛的领域中。E" Z+ M, D3 t& B3 C- g9 M
求解引擎DE
6 \$ N* a* |8 h; g3 P Xpress-Optimizer中包含的优化算法使你能够求解线性规划问题(LP),混合整数规划问题(MIP),二次规划问题(QP),以及混合整数二次规划问题(MIQP)。* d) |7 D/ j4 }, Z* @4 A" a+ y
Xpress-SLP是一个非线性规划问题(NLP)以及混合整数非线性规划问题(MINLP)的求解器。它使用了连续线性逼近方法,这一方法从过程工业的技术中发展而来,能够解决具有数千个变量的大型问题。EC
9 M0 I1 Q2 L; i# G/ H' l+ X# h6 D Xpress-SP是一个随机规划工具,用于求解具有不确定性的优化问题。Xpress-SP可以用于建模和求解在供应链管理,能源,财务,运输,等等过程中出现的问题,它将不确定性嵌入到优化问题中,以避免未来的变数。M{D+
6 o; }* z7 S2 I( g1 x* d Xpress-Kalis是一个有约束规划软件,它构建于Artelys的Kalis求解器之上。Xpress-Kalis专用于离散组合问题,这些问题频繁出现于诸如规划和计划制定之类的问题中。SB/
; o6 I% ~8 U2 Z 建模和开发工具z{yUh3
1 G5 M% U" a5 e Xpress-Mosel使你能够定义你的问题,然后使用一个或多个Xpress求解引擎进行求解,并对结果进行分析,这一切都通过一种专为此目的设计的全功能的编译型编程语言来实现。=j,9E
- V; R5 J8 D! k/ d: A Xpress-Mosel环境包括Mosel语言及其调试器;用于在此语言中直接访问其他软件组件和外部数据源的模块和I/O驱动;用于将模型嵌入到应用程序中的库;以及一个开放的接口,以便用户对Mosel语言进行扩展。%r'Mx) b# N! `$ R0 t4 W
Xpress-BCL是一个面向对象的库,用于在应用程序中直接构建,求解,以及分析问题。xwXvZ) ]4 i. N3 b0 |& O9 e2 r
Xpress-IVE是一个完整的Windows下的Xpress-Mosel可视化开发环境。它包括一个Mosel程序编辑器,编译器,以及执行环境。Jt0 [" Z0 [" J% I: ]2 B# C
Xpress-Application Developer(XAD)通过使用一组图形用户界面开发API对Xpress-Mosel进行扩展,使Mosel成为一个能够完成从问题的数学表达到创建用户界面中这一完整的优化应用程序开发过程的建模和编程语言。:BSW`80 q# N4 P5 u# s7 b' u T: }
其他工具*u;N:S
8 D7 \4 `0 J ^, C7 o- o6 ]. ^1 e: Y 用于Xpress-Mosel:ODBC I/O驱动以及mmodbc模块使用户能够使用数据库以及电子表格作为外部数据Xpress-Optimizer)H$>[/
$ q W4 X5 [% G z: M3 i Xpress-Optimizer中包含了复杂,鲁棒的算法,以对工业应用中最急需解决的问题进行迅速精确的求解。这一已被证实的优化技术已在世界上大量的商业应用中使用,以对具有数百万个变量以及约束条件的问题提供快速可靠的解答。 Q1 O1 N) D- Y7 V8 c$ G
Xpress-Optimizer因其解决数值求解困难或求解不稳定的问题的能力而声名远扬,这也是它在过程工业中能够在市场中遥遥领先的原因所在。~)fP|5 l3 T W" ^- Y* r- T% l
先进的算法y: \$ x! B+ t7 N3 n: G4 h5 i
Xpress-Optimizer算法使你能够求解:@
! }% D( m: I% ?, ~ LP——线性规划问题!./fu44 m* B& d4 {2 _# Q1 W
MIP——混合整数规划问题K/ Q7 e1 F+ E6 \5 Q6 y
QP——二次规划问题H&WT'y1 h% }# ?5 p* M0 S8 [3 ?" J
MIQP——混合整数二次规划问题1,U% X* E+ f, R3 c3 a
如果你的问题是非线性的,则可以使用Xpress-SLP求解器,它使用了连续线性逼近技术,可以解决具有数千个变量的非线性和混合整数非线性问题。.b
- N# f. H. q/ }! f- H# g6 W4 [. g 灵活的运用*Y
8 j, l0 T! H% m T; a: f 工具包中提供了命令行工具形式的Xpress-Optimizer,并有一组简单但强大的交互用户界面;也提供了可调用的库形式的Xpress-Optimizer,并具有C,C++,Java,Fortran,VB6,和.net编程接口。它与工业标准的LP和MPS文件格式完全兼容,并且对日志记录,二进制存储文件,以及ASCII/二进制解决方案文件提供了广泛的支持。ex2/</ c3 G/ ^( |4 @2 p) D. p0 _
作为Xpress-MP工具包中的一个集成组件,Xpress-Optimizer引擎也可以与Xpress-Mosel的高级模型开发环境或Xpress-BCL建模库的广泛的规划功能结合使用。BP&
4 m% ]+ y7 M- Y 跨平台'DrbD
, R% E+ k q5 S' u" Y Xpress-Optimizer可以应用于多种计算机体系结构和操作系统之上,并针对每个平台的特性进行了优化。<D* U& S$ K3 d+ q: Q
©数学中国 -- 数学中国 www.mathchina.com %X!7 L0 I7 G( S# Z) v% y2 \4 d z3 v
MIP优化器5n
% ^. {0 j, o- C5 m3 @4 w7 Y Xpress-Optimizer使用复杂的分支界定法来求解MIP和MIQP问题,这种方法因其快速找到高质量解的能力而闻名于世。ZEJRh$ T; r! v4 R8 _: d2 v/ H
MIP预求解算法,对问题进行预处理,以减小问题规模和缩短求解时间。I1
, \: k, q- U! C: N% k 先进的割平面法,以自动提高边界的质量,并减小全局搜索的范围。sj<_[Z" W) V7 R& j) H) I9 z$ [
流覆盖ARI
3 M$ z+ O+ O: ^1 z% k; ]% K 广义上界(GUB)覆盖mr]??) f) m9 g: Z& j; I
提升与投射,O2
& _: N1 r; Y7 F% T; V- ?2 E' c Clique割aG+ v* p9 H& e! H" o6 `: U- l3 v
流路径6_* fD
; H) R& x8 y& d- G0 r0 H 混合整数舍入'z
6 K0 ?- b$ F/ }6 D5 M$ b Gomory分数割zwjX;U
- q1 U. d. _. ]! t" D 二进制,整数,以及半连续变量,和特殊顺序的集合3" O. e4 ?' f' Z8 T
广度优先,最优优先,深度优先搜索。可自定义的节点以及变量选择策略。用户回调函数使可以对节点和变量选择进行完全控制。qW- S! E5 k; e# m
多重LP算法,以初始LP松弛及节点求解。.[Zci9 f) H7 j9 a: b' s- E$ P
用户定义的分支优先级以及分支方向命令。ud@4 j) D8 `& J+ x/ P! L
直观推断。K#?!$ Z: s, c; u! H% u
在特定的平台上对于多处理器计算机提供了并行的MIP算法。^^p_a
1 J R) j l- _1 j$ | ©数学中国 -- 数学中国 www.mathchina.com J]{Ia
7 r O2 V5 Q1 T+ h R/ m; H) C, d Xpress-Mosel/@?(9
$ I; {; ^! Z' A6 U( ^ Xpress-Mosel使你能够定义你的问题,然后使用适当的求解引擎进行求解,并对结果进行分析,这一切都将使用一种专为此目的设计的全功能的编译型编程语言来实现。Mosel程序是编译型的程序,这使它能够快速运行,并对最终用户隐藏其中的知识产权。这些程序可以交互地运行,或嵌入到应用程序中。*) U7 _# {( A/ k* }. ^
Mosel语言Q]}8p
, `& {" I6 Z' E Mosel语言易于学习和使用,这就使用户不需太多花费就可以从无到有开发优化模型,理解并审查别人开发的模型,并在远期对模型进行修改和维护。可视化的开发环境Xpress-IVE使这一过程变得更为简单。PGgr- O/ d& j- c7 [6 T% o
对任意范围,任意索引集,以及稀疏对象的完全支持意味着即使规模最大最复杂的问题也可以进行清晰简练的表达,而且不需要依赖于任何特定的数据实例。'
, s' S V5 }8 ]: w 你可以使用Mosel调试器来协助用Mosel语言进行模型开发。这一调试器支持所有典型的调试功能,以对模型的执行进行跟踪和分析。2I[YN/ \* W) W0 V t) f0 V! j( P
求解器模块和数据处理`ZJ0 w$ d, t1 y- E& Z0 x
Mosel是完全开放的,用户可对其进行扩展。Mosel发行版本包括扩展库(也称为模块),借助于其中的一个扩展库,你只需要在Mosel程序中插入优化语句,就可以直接控制Xpress-Optimizer。其他求解器模块提供了对Xpress-SLP的访问,以定义和求解非线性问题,也提供了对随机规划工具Xpress-SP,以及有约束规划软件Xpress-CP等的访问。p
$ j4 O8 r, {: Z; u. U4 D$ T 另外有一个模块提供了ODBC数据驱动,它提供了直接访问所有常见的数据库以及电子表格的接口。除了使用ODBC接口之外,数据也可以直接从文本文件,内存,或I/O流中读出或向其中写入。[i' n! j# x: z& R) I1 F
模型嵌入库guXh1P
" X$ u0 s# y# K3 E' [, U 为对模型进行部署,通常需要将模型嵌入到公司的信息系统中。借助Mosel库,你可以从编程语言环境(例如,C或Java)中执行和访问Mosel语言开发的模型。这一灵活的接口为诸如在模型和大的应用程序之间交换数据和解的值这样的应用提供了方法。9F;J~F
' l, B( f+ ^! Z+ S5 _- _6 \; x 除了Mosel自己的功能之外,某些模块也提供了从编程语言环境中对其内部函数的直接访问。t.
8 f v% h8 m1 V : b5 [+ f% G( s7 r
6 s( k9 ?( X. Z0 T" W
5 h9 W+ \8 B$ K' a8 k0 z% q% E
! J7 r8 S+ Z8 p6 X3 @
( H+ _! w5 f* l0 g
$ f# `# D$ m1 j7 @$ U2 C5 ~ ' x: x; Q% f- ^' U- g5 G- F
: j" t' D$ ` b/ Q6 }" _
, @: F. t: G6 Q* [; `
zan