1stopt使用教程之公式拟合

链接:https://pan.baidu.com/s/1GYvgWOesQcJnzp6-gkQEyg?pwd=80wn 
提取码:80wn 

1、1stopt软件的使用

        1stOpt 是七维高科有限公司(7D-Soft High Technology Inc.)独立开发,拥有完全自主知识产权的一套数学优化分析综合工具软件包。

        其计算核心是基于七维高科有限公司科研人员十数年的革命性研究成果【通用全局优化算法】(Universal Global Optimization - UGO),该算法之最大特点是克服了当今世界上在优化计算领域中使用迭代法必须给出合适初始值的难题,即用户勿需给出参数初始值,而由 1stOpt 随机给出,通过其独特的全局优化算法,最终找出最优解。

1.1、优化算法

1stopt的最优化算法包括:

  1. 通用全局优化算法(Universal Global Optimization - UGO)
  2. 下山単体法 (Simplex Method - SM) + 通用全局优化算法(Universal Global Optimization - UGO)
  3. 差分进化法 (Differential Evolution - DE)
  4. 最大继承法 (Max Inherit Optimization - MIO)
  5. 遗传算法 (Genetic Algorithms - GA)
  6. 摸拟退火 (Simulated Annealing - SA)
  7. 离子群法 (Particle Swarm Optimization - PSO)
  8. 自组织群移法 (Self-Organizing Migrating Algorithms - SOMA)
  9. 禁忌搜索法 (Tabu Search - TS)
  10. 单纯线性规划法 (Simplex Linear Program)
图 1‑1 1stopt优化算法

         1stopt可以求解多种问题,但是我主要使用的是其拟合函数的功能。

1.2、关键词

        1stopt具备自己的一套编程语言,若想熟练使用首先需要掌握其关键词的定义,下面对其主要关键词进行说明。

关键词名

意义及实例

             Parameter

定义参数

例: 定义 a, b, c, d 四个参数: Parameter a, b, c, d;

例: 定义 a1, a2, a3, a4, a5, a6, a7, a8, a9, a10 十个参数: Parameter a1, a2, a3, a4, a5, a6, a7, a8, a9, a10; 也可简写为:Parameter a(1:10); 或:Parameter a(10);

例: 定义参数 a,其取值范围在[-1,1],初始值为 0.5

Parameter a = 0.5[-1,1];

例: 定义参数 a 为整数,其取值范围在[-100,100]

Parameter a[-100,100,0];

ParameterDomain

批量定义参数范围

例:定义参数 a 范围为[-1,1],其它均为[0,10];

Parameter a = 0.5[-1,1],b,c,d,e,f,g; ParameterDomain = [0,10];

StartRange

定义参数初始值取值范围 例:定义参数 a 初始值取值范围为[-100,100]

StartRange a = [-100,100];

Function

定义函数 例:两变量曲线拟合:

Function y = a + b*exp(c – x);

例:两变量函数优化:

Function (x+((2-x)*(2+y))^2)*sin(x*y);

Constant

定义常量 例:两变量曲线拟合:

Function y = a + b*exp(c – x);

例:两变量函数优化:

Function (x+((2-x)*(2+y))^2)*sin(x*y);

Data

定义数据开始

DataFile

定义数据文件

特殊定义

求和Sum,求积Prod,循环For

同时1stopt支持多种函数。

1.3、操作界面

图 1‑2 1stopt主界面

图 1‑3 算法设置界面

        1stOpt 附带有类似与 Excel 的电子表格,多表单,支持公式,直接输入输出到 Excel和文本文件(.txt,.csv),树型表单管理,直观并可分类,可方便用于数据前、后处理。

图 1‑4 1stopt电子表格

在 1stOpt 中,共有 10 种有化算法。不同的问题该选用何种算法?一般而言:

  • 非线性回归、曲线拟合问题、方程及方程组求解、无约束函数优化:
  1. 通用全局优化算法(Universal Global Optimization - UGO)
  2. 下山単体法 (Simplex Method - SM) + 通用全局优化算法(Universal Global Optimization - UGO)
  3. 差分进化法
  4. 最大继承法
  • 有约束函数优化问题:
  1. 下山単体法 (Simplex Method - SM) + 通用全局优化算法(Universal Global Optimization - UGO)
  2. 差分进化法
  3. 通用全局优化算法(Universal Global Optimization - UGO)
  4. 最大继承法
  • 线性规划问题:
  1. 单纯线性规划法 (Simplex Linear Program - SLP)
  2. 下 山 単 体 法 (Standard Simplex Method - SM) + 通用 全 局 优 化 算 法 (Universal Global Optimization - UGO)
  3. 差分进化法
  • 优化组合问题:
  1. 最大继承法
  2. 禁忌搜索法
  3. 模拟退火
  4. 遗传算法

 1.4、基本语法

        每一句代码以‘;’号作结束符。如

