CN114676640A - 基于遗传算法和maddpg算法的楼栋排布方法 - Google Patents

基于遗传算法和maddpg算法的楼栋排布方法 Download PDF

Info

Publication number
CN114676640A
CN114676640A CN202210354225.1A CN202210354225A CN114676640A CN 114676640 A CN114676640 A CN 114676640A CN 202210354225 A CN202210354225 A CN 202210354225A CN 114676640 A CN114676640 A CN 114676640A
Authority
CN
China
Prior art keywords
pos
building
buildings
individual
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210354225.1A
Other languages
English (en)
Inventor
杨帆
况易田
胡建国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Zhenshi Intelligent Technology Co Ltd
Original Assignee
Nanjing Zhenshi Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Zhenshi Intelligent Technology Co Ltd filed Critical Nanjing Zhenshi Intelligent Technology Co Ltd
Priority to CN202210354225.1A priority Critical patent/CN114676640A/zh
Publication of CN114676640A publication Critical patent/CN114676640A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/16Real estate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/08Probabilistic or stochastic CAD

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Geometry (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Tourism & Hospitality (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Primary Health Care (AREA)
  • Physiology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Genetics & Genomics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computer Graphics (AREA)
  • Human Resources & Organizations (AREA)

Abstract

本发明公开了一种基于遗传算法和MADDPG算法的楼栋排布方法,涉及计算机技术领域,解决了现有楼栋排布方案较为单一楼栋排布不够合理的技术问题,其技术方案要点是对遗传算法的初始化、适应度计算、选择、交叉、变异等过程都进行修改,以输出多个部分楼栋在可排布区域内的初始排布状态;对maddpg算法的观测向量、奖励和环境进行修改,使得maddpg算法可以控制其它未排布的楼栋在遗传算法输出的基础上进行排布,输出多样的排布方案;最终实现自动对地块内的楼栋进行排布,输出满足间距、日照的排布方案,减轻设计师的工作量。

Description

基于遗传算法和MADDPG算法的楼栋排布方法
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于遗传算法和MADDPG算法的楼栋排布方法。
背景技术
随着房地产行业的发展,对于每一个地块,设计师都需要在其中将楼栋进行排布,以满足间距、日照等各项要求。
传统的楼栋排布方式需要设计师将楼栋摆放到地块内,然后不断进行调整,这样的方式费时费力。之后虽然出现了一些基于强化学习等方式的楼栋排布方法,但是单纯使用强化学习的话,输出的排布方案比较单一,不能给设计师足够的参考。
发明内容
本申请提供了一种基于遗传算法和MADDPG算法的楼栋排布方法,其技术目的是使地块内的楼栋自动排布,且使楼栋排布满足间距和日照的条件。
本申请的上述技术目的是通过以下技术方案得以实现的:
一种基于遗传算法和MADDPG算法的楼栋排布方法,包括:
S1:获取楼栋数量n和可排布区域,并建立数学模型;
S2:根据遗传算法对n1个楼栋进行排布,生成至少一个满足间距、日照的第一排布方案并保存;其中,0<n1<n;
S3:将所述第一排布方案作为maddpg算法的初始输入,通过maddpg算法对未排布的n-n1个楼栋进行自动排布,输出第二排布方案;
S4:根据第二排布方案完成对楼栋的排布。
本申请的有益效果在于:本申请所述的基于遗传算法和MADDPG算法的楼栋排布方法,对遗传算法的初始化、适应度计算、选择、交叉、变异等过程都进行修改,以输出多个部分楼栋在可排布区域内的初始排布状态;对maddpg算法的观测向量、奖励和环境进行修改,使得maddpg算法可以控制其它未排布的楼栋在遗传算法输出的基础上进行排布,输出多样的排布方案。最终实现自动对地块内的楼栋进行排布,输出满足间距、日照的排布方案,减轻设计师的工作量。
附图说明
图1为本申请所述方法的流程图;
图2为遗传算法流程图;
图3为maddpg算法流程图;
图4为本申请具体实施例输出的楼栋排布结果示意图。
具体实施方式
下面将结合附图对本申请技术方案进行详细说明。
图1为本申请所述方法的流程图,如图1所示,本申请所述的基于遗传算法和MADDPG算法的楼栋排布方法包括:
S1:获取楼栋数量n和可排布区域,并建立数学模型。
S2:根据遗传算法对n1个楼栋进行排布,生成至少一个满足间距、日照的第一排布方案并保存;其中,0<n1<n。
S3:将所述第一排布方案作为maddpg算法的初始输入,通过maddpg算法对未排布的n-n1个楼栋进行自动排布,输出第二排布方案。
S4:根据第二排布方案完成对楼栋的排布。
具体地,遗传算法的流程如图2所示,则步骤S2包括:
S21:随机生成M个个体构成第一群体,其中,每个个体表示一个排布方案。
S22:将n1个楼栋代入到第一群体的每个排布方案中,计算每个排布方案的个体适应度。
个体适应度表示为:
F=Fa+αFd+βFs
其中,Fa表示楼栋是否在可排布区域内的适应度,当所有排布的楼栋都在可排布区域内时,Fa的值最大,每有一栋楼在可排布区域外时Fa就越小。Fd表示楼栋之间间距的适应度,Fd通过调用间距规范得到,当所有排布的楼栋互相之间都满足间距时,Fd最大,越不满足则Fd越小。Fs表示楼栋日照的适应度,通过调用日照函数得到,当所有排布的楼栋都满足日照时,Fs最大,越不满足日照则Fs越小。α表示Fs的权重;β表示Fs的权重。
S23:当第一群体中排布方案的个体适应度达到最大时,则保存该排布方案作为第一排布方案,并将所述第一排布方案从第一群体中删除;
当保存的第一排布方案数量达到N时,遗传算法结束,N<M;
当第一群体中排布方案的个体适应度不是最大时,执行步骤S24-S26。
S24:根据个体适应度得到每个个体被选择的概率,个体适应度越高则个体被选择的概率越大,根据概率在所述第一群体中进行重复抽取,得到M个个体构成的第二群体,则第二群体中包括重复的个体。
S25:对第二群体中的所有个体进行遍历,并给每个个体生成一个0到1之间的随机数,若第一个体的随机数小于预设交叉率Pc,则在第二群体的其余个体中随机选择一个第二个体,将第一个体中的n2个楼栋移动到第二个体的对应位置上,得到第三群体。
S26:对第三群体中的所有个体进行遍历,并给每个个体生成一个0到1之间的随机数,若第三个体的随机数小于变异率Pm,则对第三个体中的楼栋进行随机移动,得到新的第一群体,然后重复执行步骤S22至步骤S26。
maddpg算法包括演员-评论家架构,演员-评论家架构包括演员网络和评论家网络,演员网络和评论家网络的数量都为n-n1,每个演员网络和每个评论家网络对应一个未被排布的楼栋i,i=0,1,...,n-n1-1。演员网络和评论家网络都包括3层全连接层,且隐藏单元数都为64。演员-评论家架构采用了集中式训练、分散式执行的方式,引入可以观察全局的评论家来指导演员训练。
maddpg算法在遗传算法的结果上进行训练是指:将遗传算法已经在可排布区域内排布好的方案作为maddpg算法初始的环境,进行训练,maddpg算法将会对剩余没有排布的楼栋自动进行排布,输出整体满足间距、日照的楼栋排布方案。将经遗传算法排布好的楼栋作为maddpg算法的地标,地标的数量为n1,且地标的位置始终保持不变。
maddpg算法的流程图如图3所示,π12,...,πn-n1是每个智能体的演员网络,a是每个智能体的观测向量O输入到演员网络后得到的动作,Q1,Q2,...,Qn-n1是每个智能体的评论家网络。本申请中,楼栋即表示智能体。智能体的动作a是每个智能体在坐标系内x方向和y方向的加速度,通过加速度便可以控制智能体的速度,进而控制智能体在坐标系内的位置。
每个演员网络的输入为楼栋i的观测向量Oi,输出为ai,则Oi=(pvel_i,ppos_i,lr_i,epos_i,mpos_i),i=0,1,...,n-n1-1;每个评论家网络的输入为全部演员网络的输入和输出集合(Oi,ai)。
其中,pvel_i表示楼栋i在坐标系内x方向和y方向的速度;ppos_i表示楼栋i在坐标系内的位置;lr_i表示楼栋i是否在可排布区域内的标识位,在的话为lr_i1,不在的话为lr_i-1;epos_i表示楼栋i与其他楼栋之间的相对位置,即epos_i=(ppos_i-ppos_0,ppos_i-ppos_1,...,ppos_i-ppos_n-n1-1);mpos_i表示楼栋i与已经排布好的地标之间的相对位置,即mpos_i=(ppos_i-lpos_0,ppos_i-lpos_1,...,ppos_i-lpos_m,...,ppos_i-lpos_n1-1),lpos_m表示第m个地标在坐标系内的位置,m=0,1,2,...,n1-1。
楼栋i的奖励函数表示为:r1=-2-n1;r2=1;r3=(fe-n)/n。其中,r1表示当前楼栋i不在可排布区域内时的奖励,n1表示地标的数量;r2表示当前楼栋i同时满足了楼栋间距、日照时的奖励;r3表示当前楼栋i在可排布区域内,但是不满足间距或日照时的奖励;fe表示当前楼栋i满足间距、日照的程度,fe通过调用间距规范和日照函数得到,fe越大表示越满足,最大为n,n表示整个地块内所有楼栋的数量。
在maddpg算法训练过程中,每次重置环境,智能体从可排布区域中心初始化,从遗传算法保存的排布结果中随机选择一个排布方式作为重置的初始环境,maddpg算法控制其他未排布的楼栋在新的环境中排布。通过不断训练,在训练过程中就可以输出多种不同的楼栋排布方式。在训练完成后,也可通过测试输出楼栋排布结果,图4即为本申请具体实施例输出的楼栋排布结果示意图。maddpg算法的损失函数、其它超参数与官方保持一致。
以上为本申请示范性实施例,本申请的保护范围由权利要求书及其等效物限定。

Claims (6)

1.一种基于遗传算法和MADDPG算法的楼栋排布方法,其特征在于,包括:
S1:获取楼栋数量n和可排布区域,并建立数学模型;
S2:根据遗传算法对n1个楼栋进行排布,生成至少一个满足间距、日照的第一排布方案并保存;其中,0<n1<n;
S3:将所述第一排布方案作为maddpg算法的初始输入,通过maddpg算法对未排布的n-n1个楼栋进行自动排布,输出第二排布方案;
S4:根据第二排布方案完成对楼栋的排布。
2.如权利要求1所述的楼栋排布方法,其特征在于,所述步骤S2包括:
S21:随机生成M个个体构成第一群体,其中,每个个体表示一个排布方案;
S22:将n1个楼栋代入到第一群体的每个排布方案中,计算每个排布方案的个体适应度;
S23:当第一群体中排布方案的个体适应度达到最大时,则保存该排布方案作为第一排布方案,并将所述第一排布方案从第一群体中删除;
当保存的第一排布方案数量达到N时,遗传算法结束,N<M;
当第一群体中排布方案的个体适应度不是最大时,执行步骤S24-S26;
S24:根据个体适应度得到每个个体被选择的概率,个体适应度越高则个体被选择的概率越大,根据概率在所述第一群体中进行重复抽取,得到M个个体构成的第二群体,则第二群体中包括重复的个体;
S25:对第二群体中的所有个体进行遍历,并给每个个体生成一个0到1之间的随机数,若第一个体的随机数小于预设交叉率Pc,则在第二群体的其余个体中随机选择一个第二个体,将第一个体中的n2个楼栋移动到第二个体的对应位置上,得到第三群体;
S26:对第三群体中的所有个体进行遍历,并给每个个体生成一个0到1之间的随机数,若第三个体的随机数小于变异率Pm,则对第三个体中的楼栋进行随机移动,得到新的第一群体,然后重复执行步骤S22至步骤S26。
3.如权利要求2所述的楼栋排布方法,其特征在于,所述个体适应度表示为:
F=Fa+αFd+βFs
其中,Fa表示楼栋是否在可排布区域内的适应度,当所有排布的楼栋都在可排布区域内时,Fa的值最大;Fd表示楼栋之间间距的适应度,当所有排布的楼栋互相之间都满足间距时,Fd最大;Fs表示楼栋日照的适应度,当所有排布的楼栋都满足日照时,Fs最大;α表示Fs的权重;β表示Fs的权重。
4.如权利要求3所述的楼栋排布方法,其特征在于,所述步骤S3包括:
所述maddpg算法包括演员-评论家架构,所述演员-评论家架构包括演员网络和评论家网络,所述演员网络和所述评论家网络的数量都为n-n1,每个所述演员网络和每个所述评论家网络对应一个未被排布的楼栋i,i=0,1,...,n-n1-1;
将经遗传算法排布好的楼栋作为maddpg算法的地标,地标的数量为n1,且地标的位置始终保持不变;
每个所述演员网络的输入为楼栋i的观测向量Oi,输出为ai,则Oi=(pvel_i,ppos_i,lr_i,epos_i,mpos_i),i=0,1,...,n-n1-1;每个所述评论家网络的输入为全部演员网络的输入和输出集合(Oi,ai);
其中,pvel_i表示楼栋i在坐标系内x方向和y方向的速度;ppos_i表示楼栋i在坐标系内的位置;lr_i表示楼栋i是否在可排布区域内的标识位,在的话为lr_i1,不在的话为lr_i-1;epos_i表示楼栋i与其他楼栋之间的相对位置,即epos_i=(ppos_i-ppos_0,ppos_i-ppos_1,...,ppos_i-ppos_n-n1-1);mpos_i表示楼栋i与已经排布好的地标之间的相对位置,即mpos_i=(ppos_i-lpos_0,ppos_i-lpos_1,...,ppos_i-lpos_m,...,ppos_i-lpos_n1-1),lpos_m表示第m个地标在坐标系内的位置,m=0,1,2,...,n1-1。
5.如权利要求4所述的楼栋排布方法,其特征在于,楼栋i的奖励函数表示为:
r1=-2-n1;r2=1;r3=(fe-n)/n
其中,r1表示当前楼栋i不在可排布区域内时的奖励,n1表示地标的数量;r2表示当前楼栋i同时满足了楼栋间距、日照时的奖励;r3表示当前楼栋i在可排布区域内,但是不满足间距或日照时的奖励;fe表示当前楼栋i满足间距、日照的程度,fe越大表示越满足,最大为n,n表示整个地块内所有楼栋的数量。
6.如权利要求5所述的楼栋排布方法,其特征在于,所述演员网络和所述评论家网络都包括3层全连接层,且隐藏单元数都为64。
CN202210354225.1A 2022-04-06 2022-04-06 基于遗传算法和maddpg算法的楼栋排布方法 Pending CN114676640A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210354225.1A CN114676640A (zh) 2022-04-06 2022-04-06 基于遗传算法和maddpg算法的楼栋排布方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210354225.1A CN114676640A (zh) 2022-04-06 2022-04-06 基于遗传算法和maddpg算法的楼栋排布方法

Publications (1)

Publication Number Publication Date
CN114676640A true CN114676640A (zh) 2022-06-28

Family

ID=82078472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210354225.1A Pending CN114676640A (zh) 2022-04-06 2022-04-06 基于遗传算法和maddpg算法的楼栋排布方法

Country Status (1)

Country Link
CN (1) CN114676640A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117828705A (zh) * 2024-01-11 2024-04-05 北京建筑大学 基于遗传算法搜索的住宅布局生成设计方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117828705A (zh) * 2024-01-11 2024-04-05 北京建筑大学 基于遗传算法搜索的住宅布局生成设计方法和系统

Similar Documents

Publication Publication Date Title
Song et al. New chaotic PSO-based neural network predictive control for nonlinear process
CN111273664B (zh) 一种空间桁架结构在轨装配的多机器人路径协同规划方法
CN111090899B (zh) 一种用于城市建筑空间布局设计方法
CN113159432A (zh) 一种基于深度强化学习的多智能体路径规划方法
CN107330560A (zh) 一种考虑时序约束的异构飞行器多任务协同分配方法
CN111917642B (zh) 分布式深度强化学习的sdn网络智慧路由数据传输方法
CN115454005B (zh) 一种面向有限运输资源场景的制造车间动态智能调度方法及装置
CN113534660A (zh) 基于强化学习算法的多智能体系统协同控制方法及系统
CN112836974A (zh) 一种基于dqn和mcts的箱区间多场桥动态调度方法
CN114676640A (zh) 基于遗传算法和maddpg算法的楼栋排布方法
CN117369378A (zh) 基于蒙特卡洛树搜索算法的混流制造车间调度方法及系统
CN111080035A (zh) 基于改进量子粒子群优化算法的全局路径规划方法
Zwecher et al. Integrating deep reinforcement and supervised learning to expedite indoor mapping
Ou et al. Hybrid path planning based on adaptive visibility graph initialization and edge computing for mobile robots
Shirakawa et al. Multi-objective optimization system for plant layout design (3rd report, Interactive multi-objective optimization technique for pipe routing design)
Liu et al. Improved gray wolf optimization algorithm integrating A* algorithm for path planning of mobile charging robots
CN116817909A (zh) 一种基于深度强化学习的无人机中继式导航方法
Sun et al. An SOM-based algorithm with locking mechanism for task assignment
CN110598835B (zh) 基于高斯变异遗传算法优化神经网络的小车自动寻路方法
Lin et al. A recurrent neural fuzzy controller based on self‐organizing improved particle swarm optimization for a magnetic levitation system
CN112270435B (zh) 一种基于深度强化学习的多星自主任务分配方法
CN113139695A (zh) 海上热采与增产期甲板分配方法、计算机装置及存储介质
CN112861332A (zh) 一种基于图网络的集群动力学预测方法
Wang et al. Welding robot path optimization based on hybrid discrete PSO
Zhang et al. Robot path planning based on shuffled frog leaping algorithm combined with genetic algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination