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

吉安市建设局施工管理站网站灌云县城乡建设局网站

吉安市建设局施工管理站网站,灌云县城乡建设局网站,新闻单位网站建设的意义,wordpress 可以商业非线性规划#xff0c;一般用matlab调用cplex和gurobi了#xff0c;但这两个一般用于线性规划和二次规划 线性规划LP#xff0c;二次规划#xff08;quadratic programming#xff09;#xff0c;如果要求更一般的非线性规划IPOT是个很好的选择#xff0c;求解器很多一般用matlab调用cplex和gurobi了但这两个一般用于线性规划和二次规划 线性规划LP二次规划quadratic programming如果要求更一般的非线性规划IPOT是个很好的选择求解器很多根据情况自己选择 非线性 具体的这篇文章介绍的很清楚了https://blog.csdn.net/mpt0816/article/details/127638557 我这里就是再选择一个问题进行求解 ipopt的可执行程序下载下来 Releases · coin-or/Ipopt · GitHub 建立一个vs2022的工程把include加到目录里面把lib库都加进去同样dll也准备好 就这一个主文件放入工程 编译运行即可 四个自变量两个约束 eval_f: 计算目标函数值即需要最小化的目标。 eval_grad_f: 计算目标函数的梯度。分别是4个偏导数 eval_g: 计算约束条件的值。 n 是变量个数m是约束条件个数g是具体的约束函数 eval_jac_g: 计算约束条件的雅可比矩阵两个约束条件的一阶偏导数 eval_h: 计算目标函数和约束条件的二阶导数即Hessian矩阵二阶偏导数。 现在使用matlab符号函数把 涉及到 用的 梯度、黑森矩阵都求一下 %clear all close all clc% 使用符号函数进行 求解梯度黑森矩阵syms f g1 g2 syms x1 x2 x3 x4% 定义目标函数 f x1 * x4 * (x1 x2 x3) x3;% 定义约束函数 g1 x1 * x2 * x3 * x4; g2 x1^2 x2^2 x3^2 x4^2;% 计算目标函数的梯度和 Hessian grad_f gradient(f, [x1, x2, x3, x4]); hess_f hessian(f, [x1, x2, x3, x4]);% 计算约束函数 g1 的梯度和 Hessian grad_g1 gradient(g1, [x1, x2, x3, x4]); hess_g1 hessian(g1, [x1, x2, x3, x4]);% 计算约束函数 g2 的梯度和 Hessian grad_g2 gradient(g2, [x1, x2, x3, x4]); hess_g2 hessian(g2, [x1, x2, x3, x4]); 得到如下结果: 目标函数 f 的梯度  x1*x4 x4*(x1 x2 x3)                      x1*x4                  x1*x4 1          x1*(x1 x2 x3)   目标函数 f 的 Hessian [           2*x4, x4, x4, 2*x1 x2 x3] [             x4,  0,  0,             x1] [             x4,  0,  0,             x1] [ 2*x1 x2 x3, x1, x1,              0]   约束函数 g1 的梯度  x2*x3*x4  x1*x3*x4  x1*x2*x4  x1*x2*x3 约束函数 g2 的梯度  2*x1  2*x2  2*x3  2*x4  从g1 g2看出来 nele_jac 8; 8个非零两个约束条件4个变量    nele_hess 10;  4*5/210看其中一个hess矩阵的上三角阵 约束函数 g1 的 Hessian [     0, x3*x4, x2*x4, x2*x3] [ x3*x4,     0, x1*x4, x1*x3] [ x2*x4, x1*x4,     0, x1*x2] [ x2*x3, x1*x3, x1*x2,     0]   约束函数 g2 的 Hessian [ 2, 0, 0, 0] [ 0, 2, 0, 0] [ 0, 0, 2, 0] [ 0, 0, 0, 2]  要替换的部分 1、eval_f 中 目标函数 2、eval_grad_f 中的梯度 grad_f[0] x[0] * x[3] x[3] * (x[0] x[1] x[2]);    grad_f[1] x[0] * x[3];    grad_f[2] x[0] * x[3] 1;    grad_f[3] x[0] * (x[0] x[1] x[2]); 3、eval_g 约束条件    g[0] x[0] * x[1] * x[2] * x[3] my_data-g_offset[0];    g[1] x[0] * x[0] x[1] * x[1] x[2] * x[2] x[3] * x[3] my_data-g_offset[1]; 4、eval_jac_g 约束函数的jacobi矩阵 if中 8个,位置是 00  01 02 03 10 11 12 13 else 中 g1梯度g2梯度 5、eval_h 黑森矩阵 固定抄写4是变量个数 目标的黑森矩阵注意走位注意骚走位注意下三角阵骚走位 约束的黑森 6、主函数 初始值和 上下限 约束条件的jacobi矩阵和hess矩阵的非零元素 8个2*自变量个数 10个自变量个数*自变量个数1/2 初始值 matlab符号函求解出来的各种算式写成c有点麻烦我这边搞了一个函数可以很方便转c function f_str changetoc(f)syms x1 x2 x3 x4 %替换c语言风格 syms R %为了 R^2也能转% f x1^2 x2^2 x3^2 x4^2; % 示例符号函数 % f x1^2 x2^2 (x1 x2)^2 x3^2 x4^2; % 示例符号函数包含复杂表达式 % f (r*sin(theta)*(3*cos(x1) - 4) (x2*cos(theta)*(2*cos(x1) - 2))/n1 (x2*sin(theta)*sin(x1))/n1)^2% 将符号函数转换为字符串 f_str char(f);% 替换变量为 C 风格的数组索引 x[0], x[1], x[2], x[3] f_str regexprep(f_str, x1, x[0]); f_str regexprep(f_str, x2, x[1]); f_str regexprep(f_str, x3, x[2]); f_str regexprep(f_str, x4, x[3]);% 定义一个集合Cell数组用于保存普通变量名 variables {x[0],x[1],x[2],x[3], R};% % % 示例复杂表达式 % f (r*sin(theta)*(3*cos(x1) - 4) (x2*cos(theta)*(2*cos(x1) - 2))/n1 (x2*sin(theta)*sin(x1))/n1)^2 - R^2 ... % (r*cos(theta) r*sin(theta)*(6*x1 - 6*sin(x1)) (x2*sin(theta)*(2*cos(x1) - 2))/n1 ... % (x2*cos(theta)*(3*x1 - 4*sin(x1)))/n1)^2;% 将符号函数转换为字符串 % f_str char(f);% 1. 替换普通变量的平方为自乘形式 for i 1:length(variables)% 构建正则表达式匹配形如 x1^2, x2^2 等var_pattern strcat(variables{i}, ^2);% 构建替换字符串 (x1*x1), (x2*x2)replacement strcat((, variables{i}, *, variables{i}, ));% 进行替换f_str strrep(f_str, var_pattern, replacement); end% % 找到 x[i]^2 形式的幂运算并替换为 (x[i]*x[i]) f_str regexprep(f_str, (\w\[\d\])\^2, $1*$1);% 2. 替换括号表达式的平方为自乘形式 % 匹配 (xxxx)^2替换为 (xxxx)*(xxxx) % f_str regexprep(f_str, \(([^\)])\)\^2, ($1)*($1)); f_str regexprep(f_str, \((.*?)\)\^2, ($1)*($1));% 输出替换后的表达式 disp(f_str);end
http://www.hkea.cn/news/14404615/

