三维装箱问题的模型与改进遗传算法
关于三维装箱算法问题, 一些算法理论, 感觉对这方面的应用有一定帮助144效学的实践与认识40着∑(B,*v)≤VB,B,PD,PWy=0或者1v∈{1,2,…,D},y∈{1,2,…,W},z∈{1,2,…,H},j∈{1,2,…,n}(12目标函数是箱子未装填物品的空间最少(亦即空间浪费最少)条件(2)确保子的1个装填空间单元被装填不超过1次即保证物品间不会互相嵌入;(3)式说明上层物品会有支撑,不会悬空(4),(5),(6)式说明物品装箱位置约束;(7),(8},(9)说明物品的摆放问;(11)是箱子的容积约束2這传算法21遗俊法遗传算法(GAs)是建立在达尔文进化论基础上的搜索算法,它从代表问题潜在解的个种群( population)开始,而一个种群则由经过基因(gene)编码 coding)的一定数目的个体individual)组成遗传算法采用了自然进化模型,如选择,交叉变异等计算开始时,一定数目S个个体(父个体1、父个体2……)即种群随机地初始化,并计算每个个体的适应度函数第一代也即初始代产生如果不满足优化准则,开始产生新一代的计算为了产生新一代按照适应度选择个体,父代通过基因重组(交叉)而产生子代所有的子代按一定的概率变异然后重新计算子代的适应度,将子代插入到种群中取代父代构成新的一代循环执行这一过程,直到满足优化准则22算法设计2.21编码方法采用矩阵编码方法,用多维数组(二维矩阵表示染色体结构,数组元素表示染色体基因,编码清晰,易于理解,遗传算子操作方便染色体S=(L,P,Px,Py,T)来表示问题的一个解其中:向量L=(Li,L1,…,Ln)为待装箱物品的一个排列;向量P=(Bn,B1,…,B3n)为对应于排列L的B,一个排列向量Px=(PB,PB,…,PB)为对应于排列L的PB一个排列向量Py=(PB,PB},…,PB为对应于排列L的PBx一个排列矩阵T=(x2=欢面为对应于排列L的装箱物品坐标22适值函数问题的目标是最小化箱子的浪费空间,适应度函数可定义为空间利用率函数(S代表染色体C1994-2010ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net2期陈德良,等:三维装箱问题的模型与改进遗传算法Fitness(s)(∑B3*v/若∑(B;*v)≤V否则23解的不可行性,罚函数与评估函数由于对染色体作遗传运算时可能获得不可行的子代,惩罚技术是用遗传算法解约束优化问题中最常用的技术,本质上它是通过惩罚不可行解将约束优化问题转化为无约爽问题就本文讨论的问题而言,惩罚项包括:1)物品在装箱时不交叠,即满足约束条件{2},有着∑By≤1g:(S)1,否则2)物品装箱时不能出现悬空即满足约束条件(3),有0若∑B-B+)>0g2(S)=(151,否则3)物品装箱不能超出箱子边界,即满足约束条件(4,(5)和(6),有0若吃+B(Pp++Pwy*吗)≤D1,否则0若+B*(PD*+PWy*m)≤W941,否则(17)95(S)=0,若x+B*h;≤H8)1,否则eat(s=∑9(S)b=1那么,式(14)至(18)任何一个取值为1,都是不可行评估函数eval(S)=Fitness(S)*(5-Genalty (S)24算法步骤)初始化进化代数计数器,随机产生一定数目(大于设定的初始种群规模)的染色体;2)利用式(14)检验初始种群染色体可行性,对不可行解旋转赌轮接受小部分不可行解,与可行解构成初始种群3)对初始种群染色体进行遗传运算;①按照式(14)至(20)计算评估函数:⑩按顺序交叉方法产生子代;④变异算子;4)旋转赌轮选择染色体;)重复3至4)直到完成给定的循环次数;C1994-2010ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net数学的实践与认识40卷6)确定最好的染色体作为最优解3实验结果我们用C++编程实现了上述算法在配置为CPU24GH/512 Mb ram的微机上,用随机产生的数据进行实验取遗传算法运行参数为:{群体大小进化代数,交叉概率,变异概率}-{100,50,0.85,0.05}用随机产生的数据进行实验,求解20个种类100件物品的装箱问题,得到最好解耗时小于1秒;计算50个种类200件物品的装箱问题,得到最好解耗时小于2秒以下是3类共16件物品的装箱问题.实验数据图2,第!行为箱子尺『;第2至第4行为待装箱物品,每行第1个数据表小序号第2至镌4数据分别为物品尺寸,第5个数据表示物品件数在计算转桌中包含数据依次是:序号,是否装载,物品长,物品宽,物品高,纵向坐标横向坐标,垂向坐标纵向长度,横向长度,垂向长度(图4).从图4可知第12号物品未能装箱,物品装箱的顺序可以从“序号列中得出.绘制的物品装箱示意图见图31421,2,乙2,2,图2实验数据图3装箱示意图文件((格式(Q帮助新 s REPORT耗时:.1 most g sec次数:01615积:7580001016每a0库:92.875989名寸:=280;y=1210;2=300NO: P st Din 1 Din 2 in 3 C xC YPu y Pu 2202002002002001002812B20020012010010020012鲁2020012010020020020020012B100100212021201215024015824815015561111111111115152每000ao00015150240202020055020200201002001215502D0200120100100201205s012020028012015024075000015024815015024075015015024a152002009o002002001002012090020012日未装相物品121501502年图1计算结果o1994-2010ChinaAcademicJournalElectronicPublishingHousealLrightsreservedhttp://www.cnki.net2期陈德良,等:三维装箱问题的模型与改进遗传算法1474结束语装箱问题是一常见而难解的优化问题,利用遗传算法求解时,随机产生的初始解会出现大量的不可行解(装箱物品占用空间出现大量交叠),本文将箱子内部空间划分为一个个立方体单元:算法的第2)步对标准遗传算法做了修改通过剔除大量不可行解提高算法的收敛速度,实验结果表明此算法运算过程及绪果稳定,具有较强的实际应用价值能有效解决复杂的三维装箱何题,今后将继续研究将该方法运用到其它不同的有关装箱问题或组合优化问题中参考文献[1] John J, et al. An improved algctithra for the ncn-guillctine-constraincd cutting-stock problem(JIOperational Resee ch Society, 19 /0,+1: 141-149[2] Coffmau E. G, et al. ver age-case analysis of cutting and packing in two dimensions [J]. Euro. Jof Operatic al Reseaich, 1990, 44: 134-14413) Fabien C, et al. A Two-phase heuristic for the two-dinensional cutting-stock problem [J. Opera-tional Research Society, 1991, 42: 39-744 Martello Silvano, Pisinger, David, and Vigo, Daniele. The Three-Dimensional Bin Packing ProblemJ. Operations Research, 2000 Informs. Vol. 48: 256-267]何大勇,査建中,姜义东遗传算法求解复杂集装箱装载问题方法研究向]软件学报,201,12(9):13801385阿]张德富魏丽军陈青山陈火旺等.三维装箱问题的组合启发式算法软件学报,2007,18(9):20832089A Mixed Integer Programming Model ofThree-Dimensional Bin-Packing Problem and ImprovedGenetic AlgorithmsCHEN De-liang, 2, CHEN Zhi-yaSchool of Traffc &z transportation Engineering, Central South University, Changsha 41076, China)(2. Logistics School, Central South University of Forestry Technology, Changsha 410004, ChinaAbstracts The three-dimensional bin-packing problem is complicated but a high level ofinterest in developing effective way to solve this kinds of NP-hard problem. First a MixedInteger Programming model was worked out in this paper, which resorted to dividing box spaceinto unit cube. Then an improved genetic algorithm was mainly developed. Tests on hundredsof problems show that this algorithm makes the most of volume utilization in minimal timeKeywords: three-dimensional bin-packing problem; space division; mixed integer program-ming model; improved genetic algorithmso01994-2010ChinaAcademicJournalElectronicPublishinghOuse.Allrightsreservedhttp://www.cnki.net
- 2020-12-05下载
- 积分:1
基于PIC单片机的风光互补路灯照明控制器
基于PIC单片机的风光互补路灯照明控制器薛林,等基于PC单片机的风光互补路灯照明控制器成对蓄电池的充电。当光照较弱时,由于此时光DC-DC电路、实时时钟电路、充放电保护电路、伏板先将电能储存在电容,当电容的电压达到最路灯开关电路等组成;从控制器由液晶显示以及大功率点时再将电能转到蓄电池上,即只要光伏键盘组成(图3)。两个单片机之间通过RS232板产生电能,无论其电流多小都可以对蓄电池进DB9接口进行异步串行通信,即通过从控制器的行充电,最大限度地提取光伏板中的电流,充分键盘设置相关系统信息(主要包括日期设置、时利用光伏板。间设置、平均开灯时间设置、平均关灯时间设置3硬件电路时差设置、节能管理时数设置、蓄电池过充电压本文设计了一种新型的路灯控制器,其微处设置、蓄电池过放电压设置),然后传给主控制理器芯片均采用的是PC16F877。控制器包含主器。同时,在两个控制器相连时,主控制器的时间控制器和从控制器两个部分:主控制器主要由信息在从控制器的液晶上显示。NL ELtasRM4IAAnAAARWNF-I7 noa图3时钟及PWM产生电路Fig 3 Clock and the PWM generation circuit主控制器能够实现对蓄电池的充放电管理,DS12C887能够自动产生世纪、年、月、日、时、防止过充、过放。它有两路脉宽调制器(PWM)通分、秒等时间信息。DS12C887中自带有锂电道和8路可编程AD转换器通道,通过AD输池,外部掉电时,其内部时间信息还能够保持入口实现对蓄电池的采样测量,实现蓄电池的过10a。对于一天内的时间记录,有12h制和充、过放保护以及路灯光控开关。充电开关电路24h制两种模式,在12h制模式中,用AM和由两根控制线(光伏充电电路的PWM信号和风PM区分上午和下午。时间的表示方法有两机的PWM信号)与微处理器的PWM端口相连种:一种用二进制数表示,一种是用BCD码表接,实现PwM控制脉冲充电,能够极大地提高示。DS12C887中带有128字节RAM,其中有系统充电效率。放电开关电路也由两根控制线与11字节RAM用来存储时间信息,4个字节微处理器相连,控制开关动作,它能够实现光源RAM用来存储DS12C887的控制信息(称为控的开关和功耗调节。本控制器采用的节能管理方制寄存器),113字节通用RAM便于用户使式是在一个灯杆上安装两个灯,从天黑时到晚上用。另外,用户还可对DS12C887进行编程以节能管理时间之前两盏灯同时点亮,系统全功率实现多种方波输出,并可对其内部的3路中运行;到节能管理时数之后关掉其中一盏灯,系断,通过软件进行屏蔽。统半功率输出;为了延长路灯的使用寿命,采用基于时钟芯片Ds12C887,本文所设计的控两盏灯循环利用方式,即日期为偶数,在节能管制器是采用时空方式进行开关灯控制的,一年四理时间关掉A灯,日期为奇数,在节能管理时间季的开关灯时间变化如图4所示。可以通过在从关掉B灯。控制器上对当地的平均开关灯时间(即春分和秋本控制器采用的时钟芯片是 DALLAS公分时的开关灯时间)和时差进行设置,利用软件司生产的实时日历时钟芯片DS12C887,计算出当天的开关灯时间。可耳能骠2011,29(1)外,用户通过键盘对系统信息进行修改后,由从开灯时间控制器发送给主控制器进行处理。5结语本文介绍了一种用于风光互补路灯照明系关灯时间统的新型智能控制器。控制器由主控制器和从控制器组成,微处理器均采用PC16F877芯片。主控制器主要由DC-DC电路、实时时钟电路、充放春分夏至秋分冬至电保护电路、路灯开关电路等组成,从控制器由节气液晶显示以及键盘组成。两个单片机之间通过图4开关灯时间变化图RS232DB9接口进行异步串行通信,即通过从控Fig4 Turnon and turn off time variation制器的键盘设置相关的系统信息(主要包括:日从控制器主要由液晶显示和键盘组成。显示期设置时间设置、平均开灯时间设置、平均关灯部分是人机对话的窗口,具有重要作用。根据用时间设置时差设置、节能管理时数设置蓄电池户需求,控制器要实现的显示功能有日期设置、过充电压设置、蓄电池过放电压设置),然后传给时间设置、平均开灯时间设置、平均关灯时间设主控制器。同时,在两个控制器相连时,将主控制置、时差设置、节能管理时数设置、蓄电池过充电器的时间信息在从控制器的液晶上显示。试验和压设置、蓄电池过放电压设置。从控制器使用运行结果表明,应用此智能控制器的照明系统,LCD12864-12液晶显示模块,这种字符型液晶模具有效率高、稳定性好的优点,并能长期自动运块是一种带汉字库的液晶显示模块,可以进行4行在免维护状态下,具有广阔的应用前景。行字符显示。模块允许单片机随时访问显示参考文献RAM并可进行位操作。用户通过键盘模块对充昊理博,赵争鸣刘建政用于太阳能照明系统的智放电各种参数进行设置,本控制器采用中断的方能控制器[J清华大学学报(自然科学版),2003,43式进行按键处理。由于PIC单片机的 PORTB各(9):1195-1198端口具有弱上拉功能,只要通过软件设置相应的[2]谢小英,阴文平黄成德,阀控式铅酸电池的研究现控制位即可。并且 PORTB端口的高四位,即状与展望[电池,2009,39(1):47-48RB4~RB7引脚的电平发生变化时会产生中断。 KirCHEV A, DELAILLE A, KAROUI F,etat, Studies用电平变化产生中断的方式可以大大提高效率。of the pulse charge of lead-acid batteries for PV applications (I), Factors influencing the mechanism of the4软件设计pulse charge of the positive plate[J]. J Power Sources,主控制器和从控制器之间会实时地进行通2008,177(1):217-225信,主控制器通过异步通信方式把从时钟芯片凹张月滨,王星博,任永乐,等,延长铅酸电池寿命保护DS12C877读取的时钟信息传送到从控制器,从装置的设计门电池,2007,37(3):226-228控制器将其在液晶模块12864上进行显示。另DOI】CNKI:21-1469/TK201101261721006一++十“+“m+m“+“太阳能产业将成新兴能源支柱产业太阳能是目前最具发展前景的新能源。近几年我国全国能源工作会议上表示,下一步将加强太阳能行业规t太阳能产业发展势头迅猛,2010年全国光伏发电装机规划和准入管理,引导产业健康发展,把它培养成为我国模约达到60万kW。但光伏行业也承受着产能过剩、高先进的装备制造产业和新兴能源支柱产业。在具体落实牦能、高污染的质疑。上,要继续推广利用太阳能热水器,加大对太阳能发电经过多年发展,我国已形成了比较完整的太阳能光技术研发的支持。建设国家级太阳能研发试验中心,增伏产业链,对国内太阳能光伏发电市场的评价是:启动加财政和企业的研发投入。要在太阳能资源丰富、具有有序,起步良好。当前的主要问题是太阳能光伏发电转荒漠和荒芜土地资源的地区,建设一批大型并网光伏示化效率较低,发电成本较高。范电站。在内蒙古、甘肃、青海、新疆、西藏的适宜地区,国家发展改革委副主任、国家能源局局长张国宝在开展太阳能热发电试点〈来源中国经济网〉·110
- 2020-11-02下载
- 积分:1