【问题标题】:fitness function in PHPPHP中的健身功能
【发布时间】:2017-11-06 21:25:09
【问题描述】:

我看了一整天在遗传算法中实现“适应度函数”的示例。 (我已经实现了“开始种群”、“突变”和排列)。接下来的步骤是“适应功能”。有没有人有一个在 PHP 中计算“适应度”的例子? Java 或 C# 也可以。

【问题讨论】:

  • 下面的函数在哪里?
  • 我认为“健康”是基因编程背景下的固定术语?
  • 是的:您可以在维基百科上找到定义:感谢您的回复! en.wikipedia.org/wiki/Fitness_function
  • 健身取决于你拥有什么以及你想要做什么。例如,如果您正在看一辆车,则适合度可能会有所不同,具体取决于您是否想拥有较高的最高速度,获得大量 MPG,而不是死于车祸......
  • 好的@DHall,我尝试实现分配问题(分配学生实习)。但现在,“Joe Phillips”在我的道路上帮助了我。无论如何感谢您的回复!

标签: java php genetic-algorithm genetic-programming


【解决方案1】:

适应度函数只会对您的人口中的一名成员进行排名。适应度函数最高的项目“获胜”,然后在下一轮与种群中的新成员发生性关系。

如何定义成员的适合度由您决定。可以这么说,由这个函数决定在 Brains vs. Brawn 中什么会获胜。

【讨论】:

  • 好的,我明白了。感谢您的热心回复!
【解决方案2】:

创建一个 java、C 或 C# 软件来实现您的个人健身功能。稍后,您可以使用exec() 函数执行软件并收集输出。例如:

<?php
    $output = array();
    exec("/path/to/fitness_function_executable", $output);
    print_r($output);
?>

【讨论】:

  • 也许,你只是解决了我的另一个问题。 (将解决方案保存在数据库或文件中?)。我认为将其保存到文件是一种更聪明的方法,然后将解决方案保存到数据库中(我有 +- 3000 个学生和 +- 1000 个实习机会)。我可以在 php.ini 中遇到内存使用问题吗?我在 drupal 中执行此操作(我已经创建了一个 drupal 模块(界面))。无论如何感谢您的回复,您不回复,因为这个问题,我稍后可能会在这里说(首先我必须对适应度函数进行编程)。
  • 如果您只有没有关系的原始数据,文件存储解决方案可能会很有用。否则,数据库是最好的选择。但是,对于速度要求,我建议您将嵌入式数据库考虑为 Berkley DB 和 SQLite3,它们可以从 php、java 和 C、C# 中使用。请记住,对于大数据计算,php 不是一个好的解决方案。尤其是处理大量数据(数据挖掘、算法等)。
  • 这仍然很难用PHP(我希望PHP足够强大)做所有事情来保存在数据库或文件中,正如你所说的是真的! PHP 并不是真正理想的被编程算法,选择是因为我们使用 Drupal。 (但是,为了确保以后:))。感谢您的贡献。我很快就能使用这个解释了。
【解决方案3】:

适应度函数完全取决于您的应用程序。它可以是任何东西,从一个生物行进多远,到你可以在游戏中的特定时间在星际争霸 2 中建造多少个单位,再到衡量一张图像与另一张图像的相似程度。

确保它在好坏之间有足够的粒度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-11
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 2012-09-24
    • 2015-06-23
    相关资源
    最近更新 更多