论文部分内容阅读
最优控制,作为现代控制理论的重要组成部分,已经成为工业过程提高系统效率、提高经济效益、降低能耗的重要手段。而最优控制问题的求解则是最优控制从理论到应用的瓶颈和关键,其求解精度和求解效率核心问题一直是国内外研究的前沿和难点。 控制变量参数化(Control Variable Parameterization,简称CVP)作为求解最优控制问题主流计算方法备受青睐,其主要思想是:通过离散化控制时域,对控制变量进行参数化,进而将最优控制问题近似化为一个数学规划问题进行求解。CVP方法具有简单易行,离散化后数学规划问题规模较小的优点。但是,CVP方法在处理约束上存在一定的不足,其中:等式路径约束可能导致高阶微分代数方程,而不等式路径约束则会在求解过程中引入组合问题。同时,传统CVP方法时间网格的离散通常由人为确定,并不随优化过程而改变,这给CVP方法的高精度求解带来了挑战。此外,由于动态系统在离散化过程中进行保留,CVP方法在每次迭代计算中都要求解动态系统,这使得CVP方法的求解效率大打折扣。基于此,本文针对CVP方法开展多约束处理、计算效率和计算精度提升三个方面的研究。 本文的主要工作及创新如下: (1)考虑到控制变量参数化后得到的非线性优化(Non-Linear Programming,简称NLP)问题对最优控制问题的求解具有重要影响,针对该类复杂NLP问题的求解,在传统序列二次规划(SQP)算法的基础上,提出了一种新颖的基于Karush-Kuhn-Tucker(KKT)修正的SQP算法。为便于算法的测试,整理了用于非线性优化算法测试的专业标准测试集CathOPT。经过CathOPT测试集测试后发现,采用本文提出的KKT修正策略后,改进的SQP算法相较于MATLAB的FMINCON求解器和未使用KKT修正策略的SQP算法,求解成功率提升超过5%;同时,求解时间和迭代次数也都得到了明显减少和降低。这为CVP方法底层NLP优化问题的求解提供了良好的求解基础。 (2)针对最优控制问题的多约束处理,提出了适用于不等式约束和等式约束的多约束处理惩罚函数法,并对误差和收敛性进行了严格的理论分析和证明。研究表明,采用提出的方法后,最优控制问题的约束项转化到目标函数中,减少约束个数的同时也使问题求解难度得到降低。在此基础上,对三个包含多个约束的工业过程最优控制问题进行了实例测试和对比,结果表明了所提出方法均没有违反约束,相较于国际知名DOTcvp优化软件的轻微违反,本文提出的方法在求解效果上更加有效。 (3)为了进一步提高CVP方法的求解精度,并力求在求解精度和求解时间方面做到平衡,提出了两种时间网格重构的CVP方法。提出方法能够对重要的时间节点进行细分,而不必要的时间节点则会被消除。通过时间网格重构,CVP方法可以在较少的优化参数下得到相比于传统CVP方法更高的优化精度,从而在高精度求解的要求下,由于优化参数的减少,求解时间得到降低。上述性能在经典最优控制问题实例测试性能分析中得到了证明。 (4)针对包含多个控制变量的最优控制问题求解,提出了变时间节点快速CVP方法并进行了连续搅拌罐反应器和集装箱快速装卸最优控制实例测试。通过变时间节点方法,每个控制变量可以得到独立的时间网格进行离散,而采用快速求解方法,则能有效降低动态系统的求解时间。测试结果表明,采用动态系统的快速求解方法后,CVP方法不仅能获得具有独立时间网格的高精度控制曲线,其求解时间相比于传统CVP方法也能够大大降低。