标签: genetic-algorithm

如何实现非均匀概率分布?

我试图在遗传算法中实现非均匀概率分布.

在遗传程序的实施中,我有一个实验,其中有3个结果,每个结果都有不同的概率.比方说,一个结果的可能性是0.85,另一个是0.01,最后一个是0.14?

PS:我最近才知道它被称为概率的非均匀分布.我用Java实现它,任何人都能说出非均匀概率背后的理论.分发以及实现它的任何Java包.

如果您需要有关此问题的更多信息,请随时向我询问!

提前致谢!

probability genetic-programming probability-theory genetic-algorithm

2
推荐指数
1
解决办法
3936
查看次数

什么类别的算法可用于时间表?

是的,在SO上有很多这样的问题.我看到遗传算法是最常见的答案.

制定时间表时间表

用于创建学校时间表的算法


但是,我担心GA的这些特征

  • 程序的终止条件很难定义
  • 不能轻易逃脱局部极大值

我希望该程序能够被用户轻松推向相互冲突的标准和不可能的解决方案 .

因此,我想要一种方法

  • 决定性的 - 保证达到接近最佳状态报告算法无法达成解决方案
  • 可以采取硬(不可侵犯)限制和软限制
  • 优雅地接受用户输入约束; 如果用户输入不起作用,可以将其添加到代码中而不会破坏它

有100000个尽可能详尽的时间表.


我四处搜索,发现像模拟退火这样的元启发式算法是一个很好的选择.那么动态编程算法呢?

对于这样的数据集,蛮力方法是否合适?

什么是符合标准的好算法?

language-agnostic algorithm artificial-intelligence dynamic-programming genetic-algorithm

2
推荐指数
1
解决办法
489
查看次数

在锦标赛选择中选择父母

我正在写一个 GA,我不确定在选择父母时我是否想通过我的人口循环找到每个使用锦标赛选择的父母,或者我是否打算为每个解决方案使用比赛选择找到两个父母在我的人口中。

哪一个?

artificial-intelligence genetic-algorithm

2
推荐指数
1
解决办法
1817
查看次数

在遗传算法中使用模式的目的究竟是什么?

模式究竟如何帮助遗传算法获得最优解?模式意味着模板是否意味着人口中的每个人都具有相同的模式?

artificial-intelligence genetic-algorithm evolutionary-algorithm

2
推荐指数
2
解决办法
1090
查看次数

神经网络训练的神经机器人可以用于以下目的吗?

嘿,我有一个任务要执行,这基本上是以某种方式检索与特定领域有关的powerpoint演示文稿或pdf文档.假设我想要检索有关生物信息学领域的ppt和pdf讲义.我想知道是否可以通过使用神经网络训练的神经机器人的方法来实现这个任务?我想在进一步实施之前确认这种方法并非完全错误.

如果有人想知道为什么在这种情况下需要神经网络或任何学习算法,这里是我的计划(这可能是错误的或者可能有更简单的方法来实现这一点,所以请随时纠正我):

我生成由神经网络训练的神经机器人(不确定这种训练是如何发生的,我假设通过使用某些ppt和pdf文件的样本训练集的监督学习)然后这些机器人检索与他们通过他们学到的相似的页面他们的训练.

那么上述方法是完成此任务的正确方法吗?

information-retrieval machine-learning web-crawler neural-network genetic-algorithm

2
推荐指数
1
解决办法
644
查看次数

如何在遗传算法中将数字表示为染色体?

我想使用遗传算法来解决具有两个变量的两个线性方程的简单系统.这主要是为了帮助我更好地理解它们的工作原理.

一切看起来都很简单,但我不确定如何在染色体中编码可能的解决方案来解决这个问题.

我将有两个变量,我想在染色体中编码以代表一个解决方案.如果每个变量都可以表示为8位数,那么我是否会制作一个16位二进制编码的染色体(1和0的字符串).

我不太确定这是怎么回事.如果选择两个亲本进行育种,如何从二进制字符串中随机选择基因会产生更好的解决方案?这就是为什么我不认为二进制字符串可以工作,所以任何答案都将非常感谢!

genetic-algorithm

2
推荐指数
1
解决办法
1292
查看次数

如何用DEAP产生不同的随机结果?

我正在使用DEAP库来最大化度量,我注意到每当我重新启动算法(它应该创建一个二进制值的随机列表--1和0)时,它产生相同的初始值.

我开始怀疑并在这里复制了他们的基本DEAP示例,并再次重新运行算法:

import array, random
from deap import creator, base, tools, algorithms

creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", array.array, typecode='b', fitness=creator.FitnessMax)

toolbox = base.Toolbox()

toolbox.register("attr_bool", random.randint, 0, 1)
toolbox.register("individual", tools.initRepeat, creator.Individual, toolbox.attr_bool, 10)
toolbox.register("population", tools.initRepeat, list, toolbox.individual)

def evalOneMax(individual):
    return sum(individual),

toolbox.register("evaluate", evalOneMax)
toolbox.register("mate", tools.cxTwoPoints)
toolbox.register("mutate", tools.mutFlipBit, indpb=0.05)
toolbox.register("select", tools.selTournament, tournsize=3)

population = toolbox.population(n=10)

NGEN=40
for gen in range(NGEN):
    offspring = algorithms.varAnd(population, toolbox, cxpb=0.5, mutpb=0.1)
    fits = toolbox.map(toolbox.evaluate, offspring)
    for fit, ind in zip(fits, offspring):
        ind.fitness.values = fit …
Run Code Online (Sandbox Code Playgroud)

python random algorithm genetic-algorithm

2
推荐指数
1
解决办法
2032
查看次数

遗传算法选择和交叉问题

我已经使用自己的GA一段时间,我使用随机选择和精英(前10%左右)来获得50%的人口.然后我进行交叉以产生接下来的50%,然后进行突变.这听起来很奇怪,但它让我在我的问题上足以让我满意它.

我想开始使用更精细的选择方法,特别是排名选择.我也想采用交叉概率.

我的问题是:

  1. 在进行排名选择时,每个人只允许选择一次吗?
  2. 交叉后父母通常会发生什么?他们会被孩子取代还是他们也会进入下一代?

genetic-algorithm

2
推荐指数
1
解决办法
283
查看次数

有多少个人可供选择?(遗传算法)

我已经开始实现自己的遗传算法,并且正处于决定如何为新一代选择父母的阶段。我读了一些书,看来有很多不同的方法可以解决这个问题。

我知道各种选择技巧(比赛,轮盘赌),但我似乎找不到的信息就是应该选择多少个父母。

我要处理的初始人口规模介于50-75个人之间。我当时正在考虑为下一代选择一半的人口,因此每一代人口都将减少一半,不确定这是否是最好的选择。

任何建议都很好。

algorithm artificial-intelligence genetic-algorithm

2
推荐指数
1
解决办法
1218
查看次数

为qsort的结构编写比较函数?

qsort在C中为函数编写比较函数时遇到了麻烦.这就是我目前所拥有的:

int cmpfunc(const void *a, const void *b) {
    return (*(Individual*)a->fitness - *(Individual*)b->fitness);
}
Run Code Online (Sandbox Code Playgroud)

我知道比较函数是如何工作的,但我不明白如何在我的结构中引用一个整数值Individual.这是个人的结构.

typedef struct {
    PPM_IMAGE image;
    double fitness;
} Individual;
Run Code Online (Sandbox Code Playgroud)

我想比较结构中的适应度值.

c qsort genetic-algorithm

2
推荐指数
1
解决办法
143
查看次数