相关文章:

  • 网站项目建设人员规划wordpress easy stmp
  • 信阳公司网站建设做无障碍浏览网站
  • 徐州丰县建设局网站中信建设有限责任公司项目人员配置
  • 解析网站dns自己做网站和推广
  • 漯河市源汇区网站建设软件开发属于什么专业
  • 做网站小代码大全网站源码如何保存
  • 电子商务网站建设试卷及答案专业外贸网站建设公司价格
  • 怎么写网站建设宣传家乡的网站
  • 二七区建设局网站wordpress可以做电影站
  • 深圳博纳网站建设英迈寰球网站建设
  • 石家网站建设公司排名网站建设 局部放大镜功能
  • 网站仿站大多少钱wordpress页面跳转失败
  • 无线网站制作有哪些做网站好的公司
  • 企业营销策划实现的途径上海市网站seo公司
  • 有哪些做的好看的网站吗做seo网站空间
  • 网站推广是什么杭州seo公司排名
  • p2p提供网站建设违法百度一下官方网
  • wordpress 栏目菜单做网站seo的步骤
  • 莱阳网站建设公司杭州网络营销公司
  • 网站建设和网站推广网站标题title
  • 做网站服装app网络销售推广平台
  • 苏州市吴中区建设局网站wordpress 文章 二维码
  • 网站正在建设中请稍后介绍自己的家乡遵义网站建设
  • 专业商城网站设计wordpress if
  • 网站建设交流平台seo系统培训哪家好
  • 四川省住房和城乡建设厅网站下载怎么在百度做广告
  • 青岛做网站建设深圳优化公司样高粱seo
  • 深圳市研发网站建设哪家好品牌网站建设案例
  • 上海网站备案核验河北专业做网站
  • php 网站调试wordpress 采集站