zoukankan      html  css  js  c++  java
  • 在 《四星定位原理介绍》 里 的 回复

    网友 jmctian   在 反相吧 发了一个 帖  《四星定位原理介绍》  https://tieba.baidu.com/p/6888700859   ,

     

    下面 记录 帖 里 的 一些 讨论回复  。

     

     

    9 楼

    1 楼 求  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0 的    方法 和 小梦 开平方 的 迭代方法 相似,  但 又有所不同  。 

    见 《小梦 在 民科吧 发了一个 用 四则运算 开平方 的 帖》  https://tieba.baidu.com/p/6811112759   的 12 楼 。

     

    对于 函数  y = f (x) ,   有  y₀ = f ( x₀ )  ,  已知  y₀ , 求  x₀  。

     

    任取一个  x ,   y = f (x),    令 ⊿ y = y₀ - y ,  ⊿ x = x₀ - x

     

    y₀ = y + ⊿ y ,    x₀ = x + ⊿ x

     

    令 ⊿ y / ⊿ x = f ′ ( x ) , 由此有

     

    ⊿ y =  f ′ ( x )  *  ⊿ x

    ⊿ x = ⊿ y  /   f ′ ( x ) 

     

    令  x = x + ⊿ x ,      即   x = x + ⊿ y  /   f ′ ( x )  =  x + ( y₀ - y )  /   f ′ ( x )      ,

     

    重复 若干次 这个 过程,   x 会 接近 x₀    。

     

     

    1 楼 的 方法 和 小梦 的 方法 虽然相似,   但有所不同 。

     

    1 楼 的 方法 是 以 自变量 来 设定 迭代目标(target),   小梦 的 方法 是 以 因变量 来 设定 迭代目标  。

     

    为什么 1 楼 的 方法 要 以 自变量  ⊿ x -> 0 ,  ⊿ y -> 0 ,  ⊿ z -> 0 ,  ⊿ t0 -> 0      作为 迭代目标  ?

     

    因为  1 楼 要解 的 是 一个 方程组  。

     

    事实上,   估算位置 的 计算 是 一个 关键 的 步骤,    根据  (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  ,  怎么计算出 估算位置  (x′, y′, z′)  ?

     

    为了 和 导数  f ′ ( x₀ )  区分,    我提议,   估算位置 不要 用 一撇  ′   命名, 可以叫    ( x估, y估, z估 )  ,   R ′₁ ,  R ′₂ , R ′₃ , R ′₄    可以叫  R估1 , R估2 , R估3 , R估4 ,   R ′ i 可以叫  R估i 或者 R估_i   。 

     

    另外,    ⊿ t0 和 ⊿ ti  的 ⊿  的 意义 是 不一样 的,  我提议,   只有 ⊿ t0  叫 ⊿ t0,    ⊿ ti 应该 叫 ti, 或者  t_i     。

     

    ⊿ ti    包括  ⊿ t1 ,   ⊿ t2 ,  ⊿ t3,   ⊿ t4   ,   其实 应该叫    t1 ,    t2 ,   t3,    t4     。

     

    这样,    是不是 更清楚 了  ?

     

     

    乍一接触,   1 楼 的 方法 数学味 挺浓,   泰勒先生 也是 作出了 贡献  。     不过 数学味 挺浓纯 的 东东,  通常 不太 直观  。

     

    简单的,   四星定位 是 一个 空间几何 的 线性问题,    以 高中 的 解析几何 为 基础 可以 作一些 解答 。  高中 解析几何 有没有 涉及 到 空间 中 的 2 条 曲线相交 了  ?

     

    通过 解  空间 中 的 2 个 圆 相交 的 方程组,  可以得到 定位 的 位置点,    当然 ,  这样 的 方程组 有多个,  不是一个  ……

     

    从 工作量 上 来 说,   解 空间 中 2 个 圆 相交 的 方程组(方程组 有 多个) 可能 不比 1 楼 的 方程组 简单, 也许 还麻烦 一些  。

     

    四星 可以 得到 4 组 定位 位置,    再 让 这 4 组 位置 逼近 出 一个  “尽可能接近真实位置”  的 位置,    这就是 输出结果  。

     

    但, 可以发现,   要 实施 1 楼 的 算法,  本来就要 知道 (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)   这 4 个 定位位置,  最初 的 这 4 个 定位位置,  大概 就是 用  2 个 圆 相交 的 解析几何 方法 求出来 的 吧,   啊哈哈哈哈  。

     

     

    另一方面,   1 楼 的 矩阵,  有 2 个,  就叫做  矩阵 1 和 矩阵 2 好了,   第一个 矩阵 是 矩阵 1,  第二个 矩阵 是 矩阵 2  。   

    矩阵 1   如果 直接 写成  4 个 方程 的 方程组,  我想  初中生 也可以看懂,   

    矩阵 2, 包含了 矩阵的除法, 就是有  -1 次方 的 那个,  似乎 毫无意义 ……   它 仅表示 要 解 矩阵 1 表示 的 四元方程组 , 而 事实上,  矩阵 2  并 没有 让 解方程组 的 计算 变得 简便,    也没有 提供 什么 计算方法  。

     

    矩阵 1,    写成  4 个 方程 的 方程组,  并不会 比 矩阵 多写 几个字,    如果 矩阵 唯一 的 优点 是 省字数,  那 确实 没 省到几个  。

     

    这些 矩阵,    看起来 并不直观  。

     

     

    1 楼 的 算法 可以这样说,   用 泰勒公式 的 一阶项 列一个 四元方程组 逼近 估算位置,   四元方程组 包含 的 4 个 未知数 是  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0,  求出 这 4 个 未知数 就是 对 估算位置 的 一次 近似(逼近)  。

    而 根据 每次 解 四元方程组 得到 的 ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0,  可以得到 新 的  (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  ,

    这些 新的  (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)    就是 对 估算位置 的 一次 近似(逼近),

    此时, 根据 新的 (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  ,   计算得 一个 新的 估算位置  (x′, y′, z′) ,

    回到 第一步,   根据 新的  (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  ,   用 泰勒公式 的 一阶项 列一个 四元方程组 逼近 新的 估算位置  。

     

    上述 就是 迭代过程,   若干次 迭代 后,  就可以得到  “误差分量Δx,Δy和Δz小于所要求的误差”  的   (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  ,  也就是 符合精度要求 的 定位位置,  也就是 输出结果 。

     

    还是那句话,   估算位置 的 取值,  是一个 关键 的 步骤  。

     

     

    jmctian: (x1, y1, z1) , (x2, y2, z2) , (x3, y3, z3) , (x4, y4, z4) 这 4 个 定位位置,就是四个稳定信号源的位置和时间参数,对于在地面的基站,当建立地心坐标系后,通过传统的测量方式和地球自转参数,就可以得到精确值了,没啥技术难度。

    jmctian: 其次,无论是啥初始值,以现在的普通电脑来解这个方程组实际耗时也就几十到几百毫秒间就可以达到所要求的精度了,由于时钟本身的精度不是无限高,所以迭代到一定精度后就可以结束迭代了,再往后的计算也是无效的。

    K歌之王: 回复 jmctian :是的, 说反了, 见 10 楼 。

     

     

     

    10 楼

    9 楼 说反了,   (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)  是 4 个 卫星 的 位置,  不是 对 地面物体 测出 的 4 个 位置,

     

    这样,  就是 用 估算位置 计算出 的 R估1 、R估2 、R估3 、R估4  去 逼近 4 个 卫星 实际 测量得到 的  R1 、R2 、R3 、R4 ,  而 这 也 使得 估算位置 (x估 , y估 , z估)    逼近了 真实位置  。

     

    1 楼 中 的 估算位置 是  (x′ , y′ , z′)   ,  我 这里 把 命名 改成了   (x估 , y估 , z估)   。

     

    这是一个 直接 和 巧妙 的 方法 。  不需要 用 2 个圆(3 个圆) 相交 求出 位置点,  再对 若干个 位置点 综合平均 得到 一个  误差较小 的 位置点 。

     

    这样一来的话,  估算位置 就不是 问题了,   一开始 的 估算位置 可以随便 取一个  。

     

     

    为什么 9 楼 会 把  (x1, y1, z1) ,   (x2, y2, z2) ,   (x3, y3, z3) ,   (x4, y4, z4)    当成是   对 地面物体 测出 的 4 个 位置  ?

     

    原因之一是,    4 个 卫星 对 一个 地面物体 可以给出 4 组 测量数据,  对应 4 个 位置  。

    设 卫星 是 A 、B 、C 、D  ,    ABC 一组,  ABD 一组,  ACD 一组,  BCD 一组,    因为 3 个 卫星 可以 决定 一个 地面位置, 

    所以,  对 一个 地面物体,   每组 可以 给出 一个 位置,   这样就可以得到  4 个 位置,     把 这 4 个 位置 综合平均 一下 就是 定位结果,   综合平均 起到 中和减小误差 的 作用  。

     

     

    jmctian: 四个地面基站可以给卫星定位,同样的四个卫星可以给地面GPS接收机定位。

     

     

     

    11 楼

    我把 9 楼 的 内容 修改了一下,   结合 10 楼 的 内容,   另外又增加了一些内容,  重新发在这里  。

     

     

    1 楼 求  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0 的    方法 和 小梦 开平方 的 迭代方法 相似,  但 又有所不同  。 

    见 《小梦 在 民科吧 发了一个 用 四则运算 开平方 的 帖》  https://tieba.baidu.com/p/6811112759   的 12 楼 。

     

    对于 函数  y = f (x) ,   有  y₀ = f ( x₀ )  ,  已知  y₀ , 求  x₀  。

     

    任取一个  x ,   y = f (x),    令 ⊿ y = y₀ - y ,  ⊿ x = x₀ - x

     

    y₀ = y + ⊿ y ,    x₀ = x + ⊿ x

     

    令 ⊿ y / ⊿ x = f ′ ( x ) , 由此有

     

    ⊿ y =  f ′ ( x )  *  ⊿ x

    ⊿ x = ⊿ y  /   f ′ ( x ) 

     

    令  x = x + ⊿ x ,      即   x = x + ⊿ y  /   f ′ ( x )  =  x + ( y₀ - y )  /   f ′ ( x )      ,

     

    重复 若干次 这个 过程,   x 会 接近 x₀    。

     

     

    1 楼 的 方法 和 小梦 的 方法 虽然相似,   但有所不同 。

     

    1 楼 的 方法 是 以 自变量 来 设定 迭代目标(target),   小梦 的 方法 是 以 因变量 来 设定 迭代目标  。

     

    为什么 1 楼 的 方法 要 以 自变量  ⊿ x -> 0 ,  ⊿ y -> 0 ,  ⊿ z -> 0 ,  ⊿ t0 -> 0      作为 迭代目标  ?

     

    因为  1 楼 要解 的 是 一个 方程组  。

     

    事实上,  方程组 也并不成其为 理由 。   事实上,   小梦 的 算法 也可以 以 自变量 ⊿ a -> 0 作为 迭代目标,  设 被开方数 为 b,  a 为 中间结果, 也是 最终结果,

     

    ⊿ a = ( b - a ² ) / (2a)

    令 a = a + ⊿ a   ,  

     

    这是 迭代过程,  若干次迭代后,  a 会 接近 根号 b    。

     

    可以看到,   可以 以 ⊿ a -> 0  或者 小于 “所要求的误差”  来 作为 迭代目标  。

     

    而 1 楼 的 算法  也可以 以   R i - R ′i  -> 0 或者 小于  “所要求的误差”   来 作为 迭代目标,  这里的  R i - R ′i  可以是 绝对值  | R i - R ′i |   。

     

     

    为了 和 导数  f ′ ( x₀ )  区分,    我提议,   估算位置 不要 用 一撇  ′   命名, 可以叫    ( x估, y估, z估 )  ,   R ′₁ ,  R ′₂ , R ′₃ , R ′₄    可以叫  R估1 , R估2 , R估3 , R估4 ,   R ′ i 可以叫  R估i 或者 R估_i   。 

     

    另外,    ⊿ t0 和 ⊿ ti  的 ⊿  的 意义 是 不一样 的,  我提议,   只有 ⊿ t0  叫 ⊿ t0,    ⊿ ti 应该 叫 ti, 或者  t_i     。

     

    ⊿ ti    包括  ⊿ t1 ,   ⊿ t2 ,  ⊿ t3,   ⊿ t4   ,   其实 应该叫    t1 ,    t2 ,   t3,    t4     。

     

    这样,    是不是 更清楚 了  ?

     

     

    乍一接触,   1 楼 的 方法 数学味 挺浓,   泰勒先生 也是 作出了 贡献  。     不过 数学味 挺浓纯 的 东东,  通常 不太 直观  。

     

    简单的,   四星定位 是 一个 空间几何 的 线性问题,    以 高中 的 解析几何 为 基础 可以 作一些 解答 。  高中 解析几何 有没有 涉及 到 空间 中 的 2 条 曲线相交 了  ?

     

    通过 解  空间 中 的 2 个 圆 相交 的 方程组,  可以得到 定位 的 位置点,    当然 ,  这样 的 方程组 有多个,  不是一个  ……

     

    从 工作量 上 来 说,   解 空间 中 2 个 圆 相交 的 方程组(方程组 有 多个) 可能 不比 1 楼 的 方程组 简单, 也许 还麻烦 一些  。

     

    四星 可以 得到 4 组 定位 位置,    再 让 这 4 组 位置 逼近 出 一个  “尽可能接近真实位置”  的 位置,    这就是 输出结果  。

     

    1 楼 的 方法 是 用 估算位置 计算出 的 R估1 、R估2 、R估3 、R估4  去 逼近 4 个 卫星 实际 测量得到 的  R1 、R2 、R3 、R4 ,  而 这 也 使得 估算位置 (x估 , y估 , z估)    逼近了 真实位置  。

     

    一开始 的 估算位置 可以 随便 取一个  。

     

    1 楼 中 的 估算位置 是  (x′ , y′ , z′)   ,  我 这里 把 命名 改成了   (x估 , y估 , z估)   。

     

    这是一个 直接 和 巧妙 的 方法 。  不需要 用 2 个圆(3 个圆) 相交 求出 位置点,  再对 若干个 位置点 综合平均 得到 一个  误差较小 的 位置点 。  综合平均 起到 中和减小误差 的 作用  。

     

     

    另一方面,   1 楼 的 矩阵,  有 2 个,  就叫做  矩阵 1 和 矩阵 2 好了,   第一个 矩阵 是 矩阵 1,  第二个 矩阵 是 矩阵 2  。   

     

    矩阵 1   如果 直接 写成  4 个 方程 的 方程组,  我想  初中生 也可以看懂,   

     

    矩阵 2, 包含了 矩阵的除法, 就是有  -1 次方 的 那个,  似乎 毫无意义 ……   它 仅表示 要 解 矩阵 1 表示 的 四元方程组 , 而 事实上,  矩阵 2  并 没有 让 解方程组 的 计算 变得 简便,    也没有 提供 什么 计算方法  。

     

    矩阵 1,    写成  4 个 方程 的 方程组,  并不会 比 矩阵 多写 几个字,    如果 矩阵 唯一 的 优点 是 省字数,  那 确实 没 省到几个  。

     

    这些 矩阵,    看起来 并不直观  。

     

     

    1 楼 用 泰勒公式 的 一阶项 列一个 四元方程组 逼近 估算位置,   四元方程组 包含 的 4 个 未知数 是  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0, 

    其实 要求 的 是 接近 真实位置 的 估算位置  ( x估 , y估 , z估 )  ,  每次迭代 从 四元方程组 中 求得  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0  ,

     

    在 1 楼 可以看到,   每一次 迭代 列 四元方程组 , 要用到 上一次 的 x′ , y′ , z′ , 也就是 x估 , y估 , z估 ,

    而 上一次 的  x估 , y估 , z估  由 上一次 的  ⊿ x,  ⊿ y,  ⊿ z  求得,   如下 :

     

    x估 = x估 + ⊿ x

    y估 = y估 + ⊿ y

    z估 = z估 + ⊿ z

     

    可以看到,  上一次 的 ⊿ t0 并不会 用到,    ⊿ t0  只是一个 占位符, 或者说 占位元, 或者说 占位未知数  。

    本来,   对于 ⊿ x,  ⊿ y,  ⊿ z    三个 未知数,   只要有 三个 方程 组成 三元方程组 就 足以 解出,  也就是说, 只要有 3 个 卫星 的 测量数据  R1 、R2 、R3  就可以 用  1 楼 的 方法 迭代 得出 接近 真实位置 的 估算位置  。

    但 为了 提高精度,  加入了 第 4 个 卫星,  组成 四元方程组,  这就需要再增加一个 未知数,  于是 就 加入了 ⊿ t0  ,

     

    当 有 5 个 卫星 的 时候,  会有 5 个 测量数据 :  R1 、R2 、R3 、R4 、R5  ,   可以 列 5 个 方程,  为了 组成 五元方程组,   当然 要 再加一个 未知数, 比如 ⊿ t02 ,   原来 的 ⊿ t0  改名为  ⊿ t01,    这样, 在 每个 方程 里  会有  + c * ⊿ t01 + c * ⊿ t02   这样 两项  。 

    方程组 有 5 个 未知数 :   ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t01 , ⊿ t02  。

     

    同理,  当 有 6 个 卫星 的 时候,  会有 6 个 测量数据 :  R1 、R2 、R3 、R4 、R5 、R6 ,    可以 列 6 个 方程,   这样要 再加 一个 未知数 ⊿ t03  ,  每个方程 里 会有   + c * ⊿ t01 + c * ⊿ t02 + c * ⊿ t03   这样 三项  。

    方程组 有 6 个 未知数 :   ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t01 , ⊿ t02 , ⊿ t03  。

     

    当有 7 个 卫星 的 时候,   会有  + c * ⊿ t01 + c * ⊿ t02 + c * ⊿ t03 + c * ⊿ t04    四项 ,   方程组 有 7 个 未知数 :   ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t01 , ⊿ t02 , ⊿ t03 , ⊿ t04  。

    当有 8 个 卫星 的 时候,   会有  + c * ⊿ t01 + c * ⊿ t02 + c * ⊿ t03 + c * ⊿ t04 + c * ⊿ t05    五项 ,   方程组 有 8 个 未知数 :   ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t01 , ⊿ t02 , ⊿ t03 , ⊿ t04 , ⊿ t05  。

    ……

    当有  i 个 卫星 的 时候,    依此类推   。

     

     

     

     

    jmctian: 搞那么多⊿ t干啥子?

    K歌之王: 回复 jmctian :为了把 多个 卫星 的 测量结果 R i 联系起来 呀 。

    jmctian: 回复 K歌之王 :卫星数量越多,定位的数据越准确,但也会带来计算量的增加。通常任何测量仪器都是有精度极限的,到达这个极限后增加再多的计算也没有意义了。

     

     

     

     

    12 楼

    接 11 楼,   因为 误差 的 存在,   ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0  并不会 无限 的 变小,   迭代到 一定 次数 时,  ⊿ x,  ⊿ y,  ⊿ z,  ⊿ t0  会 在 一定范围 附近 徘徊 和 跳跃 。

    这个范围 也是 定位目标 的 位置范围 。

    这里 说的 误差 是指  Ri  的 测量误差  。

     

    1 楼 的 方法 使用 泰勒公式 一阶项,   对于 多元方程(函数),  是 用 偏导数 的 方式  使用 泰勒公式 一阶项 ,  这可以达到 迭代逼近 的 效果,  这一点 在  多维空间几何 中 可以得到 直观 的 证明  。

     

     

     

     

     

     

    // **********************  草稿

    说起 测量误差,   会想起 地形 的 高低不平, 比如 高山 等 带来 的 对 定位结果 计算 的 影响,  但

    // **********************

     

     

     

    接 12 楼,  对 1 楼 用 偏导数 将 泰勒公式 一阶项 应用到 多元函数 的 方法 做一个 简单 的 推导证明  。

     

    先推导 一下 泰勒公式 一阶项 公式  ,   其实 在 11 楼 有 这个 推导过程  。

     

    对于 函数  y = f (x) ,   有  y₀ = f ( x₀ )  ,  已知  y₀ , 求  x₀  。

     

    任取一个  x ,   y = f (x),    令 ⊿ y = y₀ - y ,  ⊿ x = x₀近似 - x

     

    y₀ = y + ⊿ y ,    x₀近似 = x + ⊿ x

     

    令 ⊿ y / ⊿ x = f ′ ( x ) , 由此有

     

    ⊿ y =  f ′ ( x )  *  ⊿ x  

    ⊿ x = ⊿ y  /   f ′ ( x ) 

     

    x₀近似 = x + ⊿ x

    =  x + ⊿ y  /   f ′ ( x ) 

    =  x + ( y₀ - y )  /   f ′ ( x )      

     

    令    x = x₀近似  ,    重复 若干次 这个 过程,   x 会 接近 x₀    。

     

    由   ⊿ y =  f ′ ( x )  *  ⊿ x   ,  有

     

    y₀ - y =  f ′ ( x )  *  ⊿ x  

    y₀  =  y +  f ′ ( x )  *  ⊿ x          (1) 式

     

    (1) 式  就是  泰勒公式 一阶项 公式,    注意,  (1) 式 里的  x₀ 和 1 楼 的 x₀  反过来了,   (1) 式 的  x₀ 是 1 楼 的 x,  (1) 式 的 x 是 1 楼 的 x₀ ,  相应的,  y 和 y₀ ,  f ( x ) 和 f ( x₀ )    也是 反过来的  。   

    当然,  1 楼 没有用  y 和 y₀,   是用  f ( x ) 和 f ( x₀ )    表示 函数 的 。

    其实 这些 不是 大问题,   意会 就行  。

     

    上面的 推导过程 是 以 通俗 的 视角 推导 泰勒公式 一阶项 公式,   

    用 简单 的 高数知识 可以 证明,   (1) 式 求出  ⊿ x ,  令 x = x +  ⊿ x  , 再 代入 (1) 式 求 ⊿ x ,    如此迭代,   可以让  x -> x₀    。

     

     

    对于   多元函数   R = f ( x, y, z ) ,     要 怎么应用  (1) 式 ?

    x, y, z 为 自变量,   R 为 因变量  。

     

    对于  R₀ = f ( x₀, y₀, z₀ )   ,      已知  R₀  ,   求  x₀, y₀, z₀   。

     

    可以 这样来看,   先固定  y, z ,  只让 x 变化,   在 只让 x 变化 的 情况下,    尽量 的 让  R 逼近 R₀  ,

    于是,   y,  z  可以看作 常量,   应用 (1) 式,   可得 :

     

    R₀  =  R  +   ∂  f ( x, y, z )  /  ∂ x

    R₀  =  f ( x, y, z )   +   ∂  f ( x, y, z )  /  ∂ x

     

    给  x, y, z  各取一个 估算值  x估 , y估 , z估 ,

     

    R₀  =  f ( x估, y估, z估 )   +   ∂  f ( x估, y估, z估 )  /  ∂ x   *   ⊿ x         (2) 式

     

    同理,    固定  x, z ,  只让 y 变化,   在 只让 y 变化 的 情况下,    尽量 的 让  R 逼近 R₀  ,    可得

     

    R₀  =  f ( x估, y估, z估 )   +   ∂  f ( x估, y估, z估 )  /  ∂ y   *   ⊿ y         (3) 式

     

    同理,    固定  x, y ,  只让 z 变化,   在 只让 z 变化 的 情况下,    尽量 的 让  R 逼近 R₀  ,    可得

     

    R₀  =  f ( x估, y估, z估 )   +   ∂  f ( x估, y估, z估 )  /  ∂ z   *   ⊿ z         (4) 式

     

    接下来,    可以 先 根据  (2) 式 求出  ⊿ x ,  根据  x估 = x估 + ⊿ x  得到 新的  x估 ,

    把 新的  x估 代入  (3) 式,    求出  ⊿ y,   根据  y估 = y估 + ⊿ y  得到 新的  y估 ,

    把 新的  x估 ,  y估 代入  (4) 式,    求出  ⊿ z,   根据  z估 = z估 + ⊿ z  得到 新的  z估 ,

     

    把 新的  x估 ,   y估 ,  z估     代回   (2) 式 , (3) 式 , (4) 式,    重复 上述过程  。

     

    这样 迭代  若干次 后,     x估 ,   y估 ,  z估  应该会 接近   x₀, y₀, z₀    。

     

     

    可以看到,     (2) 式 ,   (3) 式 ,   (4) 式   的 形式 是 一样 的,  差别 是 等号右边 的 第 2 项,  第 2 项 也就是 增量项 。

    可以 把    (2) 式 ,   (3) 式 ,   (4) 式    叠加 起来,

     

    R₀  =  f ( x估, y估, z估 )   +   ∂  f ( x估, y估, z估 )  /  ∂ x   *   ⊿ x   +   ∂  f ( x估, y估, z估 )  /  ∂ y   *   ⊿ y  +   ∂  f ( x估, y估, z估 )  /  ∂ z   *   ⊿ z        (5) 式

     

    (5) 式 就是   (2) 式 ,   (3) 式 ,   (4) 式      叠加起来 的 结果,   

    “叠加” 包含 2 个 意思,   一是 (5) 式 完整 的 保留了  (2) 式 ,   (3) 式 ,   (4) 式  各自 的 逼近能力,   二是  让   ⊿ x  ,  ⊿ y ,  ⊿ z    建立了 联系  。

     

    为什么说   (5) 式 完整 的 保留了  (2) 式 ,   (3) 式 ,   (4) 式  各自 的 逼近能力 ?

     

    当   ⊿ y = 0 ,  ⊿ z = 0  时,   (5) 式 变回  (2) 式,

    当   ⊿ x = 0 ,  ⊿ z = 0  时,   (5) 式 变回  (3) 式,

    当   ⊿ x = 0 ,  ⊿ y = 0  时,   (5) 式 变回  (4) 式,

     

    这应该可以说是     (5) 式 完整 的 保留了  (2) 式 ,   (3) 式 ,   (4) 式  各自 的 逼近能力  。

     

    这个叠加 似乎 可以叫一个 定理,  比如  “线性叠加和退化法则”   。

     

     

    根据 (5) 式,   可以列一个 三元方程,   如果 有 3 个 R, 比如  R1, R2, R3,  就可以 列 三个 方程,  组成 三元方程组  。

     

    R1  =  R估1   +   ∂  f1 ( x估, y估, z估 )  /  ∂ x   *   ⊿ x   +   ∂  f1 ( x估, y估, z估 )  /  ∂ y   *   ⊿ y  +   ∂  f1 ( x估, y估, z估 )  /  ∂ z   *   ⊿ z      (6) 式

    R2  =  R估2   +   ∂  f2 ( x估, y估, z估 )  /  ∂ x   *   ⊿ x   +   ∂  f2 ( x估, y估, z估 )  /  ∂ y   *   ⊿ y  +   ∂  f2 ( x估, y估, z估 )  /  ∂ z   *   ⊿ z      (7) 式

    R3  =  R估3   +   ∂  f3 ( x估, y估, z估 )  /  ∂ x   *   ⊿ x   +   ∂  f3 ( x估, y估, z估 )  /  ∂ y   *   ⊿ y  +   ∂  f3 ( x估, y估, z估 )  /  ∂ z   *   ⊿ z      (8) 式

     

    其中,   R估1 =  f1 ( x估, y估, z估 )   ,   R估2 =  f2 ( x估, y估, z估 )    ,     R估3 =  f3 ( x估, y估, z估 )  

     

    注意,    f1 , f2 , f3  是不一样的, 区别在于 代入 的  卫星位置 不一样,

    R1 是 卫星 1 测量的,  卫星 1 的 位置 是  ( x1, y1, z1 ) ,  所以,  在   f ( x估, y估, z估 )   中 代入  ( x1, y1, z1 )  就是   f1 ( x估, y估, z估 )  ,

    R2 是 卫星 2 测量的,  卫星 2 的 位置 是  ( x2, y2, z2 ) ,  所以,  在   f ( x估, y估, z估 )   中 代入  ( x2, y2, z2 )  就是   f2 ( x估, y估, z估 )  ,

    R3 是 卫星 3 测量的,  卫星 3 的 位置 是  ( x3, y3, z3 ) ,  所以,  在   f ( x估, y估, z估 )   中 代入  ( x3, y3, z3 )  就是   f3 ( x估, y估, z估 )  ,

     

    这就是 1 楼 的 方法  。

     

     

     

     

     

  • 相关阅读:
    dimensionality reduction动机---data compression(使算法提速)
    K-means:如何选择K(cluster的数目)
    python2和python3共存方法
    docker postgresql 数据库
    转:MySQL到底能支持多大的数据量?
    数据库jdbc链接:mysql, oracle, postgresql
    python获取参数列表
    转载:ubuntu系统启动顺序,常见系统服务说明
    使用postman开发testcases记录贴
    python gevent使用例子
  • 原文地址:https://www.cnblogs.com/KSongKing/p/13526880.html
Copyright © 2011-2022 走看看