A003-算法-遗传算法-绘图-(ques=1)

本文介绍了一种使用遗传算法让100个个体经历N代演化,从随机状态逐步接近Firefox图标的策略。每个生物具有特定特征,并在进化过程中允许10%的个体发生变异。当所有个体间差异小于4且连续1000代保持这一状态时,认为进化达到平衡。通过调整算法参数,可以优化得到的图像。文章提供了实现代码。

根据科学松鼠会的 文章《遗传算法:内存中的进化》设计下面的实现步骤。

文章地址:http://songshuhui.net/archives/10462


目标:

100个同一物种的生物[A0,A99],设计一个约束条件进化步骤,使得他们经过N代的演化之后、生物个体的外貌如下变化:

从随机的外貌 变成 和 长得像Firefox图标。

物种A的个体特征:

1、由 100个三角形 组成
2、每个三角形 的大小随机(在 [size_min,size_max]之间)
3、每个三角形 的颜色随机(在 [0,255]之间、共 256色可选)
4、每个三角形 的位置随机(在个体身体之内 [正方形坐标内])


绘图(进化)步骤:

1、随机生成 100个个体 [A0,A99]:每个个体体内的每个
解析包含 `CORE_SET_CONFIG_CMD`、`CORE_GET_CONFIG_CMD` 命令及相关配置信息(如 `PF_BIT_RATE`、`CLOCK_REQUEST_CFG` 等)的日志内容,可按以下思路进行: #### 识别命令 首先从日志中识别出 `CORE_SET_CONFIG_CMD` 和 `CORE_GET_CONFIG_CMD` 这两个关键命令。一般这两个命令会有特定的格式,可能带有时间戳、命令标识等信息。例如: ```plaintext 11:59:14.576 --> 20030703A002A003A004 -=(CORE_GET_CONFIG_CMD)=- ``` 这里明确出现了 `CORE_GET_CONFIG_CMD` 命令。 #### 提取配置信息 在识别出命令后,接着提取相关的配置信息。配置信息可能紧跟在命令后面,也可能在单独的行中。例如: ```plaintext 11:59:14.578 40030E0003A0020101A0030103A0040106 CLOCK_REQUEST_CFG:01 CLOCK_SEL_CFG:03 CLOCK_TO_CFG:06 ``` 这里提取到了 `CLOCK_REQUEST_CFG`、`CLOCK_SEL_CFG` 和 `CLOCK_TO_CFG` 等配置信息。 #### 解析配置含义 根据系统的文档或约定,解析配置信息的具体含义。例如,`PF_BIT_RATE` 可能表示某个通信通道的比特率,`CLOCK_REQUEST_CFG` 可能与时钟请求配置相关。 #### 示例代码 以下是一个简单的 Python 示例,用于模拟解析包含这些命令和配置信息的日志: ```python log_content = """ 11:59:14.576 --> 20030703A002A003A004 -=(CORE_GET_CONFIG_CMD)=- 11:59:14.578 40030E0003A0020101A0030103A0040106 CLOCK_REQUEST_CFG:01 CLOCK_SEL_CFG:03 CLOCK_TO_CFG:06 """ lines = log_content.splitlines() for line in lines: if "CORE_GET_CONFIG_CMD" in line: print("Found CORE_GET_CONFIG_CMD") elif "CORE_SET_CONFIG_CMD" in line: print("Found CORE_SET_CONFIG_CMD") elif "CLOCK_REQUEST_CFG" in line or "PF_BIT_RATE" in line: config_parts = line.strip().split() for part in config_parts: if ":" in part: key, value = part.split(":") print(f"Config key: {key}, value: {value}") ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值