Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >困扰数学家近60年的搬沙发难题疑似被解决!119页论文证明最优解,百万网友围观

困扰数学家近60年的搬沙发难题疑似被解决!119页论文证明最优解,百万网友围观

作者头像
机器之心
发布于 2025-02-14 12:52:45
发布于 2025-02-14 12:52:45
740
举报
文章被收录于专栏:机器之心机器之心

机器之心报道

机器之心编辑部

《老友记》中的罗斯终于能把沙发搬进屋了。

生活中处处充满数学,比如在经典美剧《老友记》中,罗斯要搬家,却在和瑞秋抬沙发上楼梯扶手时翻了车。这涉及了数学领域一个著名的未解决难题 —— 移动沙发问题(the moving sofa problem)。

来源:《老友记 S05E16》

该问题是由加拿大数学家 Leo Moser 于 1966 年正式提出:在宽度为 1 的 L 形平面走廊中,能够通过一个直角转弯的「沙发」的最大面积是多少?

1968 年,数学家 John Michael Hammersley 提出了一种简单的解法。他将沙发设计成类似于一个电话听筒的形状,由两个四分之一圆和一个中间的矩形块组成,中间的矩形块中挖去了一个半圆形,从而得出的沙发最大面积为 2.2074。

但遗憾的是,这并不是最优解。

1992 年,美国数学家 Gerver 在 Hammersley 沙发的基础上进行了改进,算出的最大沙发面积为 2.2195,虽然比 Hammersley 沙发面积略大一些,但在方法上却聪明得多。

Gerver 沙发由 18 条不同的曲线段组成,其中包括圆弧、圆的渐开线以及圆的渐开线的渐开线等多种曲线。每条曲线段都由一个单独的解析表达式描述,这使得 Gerver 沙发在数学上非常复杂。

Gerver 推测他的解决方案是最优的,但他无法证明他的沙发是唯一一个(并且是最大面积的)满足这个强条件的沙发。

2024 年 12 月 2 日,韩国学者 Jineon Baek 发表了一篇新论文,声称证明了 Gerver 确实是正确的 —— 他的沙发是最优的。这项研究在社交媒体(如 x)上的热度非常高,引起了很多人的关注。

图源:x@Scientific_Bird

图源:x@morallawwithin

不过,Jineon Baek 的证明论文足足有 119 页,题目为《Optimality of Gerver’s Sofa》。相关专家验证证明的正确性还需要一些时间。

论文地址:https://arxiv.org/pdf/2411.19826

这道困扰人类 58 年的数学难题终于有了答案,不少网友也发表了自己的看法。

「我甚至不是数学家,自从 20 年前听说这个问题后,我就一直在思考它。每次我需要把东西通过门时,我都会想到这个问题。」

「我没想到这个形状会是最优的,这 18 个部分看起来不够优雅。」

证明过程简述

论文共分 8 章,目录如下:

摘要只有一句话,「通过证明具有 18 个曲线段的 Gerver 沙发的确达到了最大面积 2.2195,进而解决了移动沙发问题」。

下图为 Gerver 的沙发 G。刻度表示构成 G 边界的 18 条解析曲线和线段的端点,包含 G 的支撑走廊 L_t 在右侧以灰色表示。

在证明 Gerver 的沙发 G 达到最大面积的过程中,作者除了在科学计算器上进行数值计算之外,没有使用任何的计算机辅助。下图 1.3 为从走廊(顶部)和沙发(底部)视角来看移动沙发的移动。

下面为作者要证明的定理 1.1.1。

这个问题之所以很难,是因为没有一个通用的公式可以计算所有可能的移动沙发面积。因此,为了解决这个问题,作者证明了最大面积的移动沙发 S_max 的一个属性,被称为可注入性条件(injectivity condition)。

