【圣明先生】SPP集合划分问题——前言

东北师范大学预备研一学生 jinxi20111 2024.05.27

记录一下我的学习过程

题目

SPP问题——集合划分问题

该问题中,有N个元素和M个约束。每个元素拥有一个代价P,并拥有一个约束的子集。问题要求,选择任意个元素,使得这些子集的并集为全集,并且交集为空集的条件下,代价和最小。

其实就是,N个人,M个数,每个人拿着其中几个数字。你选任意个人,这几个人把M个数字都拿全了还得没有重复数字。
满足这样条件的人大概率有好几组,还得选年龄加和最小的。

谈到这个问题的时候,会涉及一个概念,叫做 NP-HARDNP-COMPLETE 叫NP难、NP完全问题。这个玩意说实话,我现在也不是很明白。我的理解是,这就是SPP和很多问题的一个特征:你想要知道一个解(你选择的几个人)是否正确(有M个数字且不重复),是非常简单就能验证真假的。但如果你想知道最优解,或者满足某个条件的解是否存在,又或者是你现在的解是否是最优解,则你可能要验证所有可行解才能确保结果一定正确。

这时候,就会有这样一种疑问:那我全验证了不行吗?

行也不行。

不行的地方在于,SPP问题并不是一个小众的问题,这种集合划分在很多领域都有非常优秀的应用场景。在这种情况下,仍然没有行之有效的优化算法横空出世,其实某种程度上已经说明了问题。主要问题在于,问题规模太大了,动不动就是几十万个元素,几百万的约束。根据组合数学,产生的可能解足够淹没普通计算机的性能。在求解完成前,答案可能就已经不重要了(
PS:这让我想起了密码学的一个重要理论,原话我不记得了,大概意思是,密码并不需要无法破解,只需要在其加密的内容失效前无法破解就行。一切想要让其无法破解的努力其实都是冗余的。

那为什么还说行呢?行的地方在于三点:一是摩尔定律年年都有人说要失效,结果年年都在进步。超级计算机的计算力也日渐膨胀。可能在不久的将来,力大飞砖一力降十会(这个字居然是会,我一直以为是慧),一切算法都没有用了,直接暴力模拟。

第二点,量子计算机某种程度上是该类型问题的专杀。就像粘鼠板打老鼠,蟑螂药杀蟑螂。量子计算机并不是通用计算机,只能通过某种可以称为模拟的方式,手动暴力求解。但受限的计算范围,换来的是远超普通计算机的超级计算速度。未来SPP问题可能也会被这玩意彻底消灭。

第三点,SPP虽说一定有一个确定的结果:无解或者是一个确定的解。但其实大多数情况下,我们并不追求最好,只追求超过某个限度的较好。这其实就给很多科研人员一个缝隙,去追求一个比较好的解,而非验证其最优。

而今天的我,站在这座小山的山脚,仰望着众多默默攀爬的人,开始规划一条我自己的小路……
(未完待续)

//jinxi20111 2024.05.27

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值