  Feasible path algorithms have been widely used for process optimisation due
to its good convergence. The sequential quadratic programming (SQP) algorithm
is usually used to drive the feasible path algorithms towards optimality.
However, existing SQP algorithms may suffer from inconsistent quadratic
programming (QP) subproblems and numerical noise, especially for
ill-conditioned process optimisation problems, leading to a suboptimal or
infeasible solution. In this work, we propose an improved SQP algorithm (I-SQP)
and an improved sequential least squares programming algorithm (I-SLSQP) that
solves a least squares (LSQ) subproblem at each major iteration. A hybrid
method through the combination of two existing relaxations is proposed to solve
the inconsistent subproblems for better convergence and higher efficiency. We
find that a certain part of the dual LSQ algorithm suffers from serious
cancellation errors, resulting in an inaccurate search direction or no viable
search direction generated. Therefore, the QP solver is used to solve LSQ
subproblems in such a situation. The computational results indicates that
I-SLSQP is more robust than fmincon in MATLAB, IPOPT, Py-SLSQP and I-SQP. It is
also shown that I-SLSQP and Py-SLSQP is superior to I-SQP for ill-conditioned
process optimisation problems, whilst I-SQP is more computationally efficient
than I-SLSQP and Py-SLSQP for well-conditioned problems.
