我手头有一个赋值问题,我想知道如何应用本地搜索技术来达到一个理想的解决方案(搜索空间相当大)。
我有一个有向图(一个流程图),我想在二维平面上以一种非常清晰、可理解和易于被人看懂的方式来可视化。因此,我将给每个顶点分配(x,y)位置。我正在考虑用模拟退火、遗传算法或诸如此类的方法来解决这个问题。
输入:图G= (V,E)
输出:--一组作业,{(xi, yi) for each vi in V}。换句话说,每个顶点将被分配一个位置(x,y),其中的坐标都是整数和>= 0。
这些是我判断解决方案的标准(我欢迎任何建议):
相交边的数目应该是最小的,
所有的边缘都向一个方向流动(即从
我的对象或多或少如下所示:
public class Object1
{
public string connectionIn1 { get; set; }
public string connectionIn2 { get; set; }
public string connectionIn3 { get; set; }
public string connectionOut1 { get; set; }
public string connectionOut2 { get; set; }
public string connectionOut3 { g