AnyMath 文档

皮克玛。jl

该页面正在翻译中。

脧锚脧赂`[医皮克玛`]是Cma-ES的Python实现和一些相关的数值优化工具。 OptimizationPyCMA。jl 通过统一的访问CMA-ES优化器 优化。jl 界面就像任何本地Julia优化器一样。 OptimizationPyCMA。jl 依靠https://github.com/cjdoris/PythonCall.jl[脧锚脧赂`毕通卡尔`]. 包含PyCMA的最小Python发行版将在首次使用时自动安装,因此不需要手动设置Python。

安装:OptimizationPyCMA。jl

import Pkg
Pkg.add("OptimizationPyCMA")

方法

PyCMAOpt 支持通常的关键字参数 最大的,最大的, 最大时间, 阿布斯托尔, [医]雷托尔, 回调;回调 除了任何PyCMA特定的选项(通过关键字参数逐字传递到 解决方案).

例子:

using OptimizationPyCMA

rosenbrock(x, p) = (p[1] - x[1])^2 + p[2] * (x[2] - x[1]^2)^2
x0 = zeros(2)
_p = [1.0, 100.0]
l1 = rosenbrock(x0, _p)
f = OptimizationFunction(rosenbrock)
prob = OptimizationProblem(f, x0, _p, lb = [-1.0, -1.0], ub = [0.8, 0.8])
sol = solve(prob, PyCMAOpt())
retcode: Success
u: 2-element Vector{Float64}:
 0.8
 0.6399999996879134

传递求解器特定选项

任何关键字 优化。jl 不解释直接转发给PyCMA。

在事件中 优化。jl 关键字与a重叠 [医]皮克玛 关键字, 优化。jl 关键字优先。

通过运行以下python脚本,可以找到关键字参数的详尽列表:

import cma
options = cma.CMAOptions()
print(options)

一个通过 [医]皮克玛 关键词"详细"和"种子":

sol = solve(prob, PyCMA(), verbose = -9, seed = 42)

故障排除

原始Python结果对象附加到 原版 领域:

sol = solve(prob, PyCMAOpt())
println(sol.original)

捐款

欢迎在https://github.com/SciML/Optimization.jl[Optimization.jl]问题跟踪器。 高度赞赏改进Julia包装器或文档的拉取请求。