当前位置: 首页 > news >正文

优化非线性复杂系统的参数

非线性项组合的系统

对于系统中的每一个复杂拟合,即每一个残差函数,都能表示为非线性方程的趋势,例如较为复杂的系统函数组,

from optimtool.base import sp, np
x = sp.symbols("x1:5")
res1 = 0.5*x[0] + 0.2*x[1] + 1.5*x[0]**3 - 2*x[2] # Damped oscillator with nonlinear term
res2 = 3*x[0] + x[1]**2 - x[2]**2 - 0.1*np.random.normal() # Coupled oscillator system
res3 = x[2]*(1 - x[3]) - x[0]*x[1] + 1.5*sp.sin(x[3]) # Predator-prey like interaction
res4 = x[3]*(x[0] - x[1]) + 0.5*sp.exp(-x[2]) - 2.0*x[1] # Delay differential equation component

要解上述方程组,需要用到线搜索、非线性最小二乘、系统初始状态,这些方法在optimtool的nonlinear_least_square模块中能找到。在给定系统初始状态为(1.0, 0.5, 0.2, 0.8),默认线搜索的前提下,优化的系统组是[res1, res2, res3, res4],使用如下指令调用levenberg_marquardt方法,

import optimtool.unconstrain as ou
ou.nonlinear_least_square.levenberg_marquardt([res1, res2, res3, res4], x, (1.0, 0.5, 0.2, 0.8), verbose=True, epsilon=1e-3)

系统内的迭代趋势如下,一个系统的解在优化过程里的局部最优解可以有多个,这里给出的是系统达到收敛阈值的平滑区域的解,

(1.0, 0.5, 0.2, 0.8)    6.457126524403201       0
[ 0.40429326  0.43564665 -0.17927255  1.02536062]       1.7366068984048804      1
[0.1438984  0.25405175 0.10550085 0.32590509]   0.2107042535909221      2
[0.04771543 0.25630044 0.0574562  0.0532376 ]   0.014097257076394237    3
[ 0.02155738  0.24964789  0.0327689  -0.00291764]       0.0005100292092591925   4
[ 0.01767332  0.2456185   0.02926977 -0.01465774]       1.103580671559125e-05   5
[ 0.01711515  0.24490507  0.02880226 -0.01647978]       1.2913438683552677e-07  6

可视化图例中迭代点快速收敛到局部最优的原因是wolfe线搜索方法和非线性系统的乘积组合funcs=(1/2)funcr.T*funcr,也是最小二乘法的线搜索基础。
在这里插入图片描述

http://www.xdnf.cn/news/143821.html

相关文章:

  • 2025年大语言模型平台、主流模型及Token价格的综合对比分析报告
  • ThinkPHP6模型中多组条件逻辑或Or查询的使用
  • 雪花算法:分布式系统唯一 ID 生成的核心方案
  • 【持续更新】 CDC 跨时钟域处理
  • SQLite 是什么?
  • qt中写一个简易的计算器
  • 深入理解 RUM(真实用户监控)与前端锚点的应用与实践
  • LLM自回归模型:在输入输出中构建关系图的隐式表达
  • Python自动化解决滑块验证码的最佳实践
  • Vue3 自定义指令完全指南
  • 拥有600+门店的宠物连锁医院,实现核心业务系统上云
  • 科技与商业动态简报
  • Linux内核参数调优(TCP BBR算法实践)
  • 文件传输过滤器绕过:Exe2Hex
  • Dapper的数据库操作备忘
  • STM32MPU开发之旅:从零开始构建嵌入式Linux镜像
  • 高职人工智能技术应用专业(计算机视觉方向)实训室解决方案
  • WordPress AI 原创文章自动生成插件 24小时全自动生成SEO原创文章 | 多语言支持 | 智能配图与排版
  • 本土网盟推广孟加拉slot游戏出海营销优势
  • CSS常遇到自适应高度动画、带三角气泡阴影一行样式解决
  • 鸿蒙NEXT开发剪贴板工具类(ArkTs)
  • 智慧医院建设的三大关键领域
  • [AI技术(二)]JSONRPC协议MCPRAGAgent
  • 【Linux篇】理解信号:如何通过信号让程序听从操作系统的指令
  • 二项式分布html实验
  • 在Android中如何使用Protobuf上传协议
  • 隧道调频广播覆盖的实现路径:隧道无线广播技术赋能行车安全升级,隧道汽车广播收音系统助力隧道安全管理升级
  • http://noi.openjudge.cn/——2.5基本算法之搜索——200:Solitaire
  • NVIDIA 高级辅助驾驶汽车安全系统 系列读后感(1)
  • 【C++】继承----下篇