Advertisement

多目标遗传算法_多目标遗传算法求解供应商选择问题

阅读量:
1ef348ea1da7f3fd165b7f910bedde10.png

导语

一、供应商选择问题的多目标优化模型

①模型假设

  1. 物流服务费额仅包括固定费额、运杂费额以及附加服务费额等组成部分,并且其中运杂费额和附加服务费额的单价均为定值;
  2. 物流业务中的运杂费主要取决于作业距离和货物重量等因素的相关情况;而物流附加服务费则主要取决于货物处理量的相关情况。

②优化目标

(1)

de84fdc98de743bf37c3f7a658ea56c1.png

(2)

517994e00ca9c718e8c02b488d2fac82.png

F表示物流供应商的总成本,包括运输成本,货物成本及固定成本。

λi为决策变量,当物流供应商i被选择供货时λi=1,否则当λi=0。

αi为物流供应商i在单位距离运输单位货物量的成本。

ki为物流供应商i到目的地的距离。

xi为物流供应商i提供的货物量。

βi为物流供应商i提供的单位货物量的成本。

ηi为物流供应商i产生的固定成本。

S表示客户满意度指数,其中Ri=

可借助现有的评价指标体系采用特定的方法对物流供应商的单位满意度系数进行评估,并使其作为定值存在。

③约束条件

(3)

27ce238c0482dc7be76479bf90293878.png

(4)

38457c3be45401a4a5e9d221b0de21b1.png

约束(3):表示选择2家及以上的物流供应商,λi为0-1变量;

约束(4):X代表总的货物数量,在任何物流供应商i的情况下,其配送的货物量不低于零且不超过其最大供应能力Xi。

二、遗传算法

遗传算法通常旨在实现最小化或最大化的目标,在本研究中将具体的目标(2)转化为一个数学表达式:min -S。同时,在针对供应商选择问题这一复杂议题,在本研究中构建了一个多维度优化模型,并特别关注成本控制和供应商应答能力这两个关键指标。运用Pareto最优原则来协调这些冲突的目标,在计算过程中最终获得了一系列相互独立且无支配关系的最优解。这些解在关注点上各有侧重,并且各方案在两个评价维度上都展现出卓越性能。

Step1:执行第一步骤时,请先收集并整理所需问题数据,并明确功能型服务供应商的各项关键参数。这些关键参数包括但不仅限于以下内容:供应商的数量n(即供应商数目)、单位运输成本(即每单位运量的成本)、单位增值服务成本(即每提供一次增值服务的成本)、固定费用(即与运营活动相关的固定支出总额)、运输距离(即各主要节点之间的地理距离)以及最大业务承载能力(即各节点所能承受的最大运量)。此外还需关注的是服务供应中的服务质量预期指标以及客户服务质量感知度等指标。

Step2:配置算法参数,群体规模N、最大迭代代数Max_gen、交叉概率值Pc和变异概率值Pm,并将迭代计数器k初始化为1。

Step3:种群初始化,物流服务供应商选择问题的解编码为0-1表示的一组排列

,若选择供应商i提供物流服务,则

,否则

;生成包含N组排列的初始种群;但必须确保随机解满足供应商选择的最低数量和最大业务承载能力不低于需求量这两个条件;如果无法满足以上两个条件,则需重新生成随机解

Step4:计算初始种群的目标值,在解码过程中根据下层规划的目标函数可知,在实现全局客户满意度最大化的过程中必须首先优先选择那些客户服务满意度指数较高的供应商进行货物供给;因此,在分配供应商货运量时应当按照客户服务满意度指数高低顺序为相关供应商提供货物,并尽量使其承担其最大的运量能力,在初始解中存在部分已选定的供应商并未分配运量的情况

②通过公式(1)和更新后的初始解进行供应商成本费用的计算,在此基础上, 通过公式(2)和经过解码处理后的各供应商业务量来确定客户满意度指数

