精华内容
下载资源
问答
  • 一种二维装箱问题建模方法

    千次阅读 2020-08-27 15:06:18
    模型参数 参数 说明 I I I 物件的集合 W W W 箱子的宽度 H H H 箱子的高度 w i w_i wi​ 物件 i i i 的长边 h i h_i hi​ 物件 i i i 的短边 决策变量 变量 类型 说明 p i p_i pi​ 0-1 物件 i i i 是否被装箱 x i x...

    模型参数


    参数说明
    I I I物件的集合
    W W W箱子的宽度
    H H H箱子的高度
    w i w_i wi物件 i i i 的长边
    h i h_i hi物件 i i i 的短边

    决策变量


    变量类型说明
    p i p_i pi0-1物件 i i i 是否被装箱
    x i x_i xi R + 0 R^0_+ R+0物件 i i i 的左下角顶点的横坐标
    y i y_i yi R + 0 R^0_+ R+0物件 i i i 的左下角顶点的纵坐标
    m i 1 m^1_i mi10-1物件 i i i 是否为长边沿横轴的放置方式
    m i 2 m^2_i mi20-1物件 i i i 是否为长边沿纵轴的放置方式
    l i , j l_{i, j} li,j0-1物件 i i i 是否位于物件 j j j 的左侧
    b i , j b_{i, j} bi,j0-1物件 i i i 是否位于物件 j j j 的下方

    约束条件


    (1) 左下角顶点的坐标范围:
    (1a) 横坐标:
    x i ≤ W − ( m i 1 ⋅ w i + m i 2 ⋅ h i ) ∀ i ∈ I x_i \leq W - (m^1_i \cdot w_i + m^2_i \cdot h_i) \quad \forall i \in I xiW(mi1wi+mi2hi)iI

    (1b) 纵坐标:
    y i ≤ H − ( m i 1 ⋅ h i + m i 2 ⋅ w i ) ∀ i ∈ I y_i \leq H - (m^1_i \cdot h_i + m^2_i \cdot w_i) \quad \forall i \in I yiH(mi1hi+mi2wi)iI

    (2) 放置方式:
    m i 1 + m j 2 = 1 ∀ i ∈ I m^1_i + m^2_j = 1 \quad \forall i \in I mi1+mj2=1iI

    (3) 位置关系:
    l i , j + l j , i + b i , j + b j , i + ( 2 − p i − p j ) ≥ 1 ∀ i ∈ I ∀ j ∈ I i ≠ j l_{i, j} + l_{j, i} + b_{i, j} + b_{j, i} + (2 - p_i - p_j) \geq 1 \quad \forall i \in I \quad \forall j \in I \quad i \neq j li,j+lj,i+bi,j+bj,i+(2pipj)1iIjIi=j

    (4) 坐标关系:
    (4a) 横坐标:
    x i − x j + W ⋅ l i , j ≤ W − ( m i 1 ⋅ w i + m i 2 ⋅ h i ) ∀ i ∈ I ∀ j ∈ I i ≠ j x_i - x_j + W \cdot l_{i, j} \leq W - (m^1_i \cdot w_i + m^2_i \cdot h_i) \quad \forall i \in I \quad \forall j \in I \quad i \neq j xixj+Wli,jW(mi1wi+mi2hi)iIjIi=j

    (4b) 纵坐标:
    y i − y j + H ⋅ b i , j ≤ H − ( m i 1 ⋅ h i + m i 2 ⋅ w i ) ∀ i ∈ I ∀ j ∈ I i ≠ j y_i - y_j + H \cdot b_{i, j} \leq H - (m^1_i \cdot h_i + m^2_i \cdot w_i) \quad \forall i \in I \quad \forall j \in I \quad i \neq j yiyj+Hbi,jH(mi1hi+mi2wi)iIjIi=j

    (5) 有效不等式,最大装箱空间:
    ∑ i ∈ I p i ⋅ ( w i ⋅ h i ) ≤ W ⋅ H \sum_{i \in I} p_i \cdot (w_i \cdot h_i) \leq W \cdot H iIpi(wihi)WH


    目标函数


    最大化,装箱空间:
    m a x ∑ i ∈ I p i ⋅ ( w i ⋅ h i ) max \sum_{i \in I} p_i \cdot (w_i \cdot h_i) maxiIpi(wihi)

    参考文献


    Haoyuan Hu, Xiaodong Zhang, Xiaowei Yan, etc. (2017). Solving a New 3D Bin Packing Problem with Deep Reinforcement Learning Method.


    展开全文
  • 今天小编为大家介绍二维矩形装箱问题(2D rectangular packing problem, 简称2DRP)以及在此基础上拓展的二维装箱问题(2D strip packing problem,简称2DSP),以及由____数据魔术师团队____提出的解决该问题的...

    写在前面

    由于某些原因,这篇文章还没写完就作者就搞别的问题去了,写到一半很不好意思,大家可以去看原文对应的论文进一步研究:【A skyline heuristic for the 2D rectangular packing and strip packing problems】。祝大家学习顺利~

    前言

    今天为大家介绍二维矩形装箱问题(2D rectangular packing problem, 简称2DRP)以及在此基础上拓展的二维带装箱问题(2D strip packing problem,简称2DSP)
    这次介绍的算法运用了启发式算法**禁忌搜索算法(Tabu search,简称TS)**的相关知识,如果小伙伴们还没有掌握,可以在公众号内查阅以下推文:

    对了解禁忌搜索的同学而言,相信这次的算法不会很难接受。话不多说,这就开始今天的介绍吧!

    问题介绍

    装箱问题广泛存在于物流运输的车厢装载、集装箱装载、托盘装载,以及工厂企业的材料切割、成品包装、设施布局规划等场合中。在当前经济环境下,库存与物流活动越来越显示出其重要性,如何降低库存与物流成本就成为一个很重要且迫切的问题。

    本文中提到的“”二维矩形装箱装箱问题(2DRP)**,主要考虑二维情形下,所有目标项目都为矩形,目的是最大化可用面积,并允许矩形放置时正交旋转,是经典的NP-Hard问题:
    给出n个 w i ∗ h i w_i*h_i wihi的维数为矩形。目标是将没有重叠的矩形正交地放置在一个尺寸为 W ∗ H W*H WH的大矩形(称为sheet)中,使所有放置的矩形的总面积最大化。所有的维数都被认为是整数。本文介绍的算法允许矩形旋转90°,但不处理的断头可分性(guillotine-cut constraint)。

    在此基础上,另一个和2DRP密切相关的切割和包装问题是二维带包装问题(2DSP)。给定n个矩形,任务是将所有矩形放置在一个宽度为W的矩形带,目标是最小化矩形带的高度H。

    算法介绍

    描述装箱模式

    算法通过上界线(skyline)坐标点(candidate position) 的概念来描述装箱模式。
    在算法中,我们尽量将矩形放置在下方。简单来讲,上界线表示最上层矩形的上边界;坐标点代表所有上界线的左下角和右下角坐标。
    如图所示,图中最上层水平直线部分为该装箱方式的上界线,分为5段,分别记作 s 1 , s 2 , s 3 , s 4 , s 5 s_1,s_2,s_3,s_4,s_5 s1,s2,s3,s4,s5。图中实心圆点代表坐标点,共有3个左侧坐标点,3个右侧坐标点。
    在这里插入图片描述
    严谨表述为:

    用上界线表示当前的装箱模式,表示为一组水平线,满足以下性质:
    1.每条线段的y坐标与下一条线的不同;
    2.线段 s j s_j sj右端的x坐标和 s j + 1 s_{j +1} sj+1左侧末端的x坐标相同。

    s i − 1 s_{i -1} si1左端点的y坐标大于 s i s_i si左端点的y坐标,或线段 s i s_i si右端点的y坐标大于 s i + 1 s_{i+1} si+1大于右端点的y坐标时,标记 s i s_i si左端点或右端点为坐标点。
    其中 s 1 s_1 s1的左端点和 s k s_k sk的右端点一直是坐标点。

    算法按顺序一个一个放置矩形。每个矩形的位置,要么是左下角接触到线段的左端点,要么是其右下角接触到线段的右端点。每次放置矩形后,更新上界线和坐标点,用来描述新的装箱方式。
    当矩形b被放置在线段 s i s_i si上时,上界线被更新。这需要两个步骤:

    1.生成与b的上边缘对应的新线段,并更新受影响的现有线段。

    b的宽度是否大于 s i s_i si会产生两种情况,下图分别展示了两种情况的示例,以及上界线如何更新。注意,(d)中的阴影区域被认为是浪费的空间,因为我们的算法不会考虑在其中放置任何矩形。
    在这里插入图片描述

    2.检查每条线段,如果它比相邻的两个线段都低,并且没有未放置的矩形可以放置在这个线段上(对于第一个和最后一个段,我们只将它们与它们相邻的一条线段进行比较),我们将它提升到它的下相邻段的高度并合并它们。
    如图所示,阴影部分同样被认为是浪费的空间。
    在这里插入图片描述

    评估装箱策略

    这里的装箱策略指:在当前装箱模式下,具体某个矩形的放置位置。我们利用以下规则评估每个位置:

    1.spread construction。
    对放置后y坐标的差值进行约束。放置矩形后,所有线段s的y坐标最大值与最小值之差不得超过限定值max_spread。

    2.only fit。

    3.minimum local waste。

    4.maximum fitness number。

    5.earlist in sequence。

    禁忌搜索

    拓展:2DSP

    展开全文
  • 二维装箱子问题

    千次阅读 2019-04-25 08:44:18
    二维装箱子问题 题目:一个工厂生产的产品形状都是长方体,高度都是h,主要有11,22,33,44,55,66等6种。这些产品在邮寄时被包装在一个66h的长方体包裹中。由于邮费很贵,工厂希望减小每个订单的包裹数量以增加...

    二维装箱子问题

    题目一个工厂生产的产品形状都是长方体,高度都是h,主要有11,22,33,44,55,66等6种。这些产品在邮寄时被包装在一个66h的长方体包裹中。由于邮费很贵,工厂希望减小每个订单的包裹数量以增加他们的利润。因此他们需要一个好的程序帮他们解决这个问题。你的任务就是设计这个程序。

    思路先装大产品,再在箱子的空隙中装入小产品
    具体实现

    产品规模1*12*23*34*45*56*6
    产品数量x1x2x3x4x5x6
    展开全文
  • 二维矩形装箱问题

    2021-10-26 08:27:03
    二维矩形装箱问题问题描述问题分析如何放置如何决定矩形出现的顺序运行结果 问题描述 二维矩形装箱问题(2D rectangular packing problem, 简称2DRP)是一种常见的问题,常用在物流运输或材料切割场景下。 论坛里也...

    问题描述

    二维矩形装箱问题(2D rectangular packing problem, 简称2DRP)是一种常见的问题,常用在物流运输或材料切割场景下。
    论坛里也有各种分析和教学,但从实际效果看,很多运行的结果并不算很好,尤其是矩形多了以后,效果更差。故在这里整理一下思路,供大家借鉴。

    问题分析

    对于这个问题,我们应该分成两部分来看:
    1.当手里拿到一个矩形以后,该如何放置;
    2.如何决定拿到矩形的顺序;

    如何放置

    这个问题可以参考LijunWei等大神发明的SkyLine算法以及后续不断优化和改进的算法。对于算法本身可以参考《A skyline heuristic for the 2D rectangular packing and strip packing problems》等学术论文。另外也可以在这个 链接下了解这个算法的实现过程。

    如何决定矩形出现的顺序

    这个问题实现就比较简单了,常见的元启发式算法都可以试用。我自己使用的是遗传算法,得到了较好的效果,遗传算法排列了矩形出场顺序及方向。

    运行结果

    能看懂算法的前提下,代码编写不存在什么难点的。贴几个标准算例的效果。我电脑是I5 9400,只使用了CPU计算,未使用GPU计算。从结果看,这种方法还是可行的。

    25PCS矩形,满排,耗时大约5秒。
    在这里插入图片描述
    28PCS的,也很简单,满排10秒

    在这里插入图片描述

    97PCS,应该能满排的算例,但是我差一块没放进去,耗时大约1分钟。
    在这里插入图片描述

    197PCS矩形,应该能满排的,也没实现满排,运行2分钟的结果。
    在这里插入图片描述

    展开全文
  • 数学建模之选址问题

    万次阅读 多人点赞 2020-02-03 21:47:45
    1.立体选址问题:设施的高度不能被忽略,如集装箱装箱问题。 2.平面选址问题:设施的长、宽不能被忽略,如货运站的仓位布局问题。 3.线选址问题:设施的宽度不能被忽略,如在仓库两边的传送带布局问题。 4.点选址...
  • 运输问题前面线性规划文章中已经讲过经典的运输问题。这个例子只是一个补充,在考虑经济效益的基础上进行运输问题的研究。 建立模型:ai:第i个水库供水量bi:第i个小区基本用水量ci:第i个小区额外用水量dij:从第i歌...
  • 关于数学建模的三维装箱问题,要对数据预处理。题目中给出了订单和订单对应的物品的长宽高(长宽高可以相互转换)、四种型号的袋子和五种型号的箱子。问题一要给出全部使用箱装和全部使用袋装的两种最优推荐方案,...
  • 箱子的摆放策略

    2018-08-14 09:32:55
    托盘问题二维装箱、遗传算法、数学建模托盘问题二维装箱、遗传算法、数学建模
  • Algorithm:数学建模大赛(CUMCM/NPMCM)之建模历年题目类型、数据分析及官方评阅要点之详细攻略 目录 历届题目类型及其思想 1、CUMCM 1.1、CUMCM 1992~2000 1.2、CUMCM 2001~2010 1.3、CUMCM 2011~2021 1.4、...
  • 数学建模】最优化模型

    千次阅读 多人点赞 2020-07-25 21:52:36
    文章目录A 概述1 最优化模型的一般形式2 最优化模型的分类B 优化模型之运输问题1 运输问题数学模型2 一般运输问题的求解 A 概述 1 最优化模型的一般形式 最优化方法是指在一系列客观或主观限制条件下,寻求 合理...
  • 数学建模常用的十大算法

    万次阅读 多人点赞 2019-10-12 19:06:44
    1. 蒙特卡罗算法。 该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。... 建模竞赛大多数问题属于最优化问题,很多时候...
  • 数学建模之规划1——线性规划

    千次阅读 2019-08-14 16:51:26
    什么是规划 ...引例(生产规划问题):某厂利用a、b、c三种原料生产A、B、C三种产品,已知生产每种产品在消耗原料方面的各项技术条件和单位产品的利润,以及可利用的各种原料的量(具体数据如下...
  • 历年数学建模大赛优秀论文解读

    千次阅读 2020-06-05 09:32:35
    、 DNA序列分类问题(预测模型) 1、 系统聚类法 2、 欧式距离度量法 3、 Fisher判别法 https://baike.baidu.com/item/Fisher%E5%88%A4%E5%88%AB%E6%B3%95 三、 钢管订购和运输的数学模型 1、 Floyd算法 ...
  • 数学建模竞赛中应当掌握的十类算法

    千次阅读 多人点赞 2020-09-17 11:11:44
    一、十类常用算法 1. 蒙特卡罗算法。   该算法又称随机性模拟算法,是通过计算机仿真来解决问题的...  建模竞赛大多数问题属于最优化问题,很 多时候这些问题可以用数学规划算法来描述,通常使用 Lindo、Lingo 软
  • 数学建模常见模型总结 一、插值 当已有数据量不够,需要补充,且认定已有数据可信时,通常利用函数插值方法。 常用插值方法 拉格朗日插值 分段线性插值 Hermite 三次样条插值 克里金法 matlab插值实现 interp1...
  • 建模比赛已经过去三天了,但留校的十多天里,自己的收获与感受依然长存于心。下面的大致流程,很多并没有细化,下面很多情况都是在假设下进行的,比如假设飞机能够来回运送药品,运货无人机就只运货,在最大视距下...
  • 怎样建立最优化问题数学模型 决策变量和函数 约束或限制条件 目标函数 连续变量优化模型 线性规划 非线性规划 离散变量优化模型 选址问题 布点问题 指派问题 最优化问题的一般数学模型 整体最优解与局部最...
  • 建模:数学建模

    千次阅读 2019-03-07 17:33:00
    数学建模就是根据实际问题来建立数学模型,对数学模型来进行求解,然后根据结果去解决实际问题。 当需要从定量的角度分析和研究一个实际问题时,人们就要在深入调查研究、了解对象信息、作出简化假设、分析内在规律...
  • 华数杯论文原版.pdf

    2021-10-27 21:27:31
    届华数杯数学建模比赛B题 一等奖论文 三维装箱问题
  • 装箱问题 [ 问题描述 ] 有一个箱子容量为 v( 正整数, 0≤v≤20000) ,同时有 n 个物品 (0≤n≤30) ,每个物品有一个体积 ( 正整数 ) 。要求从 n 个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。 [ 样例 ]...
  • 数学建模介绍

    千次阅读 2011-03-25 08:11:00
    建模竞赛的由来, 建模竞赛的规则和方法, 建模命题,建模竞赛的评卷与评奖, 参赛队员的选择与组队,数学建模的方法和步骤,一些经验。
  • 核心思想:把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解。
  • 数学建模【转】

    千次阅读 2012-12-05 19:46:27
    一、数学模型的定义 现在数学模型还没有一个统一的准确的定义,因为站在不同的角度可以有不同的定义。不过我们可以给出如下定义:“数学模型是关于部分现实世界和为一种...一般来说数学建模过程可用如下框图来表明:
  • 但是怎么把一张图存入计算机就要涉及到数学建模的知识。比如下面一张图:如果要求出从节点v1到节点v5的所有路径,就可以借助计算机来很轻松的解决。但前提条件是,必须要把图以一种计算机可以理解的形式存进去,即要...
  • 优化建模

    千次阅读 2020-03-21 18:08:55
    1 单选(2分) 对目标函数系数作敏感性分析,目的是得到( )。 A. 最优解不变时单个目标函数... 处理成运输问题求解后,仍然需要归总销量才能得到各个月的产量 B. 能处理成运输问题的关键是有产地,销地,单位费用 C....
  • 2021年MathorCupD题思路附MATLAB代码

    千次阅读 多人点赞 2021-04-15 11:05:07
    思路 是一个二维的优化类问题,或者说背包问题、集装箱问题有些相似,但在难度上更上一层,因为题目中的原料表中有10种原料,相当于有十种背包/集装箱,且各类原料的数量不一。 代码(更新) 在这里贴可能会被和谐...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 292
精华内容 116
关键字:

二维装箱问题数学建模