首页 > 其他分享 >决策单调性

决策单调性

时间:2023-11-12 12:55:05浏览次数:30  
标签:le text i2 决策 j2 j1 单调

定义

顾名思义,就是说在 DP 取最值的过程中选的转移点 \(j\) 是单调的。只要有这个性质,就可以优化枚举转移的复杂度。

充要条件

\[f_i=\text{最值}(g_j+w(j+1,i)) \]

\(w\) 满足四边形不等式。

这里以取 \(\min\) 为例。假设有决策点 \(j_1<j_2\),\(w\) 满足四边形不等式等价于 \(\Delta w(j_1)\ge \Delta w(j_2)\),这样才能让它一直是单调的。只要把 \(\Delta w\) 转换成两个 \(w\) 相减就可以得到式子 \(w(j_1,i_2)-w(j_1,i_1)\ge w(j_2,i_2)-w(j_2,i_1),j_1<j_2<i_1<i_2\),再移项就是 \(w(j_1,i_1)+w(j_2,i_2)\le w(j_1,i_2)+w(j_2,i_1)\)。即 \(\text{交叉}\le\text{包含}\)。

以上三种形式,只要可以验证(指暴力)某一个,即可认为 \(w\) 满足四边形不等式。

推导决策单调性

反证法,设 \(f_{i1}\leftarrow f_{j2},f_{i2}\leftarrow f_{j1}\),可以得到:

\[\begin{cases} f_{j2}+w(j2,i1)\le f_{j1}+w(j1,i1)\hspace{2.5cm}1\\ f_{j2}+w(j2,i2)\ge f_{j1}+w(j1,i2)\\ w(j_1,i_1)+w(j_2,i_2)\le w(j_1,i_2)+w(j_2,i_1)\hspace{1cm}2 \end{cases} \]

1 式加 2 式得:

\[\begin{cases} f_{j2}+w(j2,i2)\le f_{j1}+w(j1,i2)\\ f_{j2}+w(j2,i2)\ge f_{j1}+w(j1,i2) \end{cases} \]

矛盾。

应用

当 \(g_j\) 与 \(f_j\) 无关时,直接整体二分。

否则,转化一下。决策点单调等价于每个决策点被转移到的集合是连续区间且单调。

当 \(\text{交叉}\le\text{包含}\) 时,有这样的图像(y 轴应为 \(f_j+w(j,i)\)):

img

求 \(\min\) 维护红色,用单调队列加二分;求 \(\max\) 维护黑色,单调栈+二分。

\(\text{交叉}\ge\text{包含}\) 时反之。

推广

满足四边形不等式和 \(w(j1,i2)\le w(j2,i1)\) 后,同样可以优化区间 DP、前 \(i\) 分 \(j\) 段的 DP。

标签:le,text,i2,决策,j2,j1,单调
From: https://www.cnblogs.com/mRXxy0o0/p/17827011.html

相关文章

  • 【个人感想】关于E2E决策
     这是horizon做的,nuplan第二 ,https://arxiv.org/pdf/2306.15700.pdf感觉从UNIAD开始提端到端的都开始玩赖了,网络规划结果只作为优化初始解,然后接个利用感知结果做优化的planning优化的planning是在线跑的时候才用,训的时候不用,也不能用因为用了的话就梯度消失了,uniad也一样......
  • 08-单调栈
    8.单调栈有个数组arr,找到arr[i]左面比他小的第一个数,和右面比他小的第一个数,要求O(N)的时间复杂度.思路:栈底下栈顶从小到大,栈中存放位置信息,入栈或者出栈的时候可能需要记录信息。8.1每日温度https://leetcode.cn/problems/daily-temperatures/1.题目给定一个整数数......
  • PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SV
    全文下载链接:http://tecdat.cn/?p=26219最近我们被客户要求撰写关于银行机器学习的研究报告,包括一些图形和统计输出。该数据与银行机构的直接营销活动相关,营销活动基于电话。通常,需要与同一客户的多个联系人联系,以便访问产品(银行定期存款)是否会(“是”)或不会(“否”)订阅银行数据......
  • Matlab决策树、模糊C-均值聚类算法分析大学教师职称学历评分可视化
    全文链接:https://tecdat.cn/?p=34203原文出处:拓端数据部落公众号本文使用Matlab编程语言中的决策树和模糊C-均值聚类算法,帮助客户对大学教师职称、学历与评分之间的关系进行深入分析。背景随着高等教育的快速发展,教师队伍的素质和能力成为了影响高校发展的重要因素。职称和学......
  • 单调栈学习笔记
    今天模拟赛B没想出来,甚至没到单调栈那一步。到了可能也不会做。发现单调栈已经忘干净了,之前学过的悬线法也不太会,这里补一下单调栈。板子:HISTOGRA-LargestRectangleinaHistogram在我的这篇博客里有题解。总之我自己是看懂了的。单调栈求最大全1子矩阵问题P4147玉......
  • 单调队列学习笔记
    Menu单调队列(MonotonicQueue)简介代码模板例题单调栈(MonotonicStack)简介代码模板例题......
  • 算法--笔记--单调栈
    单调栈是为了解决两层foru循环O(n^2)变为O(n)的问题思路是:维持一个单调栈.依次进入单调栈,并淘汰对后续没有帮助的对象当一个对象从栈里弹出的时候,结算当前对象参与的答案。如何判断单调栈是大压小还是小压大呢?左侧的要小的,就是大压小左侧的要大的,就是小压大......
  • sklearn-决策树
    目录决策树算法关键特征维度&判别条件决策树算法:选择决策条件纯度的概念信息增益增益率:基尼指数:纯度度量方法1)纯度函数%20%E7%BA%AF%E5%BA%A6%E5%87%BD%E6%95%B0)2)纯度度量函数%20%E7%BA%AF%E5%BA%A6%E5%BA%A6%E9%87%8F%E5%87%BD%E6%95%B0)编辑决策树算法关键了解了“if-else”......
  • 决策树算法原理
    目录决策树算法关键特征维度&判别条件决策树算法:选择决策条件纯度的概念信息增益增益率:基尼指数:纯度度量方法1)纯度函数%20%E7%BA%AF%E5%BA%A6%E5%87%BD%E6%95%B0)2)纯度度量函数%20%E7%BA%AF%E5%BA%A6%E5%BA%A6%E9%87%8F%E5%87%BD%E6%95%B0)编辑决策树算法关键了解了“if-else”......
  • 【学习笔记】决策单调性与四边形不等式
    Itst-决策单调性与四边形不等式学习笔记。这方面是真的一点不会啊。学点东西吧apj。约定对于\(n\timesm\)的矩阵\(A\),定义:子矩阵\(A_{[i_1,i_2,\cdots,i_k],[j_1,j_2,\cdots,j_l]}\)为矩阵\(A\)中第\(i_1,i_2,\cdots,i_k\)行和第\(j_1,j_2,\cdots......