我最近被分配到一个项目,在python中开发一个优化工具。
各种在线搜索点都有多个图书馆/平台,各有利弊。据我所知,现有的openmdao框架我们不能拥有可以进行约束处理,混合整数,并行优化的优化器。这里并行意味着每次迭代应该像GADriver一样被并行化。我想问一下开发人员的一些建议,考虑到openmdao未来可能的改进:
考虑为可以处理上述请求的现有优化器编写包装器是否是一个好主意,或者应该完全退出openmdao,因为openmdao可能不是这个特定问题中最强大的平台?
如果编写包装器是个好主意我假设应该在openmdao 2.2.X github中查找驱动程序例程。你对python(付费或免费)中的优化器类型有什么建议,可以很容易地与openmdao兼容。
答案 0 :(得分:0)
有一篇名为"Next generation aircraft design considering airline operations and economics"的AIAA论文,描述了目前对混合整数规划问题的最新研究。这里的方法使用混合方法,利用OpenMDAO的高效梯度功能来处理大量连续设计变量。
通常,对混合整数编程没有限制。你只需要编写自己的驱动程序来处理它。这些算法很复杂,但SimpleGADriver是一个很好的开始,看看如何并行运行模型。