Bin-Packing装箱问题

一、问题简介

        Bin-Packing问题可以描述为:给定一组大小不同的物品和一个容量有限的背包,如何将物品放入背包,使得背包内物品的总价值最大,且不超过背包容量。这里的物品大小和背包容量均为整数。

        Bin-Packing算法的目标是:将n个物品放入最少数量的背包中,使得每个背包的容量不超过给定值。

        Bin-Packing算法是一种组合优化问题,旨在将一组物品(具有不同的大小)放入有限数量的容器(或“箱子”)中,使得使用的容器数量最小化。该问题属于NP-hard问题,意味着没有已知的多项式时间算法可以解决所有实例。

二、问题分类

装箱问题可分为一维装箱问题,二维装箱问题,三维装箱问题三种:

        (1)一维装箱问题只考虑一个因素,比如重量、体积、长度等。

        (2)二维装箱问题考虑两个因素--给定一张矩形的纸(布料、皮革),要求从这张纸上剪出给定的大小不一的形状,求一种剪法使得剪出的废料的面积总和最小。常见问题包括堆场中考虑长和宽进行各功能区域划分、停车场区位划分、包装材料裁切时考虑怎样裁切使得材料浪费最少、服装布料裁切、皮鞋制作中的皮革裁切等。

        (3)三维装箱问题考虑三个因素--一般指长、宽、高。装车、装船、装集装箱等要考虑这三个维度都不能超。

•  一维装箱问题建模

给定一个物品的集合A = {a1,a2,...,an}和容量为s的箱子若干,物品ai的 大小为wi,i = 1,2,...,n,要求在箱子的容量范围内,把A中的物品装入到箱子中, 目标是最小化所使用箱子的数量。 
由于任意一个物品的大小都不超过箱子的容量,所以最优解的箱子数不会超 过物品的数量n,可以定义箱子的集合为B = {b1,b2,...,bn}。根据装箱问题的定义, 通过引入0-1 决策变量yj和xij,定义yj = 1表示箱子bj被使用,否则,yj = 0;定 义xij &

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值