【问题标题】:Minimizing a function of vectors最小化向量的函数
【发布时间】:2012-05-29 07:44:27
【问题描述】:

我需要最小化以下总和:

最小化所有i{(i = 1 to n) fi(v(i), v(i - 1), tangent(i))}的总和

vtangent 是向量。 fi 将 3 个向量作为参数并返回与这 3 个向量相关的成本。对于这个函数,v(i - 1) 是在上一次迭代中选择的向量。
tangent(i) 也是已知的。在给定其他两个向量v(i - 1)tangent(i) 的情况下,fi 计算选择向量v(i) 的成本。 v(0)v(n) 向量是已知的。 tangent(i) 的值也预先为所有人所知
i = 0 to n
我的任务是确定所有这些v(i)s,以使i = 1 to n 的函数值的总成本最小化。
你能给我一些解决这个问题的想法吗?
到目前为止,我可以想到 Branch and Bound 或动态编程方法。

谢谢!

【问题讨论】:

  • 我无法理解这个优化问题的未知数。是v向量的顺序吗?能否更清楚地说明优化问题。
  • 在此处添加更多关于优化的细节。 “我的任务是确定所有这样的 v(i),以使 i = 1 到 n 的函数值的总成本最小化”。我想我们需要一些关于成本函数的信息。因为 v(i) 的选择会影响 v(i+1) 的选择。因此,在每一步最小化的贪心策略可能不是最优的。有关成本函数的更多信息。
  • 是的,向量的顺序很重要,它们的值也很重要。我基本上需要找到那些最小化成本的 i 向量。 v(i) 给出第 i 个点的注视方向。 tangent(i) 给出第 i 个点的路径的切线。成本函数计算 v(i-1) 和 v(i) 之间的角度以及 v(i) 和 tangent(i) 之间的角度之和。所以我需要尽量减少这个成本,以确保平滑变化的凝视。希望这能澄清你的观点。

标签: algorithm minimization


【解决方案1】:

我认为这是数学优化中的一个问题,目标函数由点积和反余弦构成,受制于向量应该是单位向量的约束。您可以使用拉格朗日乘数或通过在反余弦中包含归一化步骤来强制执行此操作。如果 Ti 是单位向量,则 Vi 计算 cos^-1(Ti.Vi/sqrt(Vi.Vi))。我会尝试为此使用共轭梯度优化器,或者甚至是牛顿法,我的起点是 Vi = Ti。

我希望这将是合理的,因为 Vi 只与相邻的 Vi 相关。你甚至可以通过一个一个地反复调整每个 Vi 来优化目标函数。如果您反复将 Vi 设置为 Ti、Vi+1 和 Vi-1 的平均值,然后再次将 Vi 缩放为单位向量,可能值得看看会发生什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-18
    相关资源
    最近更新 更多