Step5:首先采用交叉操作策略,在群体中随机选取个体进行两两配对,并根据该概率值进行判断。如果计算出的概率低于设定的Pc阈值,则继续执行下一步骤;否则放弃当前的操作方案。具体而言,在执行过程中需要完成以下几项工作:一是通过随机方式确定两个交点位置;二是将这两个交点之间的基因信息互换;三是生成新的解集;四是在完成上述步骤后需要检查这些新解是否满足供应商选择的基本要求(包括最小数量限制)以及最大业务承载能力不低于需求水平这两个条件;五是如果所有条件均得到满足,则将符合条件的新解加入到新的种群中;六是如果存在任何一项条件不达标则需要舍弃该组解。

Step6:采用变异策略,在每个供应商处生成n个服从参数为(0, 1)均匀分布的随机的概率值;随后评估这些概率值与预先设定的变异概率Pm之间的关系;当某次生成的概率值低于Pm时,则对相应供应商进行调整

的取值,使用等位基因进行替换,将新解保留至变异种群。

Step7:将多种群组合为一个整体,并对不同种类的群体进行整合到一起处理以实现目标。

Step8:筛选非劣解,计算合并种群中非劣解的支配关系,确定非劣解集Q。

Step9: 更新当前群体时, 计算目标优化子代群体Q中支配个体的数量. 如果该数量小于设定群体规模N, 则生成若干新的初始解补充群体, 以保证新群体规模为N; 反之则采用以下措施: 随机选择Q中N个支配个体作为新初始群体.

Step10:算法终止条件,判断k<Max_gen,若成立,则令k=k+1,转至Step5。

Step11:确定最优方案,并生成非支配解集Q。针对每个非支配解进行编码处理,计算修正后的所有非支配解集合,并确定各供应商的业务分配情况及其相应的两项评价指标数值。

三、算例分析

某公司每个月须向物流供应商采购4千吨货物。共有七家物流供应商有能力满足公司的供货需求,并将各服务环节的成本数据体现在表一中。基于对其七家物流供应商过去服务记录以及使用单位反馈数据的综合评估,最终计算出各物流公司单位满意度评分分别为R=(...)。

1e931868269554f5f71767bc86e6b409.png

将相关数据输入至多目标遗传算法模型中,在设定种群规模参数值为10的情况下运行该算法框架;同时设定计算迭代次数设定为50次,并配置交叉算子的概率值取值范围在[0, 1]区间内;其中交叉算子的概率值取0.7;变异算子的概率取值设定在[0, 1]区间内;其中变异算子的概率取值设定为0.3;通过该设置可有效平衡算法的全局搜索能力与局部优化性能;运行上述参数设置后,在评估指标维度下分别获得两个优化目标函数的目标最小收敛曲线如图所示;其中目标函数一与二的目标最小收敛曲线分别对应图一和图二;经过计算分析获得共5个不同供应商组合方案;具体列举以下三个具有代表性的典型解:第一优化解对应于目标函数一的最佳组合方案;第二优化解对应于第二优化目标函数的最佳组合方案;第三优化解则基于现有文献研究结果进行综合分析所得

  • 方案1:(1200,1800,0,0,0,500,500)
  • 方案1目标值:F1=38800,S1=1631.6
  • 方案2:(0,800,0,1000,1700,500,0)
  • 方案2目标值:F1=54827.5,S2=3008.1
  • 方案3:(0,1800,0,0,1700,500,0)
  • 方案3目标值:F3=40627.5,S3=2808.1
e682fc0af558d655d6510069287132c0.png

图1:目标1的最优值迭代图

2757c5b2aeb5f012f5c1e76fa1641fe0.png

图2:目标2最优值的迭代图


智能优化算法

智能优化算法

以上内容仅供交流,于2020年12月2日

智能优化算法

智能优化算法

全部评论 (0)

还没有任何评论哟~