设施选址问题的遗传算法 [英] Genetic Algorithm for Facility Location Problem

查看:161
本文介绍了设施选址问题的遗传算法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我正在尝试解决设施位置问题,其中一个解决方法是使用遗传算法。我对算法如何工作有一个公平的理解,但我无法将其放入代码表格。



示例问题



共有3个级别,共有5个潜在的设施位置。



5个设施中的2个位于1级,其余3个位于3级在2级。



等级3由5个客户组成。



要到达3级的任何客户,必须从1级开始,然后转到2级,最后到达特定的客户。



设置设施需要支付固定费用。



给出任意2个位置之间的距离,即1级设施与2级设施,2级设施与3级客户之间的距离。我需要尽量降低成本。



成本=(设置仓库的成本)+(距离*单位距离成本)

<必须满足每个客户的
需求。



如果有人能够使用遗传算法大致了解如何解决这个问题,那将会有很大的帮助。

Hi ,
I am trying to solve the facility location problem and one of the methods to solve it is by using the genetic algorithm . I have a fair understanding of how the algorithm works but i am unable to put it into code form .

example problem

There are 3 levels and a total of 5 potential facility locations .

2 out of the 5 facilities are on level 1 and the rest of the 3 are on level 2 .

level 3 consists of 5 clients .

To reach any client on level 3 , one has to start at level 1 then move on to level 2 and then finally to a particular client .

There is a fixed cost associated with setting up a facility .

The distances between any 2 locations , i.e , facilities on level 1 to facilities on level 2 , facilities on level 2 to clients on level 3 is given . I need to minimise the cost .

cost = (cost of setting up warehouse) + (distance * cost per unit distance)

demand for each client has to be satisfied .

If someone could give me a rough idea of how to go about this using the Genetic Algorithm it would be of massive help .

推荐答案

hi,

首先需要很好地定义遍历路径。即所有可能的遍历。

示例。

startPoint - > level1facility1 - > level2facility1 - > client1

startPoint - > level1facility1 - > level2facility2 - > client2

startPoint - > level1facility1 - > level2facility3 - > client3

- -------------------------------------------------- ----

.................................等


基本上,这个算法解决的是:

从level1facility1到client3的最小成本路径是什么?



现在选择合适的数据结构。在这种情况下,图表将有助于表示级别。考虑通用解决方案而不仅限于3个级别。

如果选择图形 Dijkstra的算法 [ ^ ]可以帮到你。



希望这会有所帮助!!





看看在遗传算法和旅行商问题 [

title =新窗口 > ^
]并查看它是否适合您的情况。

first of all the traversal paths need to be well defined. i.e. which all are the possible traversals.
example.
startPoint-->level1facility1-->level2facility1-->client1
startPoint-->level1facility1-->level2facility2-->client2
startPoint-->level1facility1-->level2facility3-->client3
--------------------------------------------------------
.................................etc.

Basically, what this algo solves is :
what is the minimal cost path to reach from say,level1facility1 to client3 ??

Now select a suitable data structure. A graph would be helpful in this case to represent the levels. Thinking in terms of a generic solution and not just limited to 3 levels.
If you select a graph the Dijkstra's algorithm[^] would help you.

hope this helps !!

OR
take a look at Genetic Algorithms and the Traveling Salesman Problem[
title="New Window">^
] and see how it suits your case.


有趣。是的,这是我可以建立的东西。最后,我需要决定在潜在设施中建立的理想设施数量,同时最大限度地降低总成本。严格的限制是必须满足每个客户的需求。



非常感谢!
Interesting . Yes it is something i can build upon . Finally i need to decide upon the ideal number of facilities to be set up among the potential facilities while minimizing the total cost . The hard constraint being that the demand at every client must be met .

Thanks a lot !


这篇关于设施选址问题的遗传算法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