当前位置: 首页 > 知识库问答 >
问题:

线段集的最小面积几何覆盖

冀弘厚
2023-03-14

我试图解决的问题是:

给定平面上可以以圆为中心的M个点的集合和N个需要被圆覆盖的线段的集合,求线段的最小面积圆覆盖。也就是说,求圆和中心(从M个点中选择)的半径,使得所有N条线段都被覆盖,圆的总面积最小化。

任何指向论文、代码或近似算法的指针都会很棒。

共有1个答案

谯灿
2023-03-14

编辑:刚刚意识到原来的方法(移到最后)可能没有覆盖一条线段最好被多个圆很好地覆盖的情况。所以我 ;认为最好迭代点,而不是线段,在圆边界处向下切割线段:

  1. 找到“最差”点,即其最佳圆中心选项与相应线段至少部分在圆内需要最大附加圆面积的点。构造/扩展相应的圆。
  2. 从集合中删除完全覆盖的线段,并在圆边界处切割部分覆盖的线段。
  3. 循环直到不再保留线段。

主要思想是在任何情况下都要做必要的事情。重叠的圆圈是如何计算的? 在后面的迭代中回到第一步时,某种成本启发式可能会改善结果。

  1. 找到“最差”线段,即任何圆心选项需要最大圆的线段,并构造相应的圆。
  2. 从集合中删除覆盖的线段。
  3. 循环直到不再保留线段。
 类似资料:
  • 我正在做一个与计算几何有关的个人项目。标题中的问题是对一个小子问题的抽象,我正在努力,但正在努力有效地解决。希望它足够普遍,也许不仅仅是我! 想象一下,我们在平面中有一组S矩形,所有这些矩形的边都平行于坐标轴(没有旋转)。对于我的问题,我们假设矩形交集非常普遍。但它们也非常好:如果两个矩形相交,我们可以假设其中一个总是完全包含另一个。因此,没有“部分”重叠。 我想以以下方式存储这些矩形: 我们可以

  • 在一次采访中被问到。我们在二维平面上得到N个点x[0],y[0]...... x[n-1],y[n-1]和一个整数K。 我们需要找到最小面积平方,整数坐标为顶点,边平行于坐标轴。包围至少K个给定的N个点,没有点躺在正方形的边界上,即所有K个点都应该严格在正方形内。 我想到了经典的最小封闭矩形问题,但无法推导出至少K个点的情况。如何处理这个问题?提前谢谢。

  • 用起点和终点表示的几何线段。 构造器(Constructor) Line3( start : Vector3, end : Vector3 ) start - 线段的起始点。默认值为 (0, 0, 0)。 end - 线段的终点。默认值为 (0, 0, 0)。 创建一个三维几何线段 Line3。 属性(Properties) .start : Vector3 Vector3 表示线段的起点。 .e

  • Aurora System(60min,OC) 基础 & 引用数据类型 {} === {} NaN === NaN 圣杯布局 多种解法 防抖/节流 手写 生命周期 Vue/React 源码 千分位转化 思路 正则 or 其他 排序(我让面试官和我说) 数组几十种方法 增删改查 参数/返回值/区别/注意事项/底层原理/手写 树状数组转化(压轴,GitHub 有写) React & Vue 区别 反问

  • 我想使用OptaPlanner来安排最好在地图上表示为区域的任务。基本上,我在地图上有固定数量的正方形和多个具有不同优先级的圆圈,我需要优化正方形的位置以与圆圈相交,以优化由正方形相交的圆圈的优先级分数。 我的问题是决定哪些对象应该是规划实体,哪些应该是问题事实。OptaPlanner留档在这里声明 在多对一关系中,规划实体类通常是多边形。引用另一方的属性是规划变量。例如在员工名册中:规划实体类是