Parameter a, b, c, d;
Constant p1 = 1, p2 = 4, p3 = 5;

        因为 1stOpt 的初始值通常是随机产生,一次计算不成功,并非意味下次亦同样不成功,反之亦然。按快捷键“F9”执行计算,“F10”中止计算。

1.5、曲线拟合

        1stOpt 的曲线拟合均为自定义拟合。“Function”、“Data/RowData/DataFile”为必须的两个关键字;可选择关键字有“Variable”、“Parameter”、“QuickReg”等。对二维曲线拟合,缺省自变量名为x,因变量名为y;对三维有两种缺省方式,一为自变量名为x1x2 ,因变量名为y,第二种为自变量名为x和y,因变量名为z;对多维,缺省自变量名为x1x2 ,x3 …,因变量名为 y。如下表中两段代码效果等同,右边代码中无需用“Variable”和“Parameter”定义变量和参数,而将由 1stOpt 自动识别。

下面给出一个示例

 

         给出一个本文中所采用的案例:

//定义变量
  Variables x1,x2,x3,y;
  //定义常数
Constant n=4;
Parameter a(1:n);
//给常数限定范围
//paremeters c(1:n)=[-20,20];
//撰写公式
function y=a1*(((x1)^a2)*((x2)^a3)*((x3)^a4));
data;
//x1,x2,x3,y
 88.65	1.96	0.005	10.35
219.36	2.98	0.005	16.23
364.84	3.55	0.005	20.67
486.45	4.33	0.005	24.26
608.06	4.33	0.005	27.43
219.36	3.55	0.010	15.87
438.72	4.33	0.010	24.26
658.08	5.42	0.010	31.43
877.43	5.42	0.010	36.08
886.53	5.42	0.010	40.12
329.04	4.33	0.015	19.17
658.08	5.42	0.015	29.54
987.11	5.42	0.015	37.61
1063.83	5.42	0.015	44.23
1329.79	5.42	0.015	49.92
486.45	4.33	0.020	22.10
877.43	5.42	0.020	34.30
1063.83	5.42	0.020	44.08
1418.44	5.42	0.020	52.26
1773.05	5.42	0.020	59.01
608.06	4.33	0.025	25.00
886.53	5.42	0.025	39.45
1329.79	5.42	0.025	50.62
1773.05	5.42	0.025	59.62
2216.32	5.42	0.025	67.88
PlotFunction

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非线性拟合是一种用于找到数据集中的最佳拟合曲线的技术。它通常用于数据分析、机器学习和统计学中。1stopt是一种非线性拟合工具,它可以帮助您找到最佳拟合曲线。 以下是使用1stopt进行非线性拟合的步骤: 1. 准备数据集:首先,您需要准备数据集。数据集应该包括X和Y值。X通常是自变量,而Y是因变量。 2. 安装1stopt:要使用1stopt,您需要先安装它。您可以在官方网站上下载1stopt软件。 3. 导入数据集:一旦您安装了1stopt,您可以使用它来导入您的数据集。您可以使用Excel、CSV等格式导入数据集。 4. 选择模型:在1stopt中,您可以选择多种模型来拟合您的数据集。您可以选择线性模型、非线性模型、多项式模型等。 5. 配置模型参数:一旦您选择了模型,您需要配置模型参数。这些参数将决定您的模型如何拟合数据集。 6. 进行拟合:一旦您完成了模型配置,您可以开始进行拟合。1stopt将使用您选择的模型和参数来拟合数据集。 7. 分析结果:拟合完成后,您可以分析结果。您可以查看拟合曲线、残差等信息。 8. 优化模型:如果您不满意拟合结果,您可以尝试优化模型参数。1stopt可以帮助您找到最佳参数。 9. 导出结果:最后,您可以将拟合结果导出为Excel、CSV等格式。这将使您能够在其他软件中使用拟合结果。 总之,1stopt是一个非常有用的工具,可以帮助您进行非线性拟合。通过按照以上步骤进行操作,您可以轻松地拟合您的数据集并获得最佳拟合曲线。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值