福州网站关键排名,软文推广有哪些平台,四川建设厅官方网站查询资料员,百度收录网站提交入口问题
使用Mathematcia完成函数优化#xff08;FindMaximum#xff09;十分方便。但是如果优化的目标函数非常复杂#xff0c;里面嵌套了若干NSolve函数#xff0c;那么FindMaximum可能会计算非常长时间#xff0c;甚至无法得到正确结果。
原因在于#xff0c;Mathemtic…问题
使用Mathematcia完成函数优化FindMaximum十分方便。但是如果优化的目标函数非常复杂里面嵌套了若干NSolve函数那么FindMaximum可能会计算非常长时间甚至无法得到正确结果。
原因在于Mathemtica自动使用“符号计算”方法执行函数而不是“数值计算”方法。计算速度大幅下降。
解决方法
在目标函数定义处的自变量后添加?NumericQ比如原目标函数为
objective[A_, B_] : A B修改后为
objective[A_?NumericQ, B_?NumericQ] : A B这样再对objective目标函数进行优化可大幅提高计算速度