对于每个满足条件的移动沙发 S,作者将定义一个更大的形状 R,它类似于 Gerver 沙发的形状(下图 1.2)。那么 R 的面积 Q (S) 就是 S 面积的上限,如果是 Gerver 沙发 G,则 Q (S) 与 S 的精确面积相匹配。S 的可注入性条件确保区域 R 的边界形成 Jordan 曲线,从而能够使用格林定理计算 Q (S)。

然后,移动沙发 S 面积的上界 Q (S) 相对于 S 的最大值如下所示:作者使用 Brunn-Minkowski 理论将 Q 表示为凸体元组 (K,B,D) 空间 L 上的二次函数(上图 1.2),并使用 Mamikon 定理建立 Q 在 L 上的全局凹性(下图 1.13)。

作者使用加州大学戴维斯分校数学系教授 Dan Romik [Rom18] 关于 Gerver 沙发 G 的局部最优方程,来证明 S = G 局部最大化 Q (S)。由于 Q 是凹的,因此 G 也全局最大化 Q。并且,由于上界 Q 与 G 处的面积相匹配,因此沙发 G 也全局最大化了面积,从而证明定理 1.1.1。

具体来讲,定理 1.1.1 的完整证明分为以下三个主要步骤:

  • 步骤 1 :限制最大面积移动沙发 S_max 的可能形状;
  • 步骤 2 :建立 S_max 的可注入性条件;
  • 步骤 3 :构建满足可注入性条件的移动沙发 S 面积的上界 Q (S),并最大化关于 S 的 Q (S)。

作者提供了步骤 1、2、3 的更细分步骤。

其中步骤 1-(a) 将 S_max 的可能形状缩小为单调沙发(monotone sofa),即由支撑走廊内角雕刻出的凹痕的凸体(下图 1.4)。

步骤 1-(b) 重新证明了 Gerver 的一个重要局部最优条件,即 S_max 的边长应该相互平衡(定理 1.3.1)。

由于 Gerver 的原始证明存在逻辑漏洞,没有解决移动沙发的连通性问题,因此作者引入了新的想法并重新进行了证明。步骤 1-(c) 使用前面的步骤和基本几何来表明 S_max 在移动过程中旋转了整整一个直角。

步骤 2 证明了 S_max 上的可注入性条件,这是之后建立上限 Q 的关键。它表明 L 内角 (0,0) 的轨迹在移动沙发的视角(参考系)中不会形成自环(下图 1.9)。

