数值代数中的灵敏度分析【条件数】

文章目录

  • 一、条件数
  • 二、解线性方程组问题的条件数


在数值分析领域,灵敏度分析是一种用来评估数值模型对输入参数变化的敏感程度的技术。它在许多科学和工程领域中都有广泛的应用,包括金融、工程设计、自然资源管理等。

一、条件数

一个实际问题化为数学问题,初始数据往往会有误差,即有扰动,从而使计算结果产生误差,因此需要研究扰动对解的影响。为了简单起见,假设我们考虑的计算问题是:给定 x x x,计算 f ( x ) f(x) f(x)的值。

  • 对于这个问题,灵敏度分析就是探究究 x x x 有微小的变化 δ x \delta x δx 之后函数值将会发生多大变化;
  • 当然,最理想的做法应该是首先找到自变量的改变量与函数值的改变量之间的依赖关系;
  • 但这是相当困难的,有时即使碰巧找到了这种依赖关系,常常由于其太复杂而变得无实用价值.

因此,通常的做法是在 | δ x ∣ / ∣ x ∣ \delta x|/|x| δx∣/∣x 很小的前提下,设法寻找一个尽可能小的正数 c ( x ) c(x) c(x) 使得
∣ f ( x + δ x ) − f ( x ) ∣ ∣ f ( x ) ∣ ≤ c ( x ) ∣ δ x ∣ ∣ x ∣ \frac{|f(x+\delta x)-f(x)|}{|f(x)|}\leq c(x)\frac{|\delta x|}{|x|} f(x)f(x+δx)f(x)c(x)xδx
这样, c ( x ) c(x) c(x) 的大小就在一定程度上反映了自变量的微小变化对函数值的影响程度。因此,我们称数 c ( x ) c(x) c(x) f f f x x x点的条件数

Note:

  1. c ( x ) c(x) c(x) 很大时,自变量的微小变化就有可能引起函数值的巨大变化,因而称此种情况为 f f f x x x 点是病态的;
  2. 反之,当 c ( x ) c(x) c(x) 较小时,我们就说 f f f x x x 点是良态的.

对于这个计算问题,容易推出,当 f f f x x x点可微时,条件数有如下近似形式:

c ( x ) ≈ ∣ f ′ ( x ) ∣ ∣ x ∣ ∣ f ( x ) ∣ . c(x)\approx\frac{|f^{\prime}(x)||x|}{|f(x)|}. c(x)f(x)f(x)∣∣x.
但是对于一般的计算问题要给出一个合适的条件数估计是不容易的

二、解线性方程组问题的条件数

现在我们来考虑解线性方程组 A x = b Ax=b Ax=b的问题,先从一个例子来看系数矩阵或者右端项扰动对解的影响。

