1 Preface¶
1前言¶
This cookbook is about model building using convex optimization. It is intended as a modeling guide for the MOSEK optimization package. However, the style is intentionally quite generic without specific MOSEK commands or API descriptions.
这本食谱是关于使用凸优化构建模型的。它旨在作为MOSEK优化包的建模指南。然而,该风格故意非常通用,没有特定的MOSEK命令或 API 描述。
There are several excellent books available on this topic, for example the books by Ben-Tal and Nemirovski [BenTalN01] and Boyd and Vandenberghe [BV04], which have both been a great source of inspiration for this manual. The purpose of this manual is to collect the material which we consider most relevant to our users and to present it in a practical self-contained manner; however, we highly recommend the books as a supplement to this manual.
有几本关于该主题的优秀书籍,例如 Ben-Tal 和 Nemirovski [ BenTalN01 ]以及 Boyd 和 Vandenberghe [ BV04 ]编写的书籍,它们都是本手册的重要灵感来源。本手册的目的是收集我们认为与用户最相关的材料,并以实用的独立方式呈现;不过,我们强烈推荐这些书籍作为本手册的补充。
Some textbooks on building models using optimization (or mathematical programming) introduce various concepts through practical examples. In this manual we have chosen a different route, where we instead show the different sets and functions that can be modeled using convex optimization, which can subsequently be combined into realistic examples and applications. In other words, we present simple convex building blocks, which can then be combined into more elaborate convex models. We call this approach extremely disciplined modeling. With the advent of more expressive and sophisticated tools like conic optimization, we feel that this approach is better suited.
一些使用优化(或数学规划)构建模型的教科书通过实际示例介绍了各种概念。在本手册中,我们选择了不同的路线,我们展示了可以使用凸优化建模的不同集合和函数,随后可以将其组合到实际的示例和应用程序中。换句话说,我们提出了简单的凸构建块,然后可以将其组合成更复杂的凸模型。我们称这种方法为极其严格的建模。随着圆锥优化等更具表现力和复杂工具的出现,我们认为这种方法更适合。
Content 内容
We begin with a comprehensive chapter on linear optimization, including modeling examples, duality theory and infeasibility certificates for linear problems. Linear problems are optimization problems of the form
我们从线性优化的综合章节开始,包括建模示例、对偶理论和线性问题的不可行性证明。线性问题是以下形式的优化问题
Conic optimization is a generalization of linear optimization which handles problems of the form:
圆锥优化是线性优化的推广,它处理以下形式的问题:
where
在哪里
It is “well-known” in the convex optimization community that this family of cones is sufficient to express almost all convex optimization problems appearing in practice.
在凸优化界“众所周知”,这个锥族足以表达实践中出现的几乎所有凸优化问题。
Next we discuss issues arising in practical optimization, and we wholeheartedly recommend this short chapter to all readers before moving on to implementing mathematical models with real data.
接下来我们讨论实际优化中出现的问题,并在继续使用真实数据实现数学模型之前,竭诚向所有读者推荐这一短章。
Following that, we present a general duality and infeasibility theory for conic problems. Finally we diverge slightly from the topic of conic optimization and introduce the language of mixed-integer optimization and we discuss the relation between convex quadratic optimization and conic quadratic optimization.
接下来,我们提出了圆锥曲线问题的一般对偶性和不可行性理论。最后,我们稍微偏离二次优化的主题,介绍混合整数优化的语言,并讨论凸二次优化和二次二次优化之间的关系。