为了证明 S_max 的这一条件,作者在 S_max 上建立了一个新的微分不等式(等式 (1.9)。该不等式受到了 Romik 的一个 ODE 的启发,该 ODE 平衡了 Gerver 沙发的微分边(等式 (1.8))。

步骤 3-(a) 将所有移动沙发的空间 S 扩展为具有单射条件的凸体元组 (K,B,D) 的集合 L,使得每个 S 一一映射到 (K,B,D) ∈ L(但不一定到 L)。该凸体描述了包围 S 的区域 R 的不同部分(上图 1.2)。

步骤 3-(b) 定义了扩展域 L 上的上界 Q。作者遵循 R 的边界,并使用格林定理和 Brunn-Minkowski 理论中关于 K、B 和 D 的二次面积表达式来表示其面积 Q。同时使用单射条件和 Jordan 曲线定理严格证明 Q (K,B,D) 是 S 面积的上界。

步骤 3-(c) 使用 Mamikon 定理确定 Q 在 L 上的凹度(上图 1.13)。步骤 3-(d) 计算由 Gerver 沙发 G 产生的凸体 (K,B,D) ∈ L 处 Q 的方向导数。Romik [Rom18] 在 G 上的局部最优 ODE 用于表明方向导数始终为非正值。这意味着 G 是 Q 在 L 中的局部最优值。Q 在 L 上的凹度意味着 G 也是 Q 在 L 中的全局最优值。由于 G 处 Q 的值与面积匹配,沙发 G 也全局最大化了面积,最终完成定理 1.1.1 的证明。

更具体的证明细节请参考原论文。

作者介绍

这篇论文的作者 Jineon Baek,本科毕业于韩国浦项科技大学,博士期间就读于美国密歇根大学安娜堡分校。现为韩国首尔延世大学的博士后研究员,导师是 Joonkyung Lee。

Jineon Baek2018 年讲解关于非对角线 Erdős-Szekeres 凸多边形问题视频截图

他主要研究兴趣是组合数学和几何学中的优化问题,这类问题往往通过简单却有趣的表述,能够吸引更广泛的受众。

他在人工智能领域也发表过一些相关文章。他在医学图像处理、教育数据挖掘等领域发表了多篇会议和期刊论文,特别是在 X 射线 CT 图像去噪、考试分数预测、标准化考试准备推荐系统等方面有所贡献。

查阅 Jineon Baek 发表过的文章,就会发现这已经不是他第一次研究移动沙发问题了。在今年 6 月他就移动沙发的上限问题进行了研究。在新文章发布的 12 月 2 日当天,arxiv 上显示,这篇论文提交了一个更新版本(v2),之后撤回了该版本。

现在,不少网友在网上讨论《Optimality of Gerver's Sofa》。

「非常直观,正是大多数人会猜测的那样。不过,我猜证明这一点要困难得多吧?」

「在现实生活中,答案取决于天花板的高度以及沙发是否带有可倾斜的靠背。」

「对于沙发来说,这真的是一个糟糕的设计。」

你怎么看这个移动沙发的最优解呢?

参考链接:

https://x.com/deedydas/status/1865060166322032764

https://x.com/Scientific_Bird/status/1865116279574528088

https://jcpaik.github.io/CV.pdf

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器之心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【数据结构与算法】并查集
并查集需要建立映射关系,那么下面的代码是建立映射关系的一种方法(并查集的实现不采用这种方法)。
平凡的人1
2023/10/15
1740
【数据结构与算法】并查集
并查集详解(原理+代码实现+应用+优化)
我们可以用vector存名字数组里面的数据,那下标就可以做它们的编号,那这样用编号找名字是很方便的,编号是几,就找下标为几的元素就行了。 但是名字找编号就有点麻烦,所以我们可以借助map给名字和编号建立一个映射关系。
YIN_尹
2024/01/23
4.3K1
并查集详解(原理+代码实现+应用+优化)
并查集的原理及实现
在一些应用问题中,需要将 n 个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型称为并查集 (union-findset)。
利刃大大
2023/04/12
4890
并查集的原理及实现
【高阶数据结构】秘法(一)——并查集:探索如何高效地管理集合
回家一段时间后,西安小分队中8号游客与成都小分队1号游客奇迹般的走到了一起,两个小圈子的游客相互介绍,最后成为了一个小圈子:
GG Bond1
2024/08/29
1140
【高阶数据结构】秘法(一)——并查集:探索如何高效地管理集合
【数据结构】并查集
在一些应用问题中,需要将 n 个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型称为并查集(union-find set)。
YoungMLet
2024/03/09
1960
【数据结构】并查集
DS进阶:并查集
在一些应用问题中,需要将n个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型称为并查集(union-find set)。
小陈在拼命
2024/05/03
1010
DS进阶:并查集
【高效管理集合】并查集的实现与应用
并查集,也称为不相交集,是一种树形的数据结构,用于处理一些不相交集合的合并及查询问题。简单来说,它主要用于处理元素分组的问题。
用户11305458
2024/10/09
2160
【高效管理集合】并查集的实现与应用
【c++高阶DS】图
比如:某公司今年校招全国总共招生10人,西安招4人,成都招3人,武汉招3人,10个人来自不同的学校,起先互不相识,每个学生都是一个独立的小团体,现给这些学生进行编号:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; 给以下数组用来存储该小集体,数组中的数字代表:该小集体中具有成员的个数
用户11029103
2024/12/25
1070
【c++高阶DS】图
并查集的原理及实现
在一些应用问题中,需要将n个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型称为并查集(union-findset)。 并查集一般可以解决一下问题:
海盗船长
2020/08/28
9590
如何使用并查集解决朋友圈问题?
今天分享到的是一种相对冷门的数据结构 —— 并查集。虽然冷门,但是它背后体现的算法思想却非常精妙,在处理特定问题上能做到出奇制胜。那么,并查集是用来解决什么问题的呢?
用户9995743
2022/12/22
1.6K0
如何使用并查集解决朋友圈问题?
【数据结构】? 并查集优化全解:从链式退化到近O(1)的性能飞跃 | 路径压缩与合并策略深度实战
在上一篇内容中我们正确认识了并查集,并通过数据元素与其双亲指针的映射关系实现了并查集的查找与合并的。
蒙奇D索隆
2025/03/30
1560
【数据结构】? 并查集优化全解:从链式退化到近O(1)的性能飞跃 | 路径压缩与合并策略深度实战
并查集
本篇博客参照了如下博客内容: http://www.cnblogs.com/horizonice/p/3658176.html
AI那点小事
2020/04/20
4280
并查集
【数据结构】C语言实现并查集:双亲指针映射与动态连通性实现详解
在上一篇内容中我们从数据结构的三要素初步认识了并查集这种数据结构,但是上一篇对并查集的介绍并不准确。
蒙奇D索隆
2025/03/29
900
【数据结构】C语言实现并查集:双亲指针映射与动态连通性实现详解
客户端用不着的数据结构之并查集
并查集可以看作是一个数据结构,如果你根本没有听说过这个数据结构,那么你第一眼看到 “并查集” 这三个字的时候,脑海里会浮现一个什么样的数据结构呢?
五分钟学算法
2019/10/09
6450
客户端用不着的数据结构之并查集
最小生成树算法(下)——Kruskal(克鲁斯卡尔)算法
在我的上一篇文章最小生成树算法(上)——Prim(普里姆)算法 主要讲解对于稠密图较为合适的Prim算法。那么在接下里这片文章中我主要讲解对于稀疏图较为合适的Kruskal算法。
AI那点小事
2020/04/20
1.3K0
最小生成树算法(下)——Kruskal(克鲁斯卡尔)算法
【数据结构】数据结构高手进阶:并查集VS森林,谁才是集合操作的真神?
集合这种逻辑结构是指在集合中的数据元素之间除了同一个集合外,没有其它的关系,如下图所示:
蒙奇D索隆
2025/03/21
710
【数据结构】数据结构高手进阶:并查集VS森林,谁才是集合操作的真神?
《并查集的黑科技:路径压缩×按秩合并×带权扩展|算法核心原理与工程级实践指南》
🔥 在一些应用问题中,需要将n个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型成为并查集(union-findset)
IsLand1314
2025/04/05
1470
《并查集的黑科技:路径压缩×按秩合并×带权扩展|算法核心原理与工程级实践指南》
数据结构高频面试题-图
图的基础概念图的基础算法1. 图的遍历深度优先搜索遍历(DFS)广度优先搜索遍历(BFS)2. 单源最短路径问题(Dijkstra算法)3. 拓扑排序4. 最小生成树Kruskal算法(加边法)Prim算法(加点法)经典面试题1.克隆图2.课程表II3.网络延迟问题4.除法求值5.最小高度树6.重新安排行程7. 冗余连接
小萌哥
2020/07/20
2.4K0
并查集(Union-Find Set)课程笔记
猫咪-9527
2025/03/28
1000
数据结构之并查集
并查集(Union Find),从字面意思不太好理解这东西是个啥,但从名字大概可以得知与查询和集合有关,而实际也确实如此。并查集实际上是一种很不一样的树形结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。
端碗吹水
2021/02/02
1.1K0
推荐阅读
相关推荐
【数据结构与算法】并查集
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档