容易看出,方程组
{ x 1 + x 2 = 2 x 1 + 1.00001 x 2 = 2 \left\{\begin{array}{l} x_1+x_2=2 \\ x_1+1.00001 x_2=2 \end{array}\right. {x1+x2=2x1+1.00001x2=2
的解为 x 1 = 2 , x 2 = 0 。  x_1=2, x_2=0_{\text {。 }} x1=2,x2=0  而方程组
{ x 1 + x 2 = 2 x 1 + 1.00001 x 2 = 2.00001 \left\{\begin{array}{l} x_1+x_2=2 \\ x_1+1.00001 x_2=2.00001 \end{array}\right. {x1+x2=2x1+1.00001x2=2.00001
的解为 x 1 = 1 , x 2 = 1 x_1=1, x_2=1 x1=1,x2=1

比较这两个方程组可以看出:

  • 它们只是右端项有微小的差别, 最大相对误差为 1 2 × 1 0 − 5 \frac{1}{2} \times 10^{-5} 21×105;
  • 但它们的解却大不相同, 解分量的相对误差至少为 1 2 \frac{1}{2} 21 ;
  • 当一个方程组, 由于系数矩阵或右端项的微小扰动, 而引起解发生巨大变化时,称该方程组是“病态”的

定义

n × n n\times n n×n矩阵 A A A非奇异,则称 ∥ A ∥ A − 1 ∥ \|A\|A^{-1}\| AA1为矩阵 A A A条件数 ( C o n d i t i o n (Condition (Condition Number), 记作
Cond ( A ) = ∥ A ∥ ∥ A − 1 ∥ . \text{ Cond}(A)=\|A\|\|A^{-1}\|.  Cond(A)=A∥∥A1∥.其中 ∥ A ∥ \|A\| A为矩阵 A A A的某一范数,不同的范数导出不同的条件数.

条件数的性质

  1. Cond ( A ) = ∥ A ∥ ∥ A − 1 ∥ ≥ ∥ A A − 1 ∥ = ∥ I ∥ ≥ 1 \text{ Cond}(A)=\|A\|\|A^{-1}\|\geq\left\|AA^{-1}\right\|=\|I\|\geq1  Cond(A)=A∥∥A1 AA1 =I1.
  2. 置换矩阵、正交矩阵、单位矩阵的谱条件数为1.
  3. 对任意非零实数 α \alpha α Cond ( α A ) = Cond ( A ) \text{Cond}(\alpha A)=\text{Cond}(A) Cond(αA)=Cond(A) .

对于特定的范数,

Cond ⁡ ( A ) ∞ = ∥ A ∥ ∞ ∥ A − 1 ∥ ∞ Cond ( A ) 2 = ∥ A ∥ 2 ∥ A − 1 ∥ 2 = λ 1 λ n \begin{aligned} \operatorname{Cond}(A)_\infty&=\left\|A\right\|_\infty\left\|A^{-1}\right\|_\infty\\ \text{Cond}(A)_2&=\left\|A\right\|_2\left\|A^{-1}\right\|_2=\sqrt{\frac{\lambda_1}{\lambda_n}} \end{aligned} Cond(A)Cond(A)2=A A1 =A2 A1 2=λnλ1 Note:

  • λ 1 , λ n \lambda_1,\lambda_n λ1,λn分别为 A T A A^TA ATA的最大和最小特征值.
  • Cond ( A ) 2 \text{Cond}(A)_2 Cond(A)2又称为为谱条件数.
  • “病态”方程组的系数矩阵 A A A的条件数 Cond ( A ) \text{Cond}(A) Cond(A) 很大,反之为“良态”方程组.
  • 条件数很大的病态方程组,求解过程会遇到数值不稳定的问题.

定理

x ⃗ \vec{x} x x ⃗ ∗ \vec{x}^* x 分别为非奇异方程组 A x ⃗ = b ⃗ A\vec{x}=\vec{b} Ax =b 的精确解和近似解, r ⃗ \vec{r} r x ⃗ ∗ \vec{x}^* x 的剩余向量, r ⃗ = b ⃗ − A x ⃗ ∗ \vec{r}=\vec{b}-A\vec{x}^* r =b Ax , 则
∥ x ⃗ ∗ − x ⃗ ∥ ∥ x ⃗ ∥ ≤ Cond ( A ) ∥ r ⃗ ∥ ∥ b ⃗ ∥ \frac{\|\vec{x}^*-\vec{x}\|}{\|\vec{x}\|}\leq\text{Cond}(A)\frac{\|\vec{r}\|}{\|\vec{b}\|} x x x Cond(A)b r
由这个定理我们知道,如果方程组“病态”很严重,条件数很大,即使 r ⃗ \vec{r} r 很小,解的相对误差也可能会很大(相对误差上界很大).

在求得方程组 A x = b \boldsymbol{A x}=\boldsymbol{b} Ax=b 的一个近似解 x ∗ \boldsymbol{x}^* x 后, 检验精度的一个简单方法是残量 (余量) r = b − A x ∗ r=b-A x^* r=bAx 的大小来衡量近似解 x ∗ x^* x 的精确程度。但对“病态” 严重的方程组, 也有即使残量 ∥ r ∥ \|\boldsymbol{r}\| r 很小, 近似解与准确解的差仍很大的情形。比如我们来看下面这样一个例子,方程组:
{ x 1 + x 2 = 2 x 1 + 1.00001 x 2 = 2 \left\{\begin{array}{l} x_1+x_2=2 \\ x_1+1.00001 x_2=2 \end{array}\right. {x1+x2=2x1+1.00001x2=2的准确解为 x 1 = 2 , x 2 = 0 x_1=2, x_2=0 x1=2,x2=0, 若以 x 1 = 1 , x 2 = 1 x_1=1, x_2=1 x1=1,x2=1 作为它的近似解, 其残量:
r = ( 2 , 2 ) T − ( 2 , 2.00001 ) T = ( 0 , − 1 0 − 5 ) T \boldsymbol{r}=(2,2)^{\mathrm{T}}-(2,2.00001)^{\mathrm{T}}=\left(0,-10^{-5}\right)^{\mathrm{T}} r=(2,2)T(2,2.00001)T=(0,105)T
很小,但解的误差:
x − x ∗ = ( 2 , 0 ) T − ( 1 , 1 ) T = ( 1 , − 1 ) T x-x^*=(2,0)^{\mathrm{T}}-(1,1)^{\mathrm{T}}=(1,-1)^{\mathrm{T}} xx=(2,0)T(1,1)T=(1,1)T

所以对于条件数很大的方程组,余量 r r r不是一个很好的指标。也就是说对于病态的问题,通过迭代法得到的解,和精确解误差可能很大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/764227.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于python+vue的ITS 信息平台的设计与实现flask-django-nodejs-php

伴随着我国社会的发展,人民生活质量日益提高。于是对系统进行规范而严格是十分有必要的,所以许许多多的信息管理系统应运而生。此时单靠人力应对这些事务就显得有些力不从心了。所以本论文将设计一套信息平台,帮助交通局进行信息共享、交通信…

Android设计模式

在Android应用开发中,设计模式是非常重要的一部分,它们提供了一种标准化的方式来解决常见的软件设计问题,提高代码的可读性、可维护性和复用性。以下是一些在Android开发中常见和实用的设计模式分类: ### 创建型模式(…

【Spring框架】单元测试:JUnit

个人名片: 🐼作者简介:一名大三在校生,喜欢AI编程🎋 🐻‍❄️个人主页🥇:落798. 🐼个人WeChat:hmmwx53 🕊️系列专栏:🖼️…

使用 Pytorch 和 Rasterio 的自定义地理空间数据加载器

地理空间数据在从遥感和城市规划到环境监测和灾害管理的各个领域发挥着至关重要的作用。在处理机器学习任务的地理空间数据时,准备自定义数据加载器对于有效加载、预处理和增强数据而不丢失其属性至关重要,特别是当输入图像具有超过 3 个波段时。 Rasterio确实是一个专门为有…

2核2G服务器阿里云多少钱一年?

阿里云2核2G服务器配置优惠价格61元一年和99元一年,61元是轻量应用服务器2核2G3M带宽、50G高效云盘;99元服务器是ECS云服务器经济型e实例ecs.e-c1m1.large,2核2G、3M固定带宽、40G ESSD entry系统盘,阿里云活动链接 aliyunfuwuqi.…

Gavin Wood 精彩演讲|安全灵活 JAM 链,打造去中心化多核计算机

Polkadot 年度开发者大会 sub0 Asia 近期在泰国曼谷正式落幕。面对区块链行业的激烈竞争,Polkadot 创始人 Gavin Wood 在演讲中说明将如何利用 Polkadot 2.0 与 JAM 链带来新的技术创新,推动生态持续发展。 Polkadot 将推一个名为 JAM 链的新网络。JAM …

单机模拟分布式MINIO(阿里云)

拉取的最新MINIO: minio version RELEASE.2024-03-15T01-07-19Z Runtime: go1.21.8 linux/amd64 分布式 MinIO 至少需要4个节点,也就意味着至少4个硬盘,对于囊中羞涩仅用来开发测试的人来说,这笔花销还是比较高昂。有没有更好的…

Day61:WEB攻防-PHP反序列化原生类TIPSCVE绕过漏洞属性类型特征

知识点: 1、PHP-反序列化-属性类型&显示特征 2、PHP-反序列化-CVE绕过&字符串逃逸 3、PHP-反序列化-原生类生成&利用&配合 补充:如果在 PHP 类中没有实现某个魔术方法,那么该魔术方法在相应的情况下不会被自动触发。PHP 的魔…

Oracle 11G备份集中控制文件和spfile被异常删除

坐标大理,苍山下,洱海旁,风花雪月!! 今日一大早就接到一个case,根据客户描述,大概意思是昨天晚上发现18号的ctl和spfile无故消失,备份策略是一周一个0级增量备份,每日进…

Promise和事件轮询

Promise和事件轮询 今日目标: 1.Promise 要求:能够清楚的说出Promise的特性和静态方法 2.事件轮询 要求:能够理解清楚同步和异步在底层的实现机制 00-回顾 # ajax概述 async javascript and xml: 异步的js和xml作用: 实现客…

python数据容器--集合

什么是集合 列表可以修改,支持重复元素且有序 元组、字符串不可修改,支持重复元素且有序 集合无序,不可重复 定义一个集合 #去重,且无序 #集合无序因此不支持下标访问 #但集合和列表一样,是允许修改的 my_set{&quo…

机器学习——线性回归(头歌实训)

头歌机器学习实训代码、答案,如果能够帮到您,希望可以点个赞!!! 如果有问题可以csdn私聊或评论!!!感谢您的支持 目录 第1关:简单线性回归与多元线性回归 第2关&#…

JVM加类加载器

文章目录 JVM内存模型内存分配策略JVM内存分配策略优化的最佳实践对象头类加载类加载器有哪几种?如何实现一个自定义类加载器?类加载机制如何影响性能调优? JVM内存模型 JVM(Java虚拟机)内存模型描述了Java虚拟机在执…

矩阵理论的概念间的组合关系的公式

矩阵理论的概念间的组合关系的公式 现在很火执的人工智能技术,要求很高的数学基础知识。 除了微积分就是线性代数的内容了。自动微分框架是人工 智能技术的底层框架。其实就是实现了微积分的各种函数 的微积分运算而矣。线性代数的内容应用于计算机 的软件中的各个…

Elasticsearch 的 scroll API

对于大量数据,可以使用 Elasticsearch 的 scroll API 来分批次地读取数据,以避免一次性读取所有数据造成的内存负担。这段代码使用滚动查询(scroll)来分批次地读取数据。首先,它发送初始的搜索请求,并获取第…

Vue3:网页项目中路由的设计和配置

为了避免我每次建项目配路由的时候都回去翻网课,打算整一博客 路由设计 不同网页的路由设计思路基本相同,分为一级路由和二级路由,基本设计思路如下图 以我之前做过的招新系统管理端为例,可设计出如下路由 路由配置 还是以招新系…

递归的个人总结

递归函数(递去、回归)是函数不断的调用自己; 可以按照如下来理解:func1中调用func2,func2中调用func3; func3函数返回了,继续执行func2中的语句;func2执行完了,继续执行func1之后的…

ky10.aarch64安装Jenkins

参考地址:《安装部署 Jenkins》 前言 有war包和rpm两种安装方式,如果是长期使用更加推荐rpm的安装方式,可以更好的管理Jenkins; 我此次安装jenkins主要用于测试和简单的个人使用,所以选择更轻便的war安装。 1 下载J…

网络安全知识核心之ARP协议

概述 地址解析协议,即 ARP(Address Resolution Protocol),是根据 IP 地址获取物理地址的一个TCP/IP 协议。 发送 ARP 请求的以太网数据帧 广播 到以太网上的每个主机,ARP 请求帧中包含了目的主机的 IP 地址。 目的主…

RK3568基于openHarmony3.2版本之GT911触摸屏调试成功

RK3568基于openHarmony3.2版本之GT911触摸屏 开发环境调试过程HDF架构配置内核配置(选择性配置)效果展示总结开发环境 ubuntu版本:20.04 openharmony版本:3.2.4-release 核心板:RK3568 触摸屏型号:GT911 博主想说句话:太太太不容易了,这源码的坑不是一般的多,在总结那…