CN109102203A - 一种基于多串染色体遗传算法的目标分配优化方法 - Google Patents
一种基于多串染色体遗传算法的目标分配优化方法 Download PDFInfo
- Publication number
- CN109102203A CN109102203A CN201810994621.4A CN201810994621A CN109102203A CN 109102203 A CN109102203 A CN 109102203A CN 201810994621 A CN201810994621 A CN 201810994621A CN 109102203 A CN109102203 A CN 109102203A
- Authority
- CN
- China
- Prior art keywords
- string
- chromosome
- matrix
- operator
- task object
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/123—DNA computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Entrepreneurship & Innovation (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Genetics & Genomics (AREA)
- Strategic Management (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Physiology (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开一种基于多串染色体遗传算法的目标分配优化方法,步骤为:1、提出一种多串染色体的染色体编码方式,一个多串染色体代替传统的单染色体代表遗传算法的一个个体。2、遗传算子。3、初代生成:初代生成的目的是填满ND个多串染色体矩阵,ND为种群规模。4、交叉算子:使用染色体串交叉方法。5、变异算子:变异操作依次在每个染色体串中进行。6、适应度函数。7、选择算子:使用轮盘赌选择方法和精英保留策略。本发明实现了一个资源平台匹配多个任务并固定任务目标数的操作;可应用于传统的一个资源平台匹配一个任务目标,区别于普通遗传算法是可以保持这中规则不被破坏,其优点为更加灵活;0‑1的编码方式,增加了计算效率。
Description
技术领域
本发明涉及一种基于多串染色体遗传算法的目标分配优化方法,它可以在目标分配时灵活的控制每个目标所分配得的资源数量,属于智能算法模块及资源调度领域。
背景技术
在复杂任务的规划方案生成时,往往涉及目标分配。目标分配是指对于各种资源进行合理有效地调节和测量及分析和使用,一般表现为将现有的资源平台匹配到所需执行的任务或目标上。而随着技术的发展,要求各种目标分配都需要快速、自动、准确地进行,所以对于目标分配优化方法的研究是很有必要的,具有良好的发展前景和实际应用价值。
目标分配问题往往具有多优化指标和多种分配方式,故往往在解决该问题时使用遗传算法进行优化。在传统的遗传算法的优化过程中,一般使用序列编码、单染色体编码方式,即在把资源平台匹配给任务目标时,把染色体上每一个位置当做一个资源平台,该位置的基因代表把该资源平台匹配给任务目标的编号。即基因位点5上的编码为3,代表把5号资源平台匹配给3号任务目标。这种编码方式虽然比较简洁,但是,这种编码方式下,一个基因位点只能存储一个编码,也就意味着一个资源平台只能匹配给一个任务目标,在多样复杂的任务分配时有很大的局限性。例如,当某大型资源平台参与分配,在这种编码方式下只能进行一个任务,这无疑是不合理的。同时,此种编码方式还存在计算效率低,在进行矩阵运算时需要额外的寻址操作的问题。所以,一种新的编码方式亟待提出。
发明内容
本发明的目的在于针对传统的目标分配遗传算法的编码方式进行改进,提出了一种基于多串染色体遗传算法的目标分配优化方法。
一种基于多串染色体遗传算法的目标分配优化方法,具体步骤为:
S1、提出一种多串染色体的染色体编码方式,一个多串染色体代替传统的单染色体代表遗传算法的一个个体。多串染色体可以看做是一个m行n列的矩阵, m代表任务目标数,n代表资源平台数。矩阵中第i(1≤i≤m)行,第j(1≤j ≤n)列的元素为fij,fij等于1或0,1代表资源平台j分配给任务目标i,0代表不分配。这样,一条多串染色体就有m×n个0-1编码组成的元素。
S2、遗传算子:染色体编码为一个m×n的矩阵,显然是不能直接使用遗传算法的。接下来将此多串染色体按列剪断,形成n个染色体串,每串上有m个基因,则每个染色体串代表每个资源平台所分配到的任务目标信息。
S3、初代生成:初代生成的目的是填满ND个多串染色体矩阵,ND为种群规模。每个染色体矩阵分解成上述S2中的染色体串,共有n个,每一个染色体串按所需要求随机填入x个“1”,x为规定的该资源平台最多能分得的任务目标数,若无特殊要求,每个资源平台只能分得一个任务目标的话,x取“1”。其余位置填“0”补位。如此填满ND个矩阵。
S4、交叉算子:为保证所要求的资源平台最多能分得的任务目标数不变以及目标分配情况,本发明方法中的交叉算子使用染色体串交叉方法。按常规染色体的交叉操作时,由交叉指定位点的基因改成交叉指定位点的染色体串。这样每次交叉的就是两个待交叉父体的同一资源平台的任务目标分配信息。
S5、变异算子:在本发明方法中,变异操作依次在每个染色体串中进行。首先按染色体串变异概率随机选取一个染色体串,再按基因变异概率选择该染色体串的特定基因位点之后,进行一次判断:若此位点上基因为“0”,则将其变为“1”,之后将本染色体串中其余位置中的“1”等概率选取一个(若只有一个“1”则不需选)变为“0”;同理,若此位点上基因为“1”,则将其变为“0”,并将此串染色体中其余位置的“0”等概率选取一个变为1。
S6、适应度函数:在本方法中,对大多数情况均可将资源平台信息和任务目标信息整理成m×n的信息矩阵,将信息矩阵与多串染色体矩阵进行点对点乘法得到一个适应度矩阵,再进行直接求和或者加权求和得到该多串染色体的适应度。
S7、选择算子:使用轮盘赌选择方法和精英保留策略。这样就能实现多串染色体编码方式下一个资源平台匹配多个任务目标并固定任务目标数的操作。
本发明的一种基于多串染色体遗传算法的目标分配优化方法,其优点及功效在于
1、实现了普通遗传算法无法实现的一个资源平台匹配多个任务并固定任务目标数的操作。
2、本方法也可应用于传统的一个资源平台匹配一个任务目标,区别于普通遗传算法是可以保持这中规则不被破坏,其优点为更加灵活。
3、0-1的编码方式,增加了计算效率。
附图说明
图1是本基于多串染色体遗传算法的基本流程图。
图2a、图2b是多串染色体编码举例。
图3是同位串交叉示意图。
图4是双位变异示意图。
具体实施方式
下面结合附图对本发明作进一步详细的说明。
本发明一种基于多串染色体遗传算法的目标分配优化方法,基本流程如图1 所示,其核心方法为多串染色体的编码及计算操作。下面按此流程,结合具体实施例作详细说明。
实施例如下:现有十个资源平台,分配给五个任务目标,其中一号平台可匹配得两个任务目标。
S1,初代生成
首先方法使用者根据所需优秀父代保留的大小来确定交叉概率Px的大小,本实施例中按通常惯例取0.97;根据所需子代结果搜索范围的大小确定串变异概率Pi和基因变异概率Pj的大小,本示例中按惯例分别取0.01和0.2。Px、Pi和Pj概率的确定,所取的值与收敛速度成正比。同时根据计算时间的需要,确定种群规模ND,本实施例确定为30;确定最大迭代次数G,本实施例为100。
本实施例中有十个资源平台,五个任务目标,即m为5,n为10,则多串染色体为一5×10的矩阵。将多串染色体按列分解为10个染色体串,每个染色体串代表该资源平台是否选择这五个任务目标中的一个的信息。两个待交叉父体的多串染色体矩阵编码示例如图2a、图2b所示。种群规模为30,即30个多串染色体矩阵。这30个多串染色体矩阵作为父代,步骤S2、S3的操作均对此父代进行。
S2,同位串交叉
将S1生成的初代种群中的30个按相邻原则作为父代进行交叉。相邻待交叉父体将进行10次判断,每次判断将在其对应位置的染色体串进行,如多串染色体1的第1串和多串染色体2的第1串。使用交叉概率Px判断是否需要进行交叉,具体操作方法为生成一个随机数x(0≤x≤1),若x<Px,则进行交叉操作,若x>Px,则不做处理。若进行交叉操作,则在该次判断将此位置的两串染色体互换位置,即为多串染色体遗传算法的同位串交叉,如图3。
S3,双位变异
本发明方法中的变异算子使用双位同时变异的方法。具体操作为,本发明方法步骤S1中给出了一个串变异概率Pi和一个基因变异概率Pj。首先对10个染色体串每一串进行串变异概率Pi的判断,具体操作方法为生成一个随机数x(0 ≤x≤1),若x<Pi,则进行变异操作,若x>Pi,则不做处理;若需要进行变异,则再次对该染色体串5个基因位点的每一个基因再进行基因变异概率Pj的判断。具体操作方法为在每一位生成一个随机数x(0≤x≤1),若x<Pj,则进行变异操作,若x>Pj,则不做处理。若该位置基因需要变异,则有如下两种情况:若该位置基因为“1”,则将此“1”变为“0”,然后再将该串染色体其余位置中的“0”等概率选取一个变为“1”;若该位置基因为“0”,则将此“0”变为“1”,然后再将该串染色体中其余位置中的“1”等概率选取一个变为“0”(若只有一个“1”则直接变为“0”)。这样就保证了资源平台所匹配得的目标数量不变的双位变异。如图4,按概率确定3号染色体串上的3号基因“0”变异为“1”,将其中唯一一个“1”变为“0”。
经过步骤S2、S3处理过的多串染色体矩阵,生成30个新的多串染色体矩阵,作为子代。将父代和子代共60个多串染色体矩阵合并,作为合并种群。
S4,选择
首先进行适应度函数计算。在本发明方法中的一个个体即为一个m×n的多串染色体矩阵F,本实施例中为一个10×5的矩阵。首先对资源平台和任务目标的信息分别整理成信息矩阵,含义为当此资源平台匹配给该任务目标时,所得到的收益度大小,记为资源平台信息矩阵R和任务目标信息矩阵M,他们均为 10×5的矩阵;由于多串染色体矩阵F为0-1矩阵,故可看作一系数矩阵,故将多串染色矩阵F、资源平台信息矩阵R、任务目标信息矩阵M作点乘,即可得到适应度矩阵V,如下式:
V=F·R·M
式中,“·”代表矩阵的点乘,或记为“.*”。
适应度矩阵V,再进行求和,即为该多串染色体的适应度fitness,如下式:
fitness=∑i∑jVij
得到适应度函数后按常规遗传算法中的轮盘赌策略和精英保留策略进行选择操作,具体操作如下:
轮盘赌策略:即采用适应度比例选择方式来进行个体的选择,在该方法中,每个个体的选择概率与其适应度成正比。设种群规模为ND,种群中第i(i=1,2,...,N) 个个体的适应度为fi,则第i个个体的选择概率pi,如下式子所示:
精英保留策略:将合并种群中适应度最大的个体保留到新一代种群中。
S5,迭代次数判断
进行当前迭代次数的判断,当迭代次数达到最大迭代次数或最近十代最优适应度的方差小于0.5即进入步骤S6,否则回到步骤S2。
S6,结束循环
结束循环,输出优秀种群。其中适应度最高的个体即为最优目标分配方案。
Claims (1)
1.一种基于多串染色体遗传算法的目标分配优化方法,其特征在于:该方法的具体步骤为:
S1、提出一种多串染色体的染色体编码方式,一个多串染色体代替传统的单染色体代表遗传算法的一个个体;多串染色体看做是一个m行n列的矩阵,m代表任务目标数,n代表资源平台数;矩阵中第i(1≤i≤m)行,第j(1≤j≤n)列的元素为fij,fij等于1或0,1代表资源平台j分配给任务目标i,0代表不分配;这样,一条多串染色体就有m×n个0-1编码组成的元素;
S2、遗传算子:将该多串染色体按列剪断,形成n个染色体串,每串上有m个基因,则每个染色体串代表每个资源平台所分配到的任务目标信息;
S3、初代生成:初代生成的目的是填满ND个多串染色体矩阵,ND为种群规模;每个染色体矩阵分解成上述步骤S2中的染色体串,共有n个,每一个染色体串按所需要求随机填入x个“1”,x为规定的该资源平台最多能分得的任务目标数,若无特殊要求,每个资源平台只能分得一个任务目标的话,x取“1”;其余位置填“0”补位;如此填满ND个矩阵;
S4、交叉算子:所述的交叉算子使用染色体串交叉方法;即按常规染色体的交叉操作时,由交叉指定位点的基因改成交叉指定位点的染色体串;这样每次交叉的就是两个待交叉父体的同一资源平台的任务目标分配信息;
S5、变异算子:变异操作依次在每个染色体串中进行;首先按染色体串变异概率随机选取一个染色体串,再按基因变异概率选择该染色体串的特定基因位点之后,进行一次判断:若此位点上基因为“0”,则将其变为“1”,之后将本染色体串中其余位置中的“1”等概率选取一个变为“0”,若只有一个“1”则不需选;同理,若此位点上基因为“1”,则将其变为“0”,并将此串染色体中其余位置的“0”等概率选取一个变为1;
S6、适应度函数:将资源平台信息和任务目标信息整理成m×n的信息矩阵,将信息矩阵与多串染色体矩阵进行点对点乘法得到一个适应度矩阵,再进行直接求和或者加权求和得到该多串染色体的适应度;
S7、选择算子:使用轮盘赌选择方法和精英保留策略,即实现多串染色体编码方式下一个资源平台匹配多个任务目标并固定任务目标数的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810994621.4A CN109102203A (zh) | 2018-08-28 | 2018-08-28 | 一种基于多串染色体遗传算法的目标分配优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810994621.4A CN109102203A (zh) | 2018-08-28 | 2018-08-28 | 一种基于多串染色体遗传算法的目标分配优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109102203A true CN109102203A (zh) | 2018-12-28 |
Family
ID=64864011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810994621.4A Pending CN109102203A (zh) | 2018-08-28 | 2018-08-28 | 一种基于多串染色体遗传算法的目标分配优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109102203A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111461591A (zh) * | 2020-03-12 | 2020-07-28 | 哈尔滨工业大学(威海) | 一种基于遗传算法的众包任务分配方法 |
CN112990515A (zh) * | 2019-12-02 | 2021-06-18 | 中船重工信息科技有限公司 | 一种基于启发式优化算法的车间资源调度方法 |
CN113487236A (zh) * | 2021-07-30 | 2021-10-08 | 大连海事大学 | 基于遗传算法的飞机排班调度方法 |
-
2018
- 2018-08-28 CN CN201810994621.4A patent/CN109102203A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112990515A (zh) * | 2019-12-02 | 2021-06-18 | 中船重工信息科技有限公司 | 一种基于启发式优化算法的车间资源调度方法 |
CN111461591A (zh) * | 2020-03-12 | 2020-07-28 | 哈尔滨工业大学(威海) | 一种基于遗传算法的众包任务分配方法 |
CN113487236A (zh) * | 2021-07-30 | 2021-10-08 | 大连海事大学 | 基于遗传算法的飞机排班调度方法 |
CN113487236B (zh) * | 2021-07-30 | 2023-09-15 | 大连海事大学 | 基于遗传算法的飞机排班调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ghosh et al. | Evolutionary algorithms for multi-criteria optimization: A survey | |
Wardlaw et al. | Evaluation of genetic algorithms for optimal reservoir system operation | |
CN106484512B (zh) | 计算单元的调度方法 | |
Jalali et al. | Multi-colony ant algorithm for continuous multi-reservoir operation optimization problem | |
CN109886589A (zh) | 一种基于改进鲸鱼优化算法求解低碳车间调度的方法 | |
Chang et al. | Real-coded genetic algorithm for rule-based flood control reservoir management | |
CN114186749B (zh) | 基于强化学习及遗传算法的柔性车间调度方法及模型 | |
CN109102203A (zh) | 一种基于多串染色体遗传算法的目标分配优化方法 | |
CN101118611A (zh) | 基于遗传算法的业务过程模型资源配置优化方法 | |
CN111325356A (zh) | 一种基于演化计算的神经网络搜索分布式训练***及训练方法 | |
CN106250650A (zh) | 高通量仿真中模型的资源分配与优化方法 | |
CN103324954A (zh) | 一种基于树结构的图像分类方法及其*** | |
CN106611378A (zh) | 一种基于优先权编码的混合遗传算法解作业车间调度问题 | |
CN113341889B (zh) | 带装配阶段和能耗的分布式阻塞流水车间调度方法及*** | |
CN110471762A (zh) | 一种基于多目标优化的云资源分配方法及*** | |
CN110909787A (zh) | 基于聚类的进化算法进行多目标批调度优化的方法和*** | |
CN1450493A (zh) | 实现遗传算法的神经网络*** | |
CN111047272A (zh) | 一种用于多语言协同开发的项目调度方法及装置 | |
CN112348323A (zh) | 一种多目标的能源供应与作业柔性排程方法 | |
CN104392317A (zh) | 一种基于遗传文化基因算法的项目调度方法 | |
Pour et al. | The discrete time-cost-quality trade-off problem using a novel hybrid genetic algorithm | |
CN114217580B (zh) | 基于改进型差分进化算法的功能性纤维生产排产方法 | |
CN113741482B (zh) | 一种基于异步遗传算法的多智能体路径规划方法 | |
Ehtesham Rasi | Optimization of the multi-objective flexible job shop scheduling model by applying NSGAII and NRGA algorithms | |
CN109492744A (zh) | 一种离散二进制粒子群算法与模糊控制耦合的混合运行优化控制方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181228 |
|
RJ01 | Rejection of invention patent application after publication |