Kristian Ejlebjærg Jensen
COMSOL Employee
Please login with a confirmed email address before reporting spam
Posted:
4 years ago
2020年10月15日 GMT-4 04:40
Updated:
4 years ago
2020年10月15日 GMT-4 05:24
Dear Gao Lei
Are you sure that the increase in computational time is not due to finer meshes or more values of a sweep parameter (th)?
Best regards,
Kristian E. Jensen
Technical Product Manager, Optimization
Dear Gao Lei
Are you sure that the increase in computational time is not due to finer meshes or more values of a sweep parameter (th)?
Best regards,
Kristian E. Jensen
Technical Product Manager, Optimization
Please login with a confirmed email address before reporting spam
Posted:
4 years ago
2020年10月29日 GMT-4 04:07
Dear Kristian E. Jensen
Thanks for your reply. In our tests, we find that the finer meshes does increase the calculation time, but increasing the supposed observation stations in the inversion will also slow down the calculation. In the aquifer inversion optimization model, we use the same mesh and then designed three cases with different number of supposed observation stations:
(1) 6 supposed observation stations,
(2) 24 supposed observation stations,
(3) 72 supposed observation stations.
For the first case (6 observation stations), the time required for each iteration is about 0.7167 seconds. For the second case (24 observation stations), the time required for each iteration is about 4.5806 seconds. For the third case (72 observation stations), the time required for each iteration is about 12.4079 seconds. Combining calculation logs for analysis, we believe that the computation is mainly consumed by solving the sensitivity matrix. For the above three cases, the number of sensitivity matrix solving times are 6, 24, and 72 respectively. However, the use of adjoint method to solve the sensitivity matrix "multiple times" only appears in Levenberg-Marquardt method. When we use the SNOPT method, this "multiple times solving" does not exist, in other words, no matter how the number of supposed observation stations changes, solving the sensitivity matrix only requires "one single additional linear system solution." Therefore for the above three cases, the time required for each iteration is approximately the same with using SNOPT optimization solver.
Our problem is the least squares optimization problem. The documentation demonstrates that” Since the Levenberg-Marquardt method is derived to solve problems of least squares type, it typically converges faster than SNOPT for such problems.” Our example model also verified this point. So, we’d like to use the Levenberg-Marquardt method to gain better convergence effects and acquire higher computational efficiency like that in "one time solving linear systems obtaining the sensitivity matrix" of the SNOPT method.
Best regards,
Gao Lei
Dear Kristian E. Jensen
Thanks for your reply. In our tests, we find that the finer meshes does increase the calculation time, but increasing the supposed observation stations in the inversion will also slow down the calculation. In the aquifer inversion optimization model, we use the same mesh and then designed three cases with different number of supposed observation stations:
(1) 6 supposed observation stations,
(2) 24 supposed observation stations,
(3) 72 supposed observation stations.
For the first case (6 observation stations), the time required for each iteration is about 0.7167 seconds. For the second case (24 observation stations), the time required for each iteration is about 4.5806 seconds. For the third case (72 observation stations), the time required for each iteration is about 12.4079 seconds. Combining calculation logs for analysis, we believe that the computation is mainly consumed by solving the sensitivity matrix. For the above three cases, the number of sensitivity matrix solving times are 6, 24, and 72 respectively. However, the use of adjoint method to solve the sensitivity matrix "multiple times" only appears in Levenberg-Marquardt method. When we use the SNOPT method, this "multiple times solving" does not exist, in other words, no matter how the number of supposed observation stations changes, solving the sensitivity matrix only requires "*one single additional linear system solution.*" Therefore for the above three cases, the time required for each iteration is approximately the same with using SNOPT optimization solver.
Our problem is the least squares optimization problem. The documentation demonstrates that” *Since the Levenberg-Marquardt method is derived to solve problems of least squares type, it typically converges faster than SNOPT for such problems.*” Our example model also verified this point. So, we’d like to use the Levenberg-Marquardt method to gain better convergence effects and acquire higher computational efficiency like that in "one time solving linear systems obtaining the sensitivity matrix" of the SNOPT method.
Best regards,
Gao Lei