syms f x1 x2
f=(1/2)*x1^2+x2^2;
x=[2;1];
a=[1 0;0 2];% A
g1=diff(f,x1);
g2=diff(f,x2);
g=[g1;g2];%导数 % x1
g11=subs(g1,{x1,x2},{x(1) x(2)});
g22=subs(g2,{x1,x2},{x(1) x(2)});
g=[g11;g22]
d=-g;
d11=subs(d(1),{x1,x2},{x(1) x(2)});
d22=subs(d(2),{x1,x2},{x(1) x(2)});
d=[d11;d22]
af=(-g'*d)/(d'*a*d)
x=x+af*d
g11=subs(g1,{x1,x2},{x(1) x(2)});
g22=subs(g2,{x1,x2},{x(1) x(2)});
g=[g11;g22]
% x1 e=0.1;%精度
%共轭梯度
for i=1:2
if g==0
disp('x')
x
break
else b=(g'*a*d)/(d'*a*d)%β
d=-g+b*d; d11=subs(d(1),{x1,x2},{x(1) x(2)});
d22=subs(d(2),{x1,x2},{x(1) x(2)});
d=[d11;d22] af=(-g'*d)/(d'*a*d)%步长α x=x+af*d g11=subs(g1,{x1,x2},{x(1) x(2)});
g22=subs(g2,{x1,x2},{x(1) x(2)});
g=[g11;g22]
end
end

  

最优化作业 共轭梯度法 matlab代码的更多相关文章

  1. SVM实例及Matlab代码

    ******************************************************** ***数据集下载地址 :http://pan.baidu.com/s/1geb8CQf ...

  2. 如何加速MATLAB代码运行

    学习笔记 V1.0 2015/4/17 如何加速MATLAB代码运行 概述 本文源于LDPCC的MATLAB代码,即<CCSDS标准的LDPC编译码仿真>.由于代码的问题,在信息位长度很长 ...

  3. 多分类问题中,实现不同分类区域颜色填充的MATLAB代码(demo:Random Forest)

    之前建立了一个SVM-based Ordinal regression模型,一种特殊的多分类模型,就想通过可视化的方式展示模型分类的效果,对各个分类区域用不同颜色表示.可是,也看了很多代码,但基本都是 ...

  4. 卷积相关公式的matlab代码

    取半径=3 用matlab代码实现上式公式: length=3;for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj,K ...

  5. JAVA调用matlab代码

    做实验一直用的matlab代码,需要嵌入到java项目中,matlab代码拼拼凑凑不是很了解,投机取巧采用java调用matlab的方式解决. 1.    matlab版本:matlabR2014a ...

  6. 调试和运行matlab代码(源程序)的技巧和教程

    转载请标明出处:专注matlab代码下载的网站http://www.downma.com/ 本文主要给大家分享使用matlab编写代码,完成课程设计.毕业设计或者研究项目时,matlab调试程序的技巧 ...

  7. 直方图均衡化与Matlab代码实现

    昨天说了,今天要好好的来解释说明一下直方图均衡化.并且通过不调用histeq函数来实现直方图的均衡化. 一.直方图均衡化概述 直方图均衡化(Histogram Equalization) 又称直方图平 ...

  8. 将labelme 生成的.json文件进行可视化的代码+label.png 对比度处理的matlab代码

    labelme_to_dataset 指令的代码实现: show.py文件 #!E:\Anaconda3\python.exe import argparse import json import o ...

  9. Latex中Matlab代码的环境

    需要用到listings宏包 使用方法: 导言区\usepackage{listings}\lstset{language=Matlab}      %代码语言使用的是matlab\lstset{br ...

随机推荐

  1. InnoDB的B+树索引

    B+树索引其本质就是B+树在数据库中的实现,但是B+索引在数据库中有一个特点就是其高扇出性,因此在数据库中,B+树的高度一般都在2-3层,也就是对于查找某一键值的行记录,最多只需要2到3次IO,这倒不 ...

  2. ORCLE报错解决(ora-01747:无效的用户.表.列,表.列)

    原因: 这个问题出现是因为表中存在关键字造成.

  3. NodeJS入门篇

    在我印象里,“全栈工程师”这个词是NodeJS诞生后才逐渐火起来的,因为NodeJS赋予了JS服务器开发的能力.下面开始从一个小白的角度进军NodeJS... 前言:在学习NodeJS之前是需要安装的 ...

  4. 【angular5项目积累总结】自定义管道 OrderBy

    import { Injectable, Pipe } from '@angular/core'; @Pipe({ name: 'orderBy' }) @Injectable() export cl ...

  5. spring mongodb增删改查操作

    添加数据 School @Id @GeneratedValue private long id; @Indexed(unique = true) private String name; studen ...

  6. Vue2.0实现ie的兼容

    转自:https://blog.csdn.net/landl_ww/article/details/79149461 1.解决方案:安装 "babel-polyfill" ,加配置 ...

  7. Java基础教程(6)--数组

    1.基本概念   数组中的每一项称为元素,每个元素都通过数字索引(也可以称为下标)访问,编号从0开始.例如,第4个元素的索引为3.下面的程序创建了一个int类型的数组,把一些值放入数组中并将每个值打印 ...

  8. php 在函数前面加个@的作用

    @是错误控制运算符,用屏蔽错误提示比如:@mysql_connect() 不会出现Warning, 而原来mysql_connect 会在页面上访提示Warning.主要是高版本的php不在支持mys ...

  9. 高并发系列之——缓存中间件Redis

    1 概念和使用场景 下载路径 2 基本存储类型 String List Set SortedSet Hash 3 事务 单线程执行,即只能保证一个client发起的事务中的命令可以连续的执行,而中间不 ...

  10. css专业术语笔记

    1. 属性 如height.color等,称作css的属性. 2. 值 在css中,如:10px, 50%, #ccc等这些都称作css的值.比较常见的类型值有:整数值,数值,百分比值,长度值,颜色值 ...