论文部分内容阅读
过程的动态模拟和动态优化在近二十年来愈来愈得到过程系统工程研究者的关注。实际过程的动态性决定了必须建立过程的动态模型,动态优化技术的运用对提高系统效率、降低能耗、合理利用资源及提高经济效益等方面均具有重要意义。最常用的动态优化算法是基于非线性规划的序贯算法和联立算法。序贯算法具有寻优变量少,是可行路径法,可利用现有过程模拟软件等优点,但它不能处理状态变量的路径约束。联立算法可以处理状态变量的路径约束,仅在最优点处求解一次模型方程,其缺点是寻优变量多,产生非常大的非线性规划问题,需要特殊的求解策略和数学处理。最近提出了一种结合两种算法特点的拟序贯算法。一方面,与联立算法一样离散全部变量,控制变量离散为时间单元内的分段常量函数,状态变量使用正交配置法进行离散,将状态变量的路径约束加于配置点上。另一方面,与序贯算法一样在每次迭代时求解模型方程,使得生成的非线性规划问题只包含控制变量与不等式约束,从而大大减小了优化问题的规模。非线性规划的SQP算法处理不等式约束有积极集法和障碍内点法两种。积极集法效率与有效不等式约束相关,当有效不等式约束数目增加时,积极集法效率明显下降,而障碍内点法效率与有效不等式约束数目无关。因此为了适应大规模动态优化问题大量不等式约束的需要,本文在研究基于积极集SQP的拟序贯算法和非线性规划的障碍内点法的基础上,提出了基于障碍内点法的拟序贯算法。本文主要内容包括:1建立了内点拟序贯算法的算法结构。内点拟序贯算法将优化过程分为模拟层和优化计算层双层。在模拟层中使用正交配置法离散变量并求解离散模型方程,消除等式约束和状态变量,减小NLP优化问题的规模。在优化计算层中使用障碍内点法处理非线性优化问题。2在算法结构研究的基础上,使用科学计算语言FORTRAN实现了内点拟序贯算法。为了提高算法的效率,需要考虑Jacobian矩阵的稀疏结构。为了算法尽可能自主实现,除了第三方免费的大规模稀疏线性方程组求解器,算法完全自主编写,不依赖于任何商业数学库。3使用编程实现的内点拟序贯算法进行实例优化。首先使用一个二维Rosenbrock函数优化问题比较了基于积极集SQP的拟序贯算法、基于内点法的联立算法和基于内点法的拟序贯算法的收敛路径,由该问题可以看出内点拟序贯算法在一些问题中的优势。然后通过小规模的管式反应器平行反应控制问题、中等规模的连续搅拌反应器最优控制问题以及大规模的热集成精馏系统最优控制问题三个动态优化问题验证了算法效率和稳定性。优化实例表明内点拟序贯算法可以快速有效的求解大规模动态优化问题。最后对全文研究工作进行了总结,并提出了存在的一些问题和将来的研究方向。