Fortran 90中的优化例程

时间:2012-02-22 16:10:49

标签: fortran mathematical-optimization fortran90 gfortran

我正在使用gfortran编译器在Windows 7机器上进行(试图)Fortran 90中的数值优化。我有一个函数,由其他人预先编写,它返回一个函数的loglikelihood我,给出了一大组参数(总共约60个参数)传入。我试图复制某人的结果,所以我知道最后的参数值,但我试图重新估计它们,并最终扩展其模型并使用不同的数据。我一直在尝试使用uobyqa.f90例程here,到目前为止还没有特别成功。

我的问题是:首先,对于具有大量参数(超过60个)的优化问题,任何人都可以建议最好的免费例程吗?衍生物不可用,并且在数值上估计成本很高,因此首先尝试uobyqa例程。此外,实施并行化辅助工具是否会显着解决这个问题?如果是这样,有人可以建议一个已经使用openmp实现并行化的优化例程吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

我对特定的优化策略没有很好的建议,但NLopt包有一些可以处理大量变量的无衍生优化器。值得一试。我发现Fortran界面非常易于使用。

答案 1 :(得分:0)

首先在这个问题上定期(发表学术)文献搜索。 也许尝试将“LAPACK”包含在您的其他搜索字词中(例如“优化”,“uobyqa”等)以查看其他方的相关工作。