基于AI大模型的人工生命进化
该项目是一个基于Perl语言开发的AI人工生命模拟系统,采用三层架构设计: 基础层包含基因组实现(Genome类),采用实数编码和混合交叉策略,支持自适应变异操作 领域层实现个体行为模型(EvolvedLife类),包含状态
文章目录
a artificial life with the help of large AI model written by perl
全部源码已经开源:https://gitee.com/waterruby/artificial-life-large-ai-model
核心代码深度剖析
一、整体架构设计
三层架构模型
┌─────────────────────────────────────────┐
│ 应用层 (main) │
├─────────────────────────────────────────┤
│ 模拟层 (EvolutionarySimulation) │
├─────────────────────────────────────────┤
│ 领域层 (Environment + EvolvedLife) │
├─────────────────────────────────────────┤
│ 基础层 (Genome + DeepSeekClient) │
└─────────────────────────────────────────┘
二、基础层核心剖析
1. Genome类 - 遗传算法的基因表示
package Genome {
sub new {
my ($class, %args) = @_;
my $self = {
# 行为相关基因
aggression => $args{aggression} || rand(1.0),
curiosity => $args{curiosity} || rand(1.0),
sociality => $args{sociality} || rand(1.0),
# 生理相关基因
metabolic_rate => $args{metabolic_rate} || 0.7 + rand(0.6),
vision_range => $args{vision_range} || 2 + int(rand(4)),
speed => $args{speed} || 0.8 + rand(0.4),
# 效率相关基因
food_efficiency => $args{food_efficiency} || 0.9 + rand(0.4),
water_efficiency => $args{water_efficiency} || 0.9 + rand(0.4),
move_cost => $args{move_cost} || 0.8 + rand(0.4),
# 阈值基因(行为触发器)
hunger_threshold => $args{hunger_threshold} || 40 + int(rand(30)),
rest_threshold => $args{rest_threshold} || 30 + int(rand(20)),
reproduce_threshold => $args{reproduce_threshold} || 35 + int(rand(15)),
};
bless $self, $class;
return $self;
}
}
设计要点:
- 实数编码:所有基因都是浮点数,便于连续优化
- 归一化范围:大部分基因在[0,1]或小范围内
- 生物学意义:每个基因都有明确的生物学对应
2. 交叉操作(遗传算法的核心)
sub crossover {
my ($self, $other) = @_;
my %child_genes;
foreach my $gene (keys %$self) {
if (rand() < $CROSSOVER_RATE) { # 70%概率进行交叉
# 随机选择父代基因(类似单点交叉的变体)
$child_genes{$gene} = rand() < 0.5 ? $self->{$gene} : $other->{$gene};
} else {
# 基因平均(算术交叉)
$child_genes{$gene} = ($self->{$gene} + $other->{$gene}) / 2;
}
}
return Genome->new(%child_genes);
}
算法特点:
- 混合交叉策略:结合了离散选择和算术平均
- 概率控制:
$CROSSOVER_RATE控制交叉强度 - 保持多样性:随机选择避免过早收敛
3. 变异操作
sub mutate {
my $self = shift;
foreach my $gene (keys %$self) {
if (rand() < $MUTATION_RATE) { # 15%概率发生变异
my $mutation = (rand() - 0.5) * 0.25; # ±12.5%变化
if ($gene =~ /rate|speed|efficiency|cost|aggression|curiosity|sociality/) {
# 连续基因:加法变异
$self->{$gene} += $mutation;
# 边界处理
$self->{$gene} = 0.3 if $self->{$gene} < 0.3;
$self->{$gene} = 1.7 if $self->{$gene} > 1.7;
} elsif ($gene =~ /range|threshold/) {
# 离散基因:整数变异
$self->{$gene} += int($mutation * 15);
$self->{$gene} = 1 if $self->{$gene} < 1;
# 特殊边界
if ($gene eq 'vision_range') {
$self->{$gene} = 6 if $self->{$gene} > 6;
}
}
}
}
}
变异策略:
- 自适应幅度:不同基因类型使用不同变异策略
- 边界保护:防止基因值越界
- 保持合理性:视野范围、阈值等有特殊约束
三、领域层核心剖析
1. EvolvedLife类 - 个体行为模型
核心状态机
sub choose_action {
my $self = shift;
my $genome = $self->{genome};
# 状态机优先级(生存 > 繁殖 > 探索)
if ($self->{energy} < $genome->{hunger_threshold}) {
return "seek_food"; # 饥饿时找食物
}
elsif ($self->{energy} > $genome->{reproduce_threshold} && $self->{age} > 1) {
# 繁殖决策:能量越高概率越大
my $reproduce_chance = 0.2 + ($self->{energy} - $genome->{reproduce_threshold}) * 0.02;
$reproduce_chance = 0.8 if $reproduce_chance > 0.8;
if (rand() < $reproduce_chance) {
return "reproduce";
}
}
elsif ($self->{energy} < $genome->{rest_threshold}) {
return "rest"; # 低能量时休息
}
elsif (rand() < $genome->{curiosity}) {
return "explore"; # 好奇心驱动探索
}
else {
return "patrol"; # 默认行为
}
}
行为决策逻辑:
- 生存优先:能量低于饥饿阈值时强制觅食
- 条件繁殖:需要足够能量和成熟年龄
- 概率探索:好奇心基因影响探索概率
- 默认巡逻:保持基本活动
能量管理核心
sub update {
my $self = shift;
$self->{age}++;
# 基础能量消耗(与新陈代谢率正相关)
my $energy_cost = 2.0 * $self->{genome}->{metabolic_rate};
$self->{energy} -= $energy_cost;
# 自动恢复机制(避免过早死亡)
$self->{energy} += 2 if $self->{energy} < 30 && rand() < 0.3;
# 死亡概率计算(复杂决策树)
my $death_chance = 0;
# 能量相关死亡(梯度概率)
if ($self->{energy} <= 0) {
$death_chance = 1.0;
} elsif ($self->{energy} < 8) {
$death_chance = 0.7; # 极低能量:70%危险
} elsif ($self->{energy} < 18) {
$death_chance = 0.3; # 低能量:30%警告
} elsif ($self->{energy} < 30) {
$death_chance = 0.1; # 中等能量:10%风险
} else {
$death_chance = 0.01; # 高能量:1%安全
}
# 年龄相关死亡(老年化)
if ($self->{age} > 15) {
my $age_death_chance = 0.02 + ($self->{age} - 15) * 0.04;
$death_chance = max($death_chance, $age_death_chance);
}
# 强制死亡年龄
if ($self->{age} > 30) {
$death_chance = 1.0;
}
return { status => 'dead' } if rand() < $death_chance;
return { status => 'alive', energy => $self->{energy}, age => $self->{age} };
}
能量系统设计:
- 动态平衡:消耗与恢复的动态平衡
- 梯度风险:能量越低死亡风险指数增长
- 年龄压力:老年个体面临额外死亡风险
繁殖机制
sub reproduce {
my ($self, $partner) = @_;
return undef unless $partner && ref($partner) eq 'EvolvedLife';
# 繁殖条件检查
return undef if $self->{energy} < 25 || $partner->{energy} < 25;
# 繁殖能量消耗
$self->{energy} -= 30;
$partner->{energy} -= 30;
# 遗传操作:交叉 + 变异
my $child_genome = $self->{genome}->crossover($partner->{genome});
$child_genome->mutate();
# 创建后代
my $child = EvolvedLife->new(
name => $self->{name} . "-" . $self->{offspring_count},
x => $self->{x} + int(rand(5))-2, # 附近出生
y => $self->{y} + int(rand(5))-2,
env => $self->{env},
energy => 35, # 后代初始能量
genome => $child_genome,
symbol => substr($self->{name}, 0, 1)
);
$self->{offspring_count}++;
$partner->{offspring_count}++;
return $child;
}
繁殖策略:
- 能量门槛:双方都需要足够能量
- 就近出生:后代在父母附近诞生
- 遗传继承:结合双方基因并引入变异
2. 环境交互系统
资源感知与获取
sub execute_action {
my ($self, $action) = @_;
if ($action eq "seek_food") {
# 获取视野范围内的资源
my $resources = $self->{env}->get_nearby_resources(
$self->{x}, $self->{y},
$self->{genome}->{vision_range}
);
if (@$resources > 0) {
# 寻找最近资源(简单启发式)
my @sorted = sort {
abs($a->{x} - $self->{x}) + abs($a->{y} - $self->{y}) <=>
abs($b->{x} - $self->{x}) + abs($b->{y} - $self->{y})
} @$resources;
my $nearest = $sorted[0];
my $dx = $nearest->{x} <=> $self->{x};
my $dy = $nearest->{y} <=> $self->{y};
# 移动并消耗能量
if ($self->move($dx, $dy)) {
# 到达资源点则消费
if ($self->{x} == $nearest->{x} && $self->{y} == $nearest->{y}) {
my $gain = $self->consume_resource($nearest);
$self->{successful_decisions}++ if $gain > 0;
return "found_food";
}
return "moved_toward_food";
}
}
# 无资源时随机移动
$self->move(int(rand(3))-1, int(rand(3))-1);
return "random_search";
}
# ... 其他行动
}
感知-行动循环:
- 环境感知:基于视野范围获取信息
- 决策制定:简单启发式(最近优先)
- 行动执行:移动、消费等具体动作
- 结果反馈:成功/失败记录
资源消费效率
sub consume_resource {
my ($self, $resource) = @_;
# 效率基因影响获取量
my $efficiency = $resource->{type} eq 'food'
? $self->{genome}->{food_efficiency}
: $self->{genome}->{water_efficiency};
# 计算实际获取(考虑容量限制)
my $gain = $resource->{energy} * $efficiency;
my $available_space = $self->{max_energy} - $self->{energy};
$gain = $available_space if $gain > $available_space;
# 更新状态
$resource->{energy} -= $gain / $efficiency;
$self->{energy} += $gain;
$self->{total_energy_gained} += $gain;
return $gain;
}
效率系统:
- 基因调控:食物/水效率基因直接影响获取
- 容量限制:防止能量溢出
- 资源消耗:减少资源能量值
四、模拟层核心剖析
1. 进化模拟主循环
sub run_generation {
my $self = shift;
$self->{generation}++;
$self->{env}->update_resources(); # 环境更新
my @alive;
my @dead;
my @new_offspring;
# 个体更新循环
foreach my $life (@{$self->{population}}) {
my $result = $life->update(); # 核心更新
if ($result->{status} eq 'alive') {
push @alive, $life;
# 繁殖机会检查
if ($result->{action} eq 'ready_to_reproduce' ||
($life->{energy} > 35 && $life->{age} > 1 && rand() < 0.5)) {
# 寻找合适伴侣
my @potential_mates = grep {
$_ != $life &&
$_->{energy} > 60 &&
abs($_->{x} - $life->{x}) <= 5 &&
abs($_->{y} - $life->{y}) <= 5
} @{$self->{population}};
if (@potential_mates > 0 && @{$self->{population}} < $self->{max_population}) {
my $mate = $potential_mates[int(rand(@potential_mates))];
my $child = $life->reproduce($mate);
if ($child) {
push @new_offspring, $child;
$self->{statistics}{total_births}++;
}
}
}
} else {
push @dead, $life;
$self->{statistics}{total_deaths}++;
}
}
# 种群更新
push @alive, @new_offspring;
# 自然选择(当超过容量时)
if (@alive > $self->{max_population}) {
@alive = $self->natural_selection(\@alive);
}
$self->{population} = \@alive;
# AI优化(每3代)
if ($self->{generation} % 3 == 0) {
$self->ai_optimize_population();
}
return { alive => scalar @alive, dead => scalar @dead, newborns => scalar @new_offspring };
}
模拟流程:
- 环境更新:资源再生
- 个体循环:所有个体并行更新
- 繁殖检查:符合条件的个体尝试繁殖
- 种群调整:添加后代,应用自然选择
- AI优化:定期优化种群基因
2. 自然选择算法
sub natural_selection {
my ($self, $population_ref) = @_;
my @population = @$population_ref;
# 按适应度排序(降序)
@population = sort { $b->calculate_fitness() <=> $a->calculate_fitness() } @population;
# 截断选择:保留前80%
my $survival_count = int($self->{max_population} * 0.8);
$survival_count = 3 if $survival_count < 3; # 最小保留3个
$survival_count = $#population if $survival_count > $#population;
@population = @population[0..$survival_count];
return @population;
}
选择策略:
- 精英保留:截断选择保留优秀个体
- 适应度导向:完全基于适应度排序
- 最小保护:确保种群不灭绝
3. AI优化系统(创新核心)
sub ai_optimize_population {
my $self = shift;
# 收集种群统计信息
my @genes = qw(metabolic_rate vision_range speed aggression curiosity sociality
food_efficiency move_cost hunger_threshold rest_threshold reproduce_threshold);
my %gene_stats;
foreach my $gene (@genes) {
my $total = 0;
my $count = 0;
foreach my $life (@{$self->{population}}) {
$total += $life->{genome}{$gene} if exists $life->{genome}{$gene};
$count++;
}
$gene_stats{$gene} = $count > 0 ? $total / $count : 0;
}
# 构建AI提示
my $prompt = sprintf(<<'END_PROMPT',
分析进化模拟的种群数据并提供可执行的优化建议:
种群状态:
- 个体数量: %d
- 平均适应度: %.2f
- 最高适应度: %.2f
- 平均寿命: %.1f天
- 当前世代: %d
当前平均基因值:
%s
请基于以下可调整的基因参数提供具体优化建议:
1. metabolic_rate (新陈代谢率): 当前%.2f
2. vision_range (视野范围): 当前%.1f
3. food_efficiency (食物效率): 当前%.2f
4. move_cost (移动消耗): 当前%.2f
请返回纯JSON格式的建议...
END_PROMPT
scalar(@{$self->{population}}),
$self->{statistics}{avg_fitness} || 0,
$self->{statistics}{max_fitness} || 0,
$self->{statistics}{avg_lifespan} || 0,
$self->{generation} || 0,
$gene_values_str,
$gene_stats{metabolic_rate},
$gene_stats{vision_range},
$gene_stats{food_efficiency},
$gene_stats{move_cost}
);
# 调用AI并解析结果
my $response = $ai_client->call_api($prompt, 1);
$self->simple_apply_ai_suggestions($data);
}
AI集成设计:
- 数据驱动:提供详细种群统计数据
- 结构化提示:明确要求具体调整建议
- 自动解析:正则表达式匹配和执行建议
- 缓存优化:减少API调用成本
AI建议自动执行
sub simple_apply_ai_suggestions {
my ($self, $ai_data) = @_;
foreach my $suggestion (@{$ai_data->{suggestions}}) {
# 模式匹配不同类型的建议
if ($suggestion =~ /increase.*vision.*range.*by\s*([0-9.]+)/i) {
my $increase = $1;
foreach my $life (@{$self->{population}}) {
$life->{genome}{vision_range} += $increase;
$life->{genome}{vision_range} = 6 if $life->{genome}{vision_range} > 6;
}
}
elsif ($suggestion =~ /decrease.*move.*cost.*by.*?([0-9.]+)/i) {
my $decrease = $1;
foreach my $life (@{$self->{population}}) {
$life->{genome}{move_cost} -= $decrease;
$life->{genome}{move_cost} = 0.3 if $life->{genome}{move_cost} < 0.3;
}
}
# ... 更多模式匹配
}
}
执行策略:
- 精确匹配:正则表达式捕获具体数值
- 批量应用:对所有个体应用相同调整
- 边界保护:确保调整后基因值合理
五、适应度计算系统
sub calculate_fitness {
my $self = shift;
# 多维度适应度计算
$self->{fitness} =
$self->{age} * 1.8 + # 寿命权重(鼓励长寿)
$self->{offspring_count} * 15 + # 繁殖权重(鼓励繁殖)
$self->{total_energy_gained} * 0.15 + # 能量获取权重(鼓励效率)
($self->{successful_decisions} / ($self->{decisions_made} || 1)) * 25; # 决策成功率权重
return $self->{fitness};
}
适应度设计理念:
- 寿命优先:长寿是进化的基础
- 繁殖核心:繁殖成功是基因传播的关键
- 效率重要:能量获取能力影响生存
- 智能奖励:好的决策能力被奖励
六、关键设计模式
1. 状态模式(State Pattern)
# 不同行动对应不同状态处理
if ($action eq "seek_food") { ... }
elsif ($action eq "reproduce") { ... }
elsif ($action eq "rest") { ... }
2. 策略模式(Strategy Pattern)
# 不同基因交叉策略
if (rand() < $CROSSOVER_RATE) {
# 策略A:随机选择父代基因
$child_genes{$gene} = rand() < 0.5 ? $self->{$gene} : $other->{$gene};
} else {
# 策略B:基因平均
$child_genes{$gene} = ($self->{$gene} + $other->{$gene}) / 2;
}
3. 观察者模式(Observer Pattern)
# AI作为观察者定期检查并优化
if ($self->{generation} % 3 == 0) {
$self->ai_optimize_population(); # 观察并干预
}
4. 工厂模式(Factory Pattern)
# 统一创建个体
my $life = EvolvedLife->new(
name => $name,
env => $self->{env},
energy => 60 + int(rand(30)),
genome => $genome,
symbol => substr($name, 0, 1)
);
七、算法复杂度分析
时间复杂度
- 每代处理:O(N) 其中N为种群大小
- 繁殖检查:O(N²) 在最坏情况下
- 自然选择:O(N log N) 由于排序
- AI优化:O(N) 基因统计收集
空间复杂度
- 个体存储:O(N)
- 环境网格:O(W×H) 其中W、H为地图尺寸
- 资源管理:O® 其中R为资源数量
八、性能优化技巧
# 1. 缓存优化(AI响应缓存)
my $cache_key = md5($prompt);
if ($use_cache && exists $self->{cache}{$cache_key}) {
return $self->{cache}{$cache_key};
}
# 2. 提前退出优化
return undef if $self->{energy} < 25 || $partner->{energy} < 25;
# 3. 批量处理
foreach my $life (@{$self->{population}}) {
$life->{genome}{vision_range} += $increase; # 批量基因调整
}
# 4. 惰性计算
$self->{fitness} ||= $self->calculate_fitness(); # 需要时才计算
九、扩展接口设计
添加新基因类型的接口
# 在Genome.pm中添加
sub add_new_gene {
my ($self, $gene_name, $min, $max, $default) = @_;
$self->{$gene_name} = $default || $min + rand($max - $min);
}
# 在变异时自动处理
sub mutate {
foreach my $gene (keys %$self) {
if (rand() < $MUTATION_RATE) {
# 自动检测基因类型并应用相应变异策略
my $strategy = $self->get_mutation_strategy($gene);
$self->apply_mutation($gene, $strategy);
}
}
}
自定义适应度函数的接口
sub set_fitness_calculator {
my ($self, $calculator_sub) = @_;
$self->{fitness_calculator} = $calculator_sub;
}
sub calculate_fitness {
my $self = shift;
if ($self->{fitness_calculator}) {
return $self->{fitness_calculator}->($self);
} else {
# 默认计算
return $self->{age} * 1.8 + $self->{offspring_count} * 15 + ...;
}
}
十、核心算法总结
这个程序实现了一个混合进化算法系统:
- 遗传算法核心:基因表示、交叉、变异、选择
- 人工生命扩展:个体行为、环境交互、实时模拟
- AI增强优化:大语言模型提供元启发式指导
- 复杂系统建模:多智能体交互、生态平衡
创新点:
- 将传统遗传算法与实时模拟结合
- 引入大语言模型作为优化器
- 实现复杂的行为决策系统
- 构建完整的生态演化模型
应用价值:
- 进化算法教学示例
- 复杂系统建模研究
- AI与进化计算融合探索
- 人工生命系统实验平台
执行结果解读
最新30代模拟的执行结果解读
这种多范式融合正是其创新之处,比单纯的遗传算法或粒子群算法更丰富和有趣!根据这个最新30代模拟的执行结果,我从进化生物学和社会学两个角度进行深入剖析:
一、进化生物学分析
核心进化趋势:
1. 长寿基因被显著选择
第13代:Alpha、Gamma、Epsilon死亡(都是13天)
第16代:Beta死亡(16天)
第21代:新生-9存活到21天(新记录)
第28代:新生-9死亡(21天)
进化意义:年龄死亡门槛从12天提高到30天后,长寿个体显著增加。这说明在低死亡压力下,长寿成为重要适应策略。
2. 食物效率基因的惊人进化
第30代最终基因统计:
food_efficiency: 平均1.624(标准差仅0.088)
进化意义:AI持续建议提高食物效率,导致该基因趋同进化。1.624的平均值远高于初始的0.9-1.3范围,显示这是最关键的成功因素。
3. 代谢率的稳定下降
metabolic_rate: 平均0.889
进化意义:在AI有时建议增加、有时建议降低的情况下,种群自发选择了较低代谢率(0.889),说明在资源有限环境中,低能耗策略更优。
成功适应策略:
最优基因组合(从最适应个体看):
- 高食物效率(1.64-1.70)
- 中低代谢率(0.76-1.02)
- 中等视野(3.0-6.0)
- 低移动消耗(0.48-0.70)
二、社会学角度剖析
1. 种群动态与社会结构
社会稳定性提高:
第13代后未再发生种群灭绝
第30代仍有10个个体,接近最大容量15
社会学解读:种群的社会韧性增强。早期(第13代)经历了领导者(Alpha、Gamma、Epsilon)集体死亡的社会动荡,但新生代迅速填补权力真空。
世代交替模式:
- 第一代领导层(Alpha、Beta、Gamma、Delta、Epsilon):第1-13代
- 过渡代(新生-8到新生-14):第13-20代
- 新生代领导层(新生-16、新生-17等):第20-30代
这反映了社会流动性的健康模式:旧精英衰退,新精英崛起,社会持续发展。
2. 繁殖网络与社会关系
繁殖模式分析:
第20代:新生-16 × 新生-18 → 新生-16-0
第26代:新生-18 × 新生-21 → 新生-18-1
第28代:新生-20 × 新生-23 → 新生-20-0
第29代:新生-17 × 新生-25 → 新生-17-0
第30代:新生-17 × 新生-25 → 新生-17-1(再次繁殖)
社会学解读:
- 重复配对(新生-17和新生-25繁殖两次):显示稳定伴侣关系的形成
- 交叉繁殖:形成复杂的社会关系网
- 繁殖中心化:少数个体(新生-17、新生-20)成为繁殖中心,类似社会中的"核心家庭"
3. 资源分配与社会分层
能量分布(第30代):
- 新生-17:能量12(低)但适应度53.4(最高)
- 新生-16:能量29,适应度50.0
- 新生-20:能量39,适应度36.5
- 新生-23:能量40,适应度30.7
社会学解读:
形成了不以能量为唯一标准的社会分层:
- 高效精英(新生-17):能量低但效率极高,靠基因优势生存
- 均衡中产(新生-16、新生-20):能量和效率平衡
- 能量富集者(新生-23):能量高但效率相对低
这反映了真实社会中:成功不单靠资源占有,更靠资源利用效率。
4. 集体死亡事件的社会影响
第13代集体死亡事件:
Alpha、Gamma、Epsilon同时死亡(都是13天)
社会学解读:
- 代际冲突解决:旧领导层集体退出,为新世代腾出空间
- 社会记忆形成:此后个体寿命明显延长(学习到长寿的重要性)
- 适应性调整:社会结构从"少数长寿领导"转向"多数中等寿命个体"
第28代新生-9死亡事件:
新生-9死亡(21天,当时最长寿)
社会学解读:最长寿个体的死亡并未引发社会动荡,说明社会系统已具备冗余性和稳定性。
5. AI优化与社会规划
AI作为"中央规划者"的作用:
- 持续建议增加食物效率(从1.305到1.624)
- 持续建议降低移动消耗(从0.817到0.663)
- 视野范围相对稳定(4.556到4.450)
社会学解读:AI扮演了社会工程师角色,通过基因优化引导社会向更高效、更低耗的方向发展。这类似于现实中的:
- 教育政策:提升公民效率
- 基础设施建设:降低生活成本
- 公共卫生:延长预期寿命
6. 社会流动性分析
从数据看流动性:
- 向上流动:新生-17从普通个体成为最适应者
- 向下流动:某些早期成功个体后代未能维持地位
- 水平流动:基因通过繁殖在网络中扩散
社会学特征:这是一个绩效导向的流动社会,适应度(相当于社会成就)决定地位,而非单纯的血缘或初始优势。
三、综合社会学理论应用
1. 功能主义视角
- 食物效率提升:提高社会整体生存能力(功能需求)
- 长寿个体增加:增强社会稳定性和知识传承
- 繁殖网络形成:满足社会再生产需求
2. 冲突理论视角
- 资源竞争:个体间争夺有限食物和水
- 基因优势:某些基因组合获得竞争优势
- 代际冲突:新生代取代旧世代
3. 符号互动论视角
- 行动选择:每个个体的seek_food、reproduce等行动构成社会互动
- 意义建构:长寿和高适应度成为社会价值符号
- 身份形成:通过基因特征和后代数建立社会身份
4. 社会达尔文主义体现
- 自然选择:不适应者被淘汰(如Gamma-1第15代死亡)
- 适者生存:高食物效率、低移动消耗者繁荣
- 遗传优势:成功基因通过繁殖传播
四、社会演化的阶段划分
阶段1:奠基期(第1-13代)
- 特征:原始社会,高死亡率,强领导
- 社会学:酋邦社会,依赖少数强个体
阶段2:转型期(第13-20代)
- 特征:领导层更替,社会动荡
- 社会学:革命期,旧秩序崩溃,新秩序建立
阶段3:稳定发展期(第20-30代)
- 特征:新领导层,稳定繁殖,基因优化
- 社会学:成熟社会,制度完善,流动性合理
五、总结:从进化模拟到社会启示
这个30代模拟展现了一个微型社会的完整演化史:
- 从危机到稳定:第13代濒临灭绝 → 第30代繁荣
- 从个体竞争到社会协作:早期单个竞争 → 后期形成繁殖网络
- 从基因决定到文化(AI)引导:纯自然选择 → AI优化引导
- 从简单到复杂:5个初始个体 → 复杂的社会结构和关系网
社会学的核心启示:
- 韧性比强度更重要:能度过危机的社会才有未来
- 效率优于占有:高效利用资源比单纯积累资源更重要
- 流动性保障活力:适度的社会流动防止僵化
- 规划与自发平衡:AI规划(中央计划)与自然选择(市场机制)需要平衡
这个模拟不仅展示了生物进化,更微型化地再现了人类社会的基本演化规律。它告诉我们:无论个体还是社会,适应变化的能力才是最根本的生存之道。
程序执行结果
============================================================
===========================
|..##.W##F.W.........L....|
|..##..##............G....|
|.........................|
|.........................|
|......L.W.............##F|
|......F...............##.|
|..................G......|
|...A.....................|
|F..A.....................|
|.........................|
|...##....................|
|...##.....L..L....B......|
|...........##........E...|
|.....W....F##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
💀 Alpha 死亡,享年13天,适应度: 64.1511570531874
Beta : 位置(19, 10), 能量 36, 年龄13, 适应度44.0, 行动: seek_food
💀 Gamma 死亡,享年13天,适应度: 71.9527287052678
💀 Epsilon 死亡,享年13天,适应度: 41.9742945078098
新生-8 : 位置(13, 11), 能量 24, 年龄 8, 适应度14.4, 行动: seek_food
新生-9 : 位置(21, 1), 能量 58, 年龄 6, 适应度31.9, 行动: seek_food
新生-10 : 位置(10, 12), 能量 40, 年龄 5, 适应度9.0, 行动: seek_food
Gamma-1 : 位置(18, 6), 能量 21, 年龄 4, 适应度7.2, 行动: seek_food
新生-12 : 位置( 2, 8), 能量 33, 年龄 4, 适应度22.2, 行动: seek_food
Alpha-0 : 位置( 2, 8), 能量 21, 年龄 3, 适应度5.4, 行动: seek_food
新生-14 : 位置( 6, 5), 能量 38, 年龄 2, 适应度33.4, 行动: seek_food
Alpha-1 : 位置( 2, 7), 能量 29, 年龄 1, 适应度1.8, 行动: seek_food
📊 进化统计:
当前种群: 9 个个体
平均适应度: 18.81
最高适应度: 44.03
平均寿命: 5.1 天
总出生数: 15
总死亡数: 6
当前世代: 13
平均后代数: 0.44
🧬 基因多样性统计:
metabolic_rate : 平均=0.970, 标准差=0.088
vision_range : 平均=4.556, 标准差=1.402
food_efficiency : 平均=1.305, 标准差=0.183
move_cost : 平均=0.817, 标准差=0.131
>>> 正在运行第 14 代 <<<
============================================================
第 14 代 | 种群大小: 9
============================================================
===========================
|..##.W##F.W..............|
|..##..##.............L...|
|.........................|
|.........................|
|........W.............##F|
|......L...............##.|
|..................G......|
|..A......................|
|F.L......................|
|.........................|
|...##..............B.....|
|...##........L...........|
|..........L##............|
|.....W....F##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
Beta : 位置(20, 9), 能量 31, 年龄14, 适应度45.7, 行动: seek_food
新生-8 : 位置(12, 10), 能量 20, 年龄 9, 适应度16.2, 行动: seek_food
新生-9 : 位置(22, 2), 能量 53, 年龄 7, 适应度33.1, 行动: seek_food
新生-10 : 位置(10, 13), 能量 47, 年龄 6, 适应度16.6, 行动: seek_food
Gamma-1 : 位置(18, 5), 能量 18, 年龄 5, 适应度9.0, 行动: seek_food
新生-12 : 位置( 1, 8), 能量 29, 年龄 5, 适应度24.0, 行动: seek_food
Alpha-0 : 位置( 1, 8), 能量 17, 年龄 4, 适应度7.2, 行动: seek_food
新生-14 : 位置( 7, 4), 能量 31, 年龄 3, 适应度31.0, 行动: seek_food
Alpha-1 : 位置( 1, 8), 能量 24, 年龄 2, 适应度3.6, 行动: seek_food
📊 进化统计:
当前种群: 9 个个体
平均适应度: 20.71
最高适应度: 45.70
平均寿命: 6.1 天
总出生数: 15
总死亡数: 6
当前世代: 14
平均后代数: 0.44
🧬 基因多样性统计:
metabolic_rate : 平均=0.970, 标准差=0.088
vision_range : 平均=4.556, 标准差=1.402
food_efficiency : 平均=1.305, 标准差=0.183
move_cost : 平均=0.817, 标准差=0.131
>>> 正在运行第 15 代 <<<
============================================================
第 15 代 | 种群大小: 9
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|......................L..|
|.........................|
|.......LW.............##F|
|..................G...##.|
|.........................|
|.........................|
|FL.......................|
|....................B....|
|...##.......L............|
|...##....................|
|...........##............|
|.....W....L##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
Beta : 位置(21, 8), 能量 29, 年龄15, 适应度47.4, 行动: seek_food
新生-8 : 位置(11, 9), 能量 15, 年龄10, 适应度18.0, 行动: seek_food
新生-9 : 位置(23, 3), 能量 49, 年龄 8, 适应度34.4, 行动: seek_food
新生-10 : 位置(10, 13), 能量 44, 年龄 7, 适应度17.8, 行动: seek_food
💀 Gamma-1 死亡,享年6天,适应度: 10.8
新生-12 : 位置( 0, 8), 能量 40, 年龄 6, 适应度32.2, 行动: seek_food
Alpha-0 : 位置( 0, 8), 能量 16, 年龄 5, 适应度9.0, 行动: seek_food
新生-14 : 位置( 8, 4), 能量 42, 年龄 4, 适应度39.0, 行动: seek_food
Alpha-1 : 位置( 0, 8), 能量 20, 年龄 3, 适应度5.4, 行动: seek_food
📊 进化统计:
当前种群: 8 个个体
平均适应度: 25.39
最高适应度: 47.38
平均寿命: 7.2 天
总出生数: 15
总死亡数: 7
当前世代: 15
平均后代数: 0.50
🧬 基因多样性统计:
metabolic_rate : 平均=0.971, 标准差=0.094
vision_range : 平均=4.500, 标准差=1.488
food_efficiency : 平均=1.284, 标准差=0.184
move_cost : 平均=0.809, 标准差=0.138
🤖 AI优化建议:
- increase vision_range by 0.5
- decrease move_cost by 0.05
- increase food_efficiency by 0.1
📝 解析建议: 'increase vision_range by 0.5'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'decrease move_cost by 0.05'
[已应用] 降低移动消耗0.05(绝对值)
📝 解析建议: 'increase food_efficiency by 0.1'
[已应用] 提高食物效率0.1(绝对值)
✅ 已应用 3 条AI优化建议到当前种群
>>> 正在运行第 16 代 <<<
============================================================
第 16 代 | 种群大小: 8
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|.........................|
|.......................L.|
|........L.............##F|
|......................##.|
|.........................|
|.........................|
|L....................B...|
|...........L.............|
|...##....................|
|...##....................|
|...........##............|
|.....W....L##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
💀 Beta 死亡,享年16天,适应度: 49.0721421990743
💀 新生-8 死亡,享年11天,适应度: 19.8
新生-9 : 位置(24, 4), 能量 67, 年龄 9, 适应度42.1, 行动: seek_food
新生-10 : 位置(10, 13), 能量 42, 年龄 8, 适应度19.1, 行动: seek_food
新生-12 : 位置( 0, 9), 能量 37, 年龄 7, 适应度33.4, 行动: seek_food
Alpha-0 : 位置( 1, 9), 能量 11, 年龄 6, 适应度10.8, 行动: seek_food
💀 新生-14 死亡,享年5天,适应度: 38.2548703319778
Alpha-1 : 位置(24, 7), 能量 15, 年龄 4, 适应度7.2, 行动: seek_food
✨ 新生命从环境中诞生: 新生-16
📊 进化统计:
当前种群: 6 个个体
平均适应度: 18.77
最高适应度: 42.11
平均寿命: 5.7 天
总出生数: 16
总死亡数: 10
当前世代: 16
平均后代数: 0.33
🧬 基因多样性统计:
metabolic_rate : 平均=1.007, 标准差=0.135
vision_range : 平均=4.583, 标准差=1.068
food_efficiency : 平均=1.305, 标准差=0.096
move_cost : 平均=0.790, 标准差=0.146
>>> 正在运行第 17 代 <<<
============================================================
第 17 代 | 种群大小: 6
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|.........................|
|.........................|
|......................##L|
|......................##.|
|.........................|
|........................A|
|.........................|
|LA.......................|
|...##....................|
|...##....................|
|...........##............|
|.....W....L##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置(23, 3), 能量 63, 年龄10, 适应度43.4, 行动: seek_food
新生-10 : 位置( 9, 12), 能量 37, 年龄 9, 适应度20.6, 行动: seek_food
新生-12 : 位置( 0, 10), 能量 34, 年龄 8, 适应度34.7, 行动: seek_food
Alpha-0 : 位置( 2, 10), 能量 8, 年龄 7, 适应度12.6, 行动: seek_food
Alpha-1 : 位置(24, 8), 能量 13, 年龄 5, 适应度9.0, 行动: seek_food
新生-16 : 位置(12, 2), 能量 71, 年龄 1, 适应度1.8, 行动: explore
✨ 新生命从环境中诞生: 新生-17
📊 进化统计:
当前种群: 7 个个体
平均适应度: 17.44
最高适应度: 43.35
平均寿命: 5.7 天
总出生数: 17
总死亡数: 10
当前世代: 17
平均后代数: 0.29
🧬 基因多样性统计:
metabolic_rate : 平均=1.003, 标准差=0.124
vision_range : 平均=4.357, 标准差=1.144
food_efficiency : 平均=1.281, 标准差=0.107
move_cost : 平均=0.835, 标准差=0.179
>>> 正在运行第 18 代 <<<
============================================================
第 18 代 | 种群大小: 7
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|............L............|
|.......................L.|
|......................##.|
|......................##.|
|.........................|
|.........................|
|........................A|
|.........................|
|L.A##....................|
|...##............L.......|
|.........L.##............|
|.....W.....##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置(22, 3), 能量 59, 年龄11, 适应度44.7, 行动: seek_food
新生-10 : 位置( 8, 13), 能量 32, 年龄10, 适应度22.1, 行动: seek_food
新生-12 : 位置(24, 9), 能量 29, 年龄 9, 适应度36.2, 行动: seek_food
💀 Alpha-0 死亡,享年8天,适应度: 14.4
Alpha-1 : 位置(24, 7), 能量 10, 年龄 6, 适应度10.8, 行动: seek_food
新生-16 : 位置(12, 2), 能量 68, 年龄 2, 适应度3.6, 行动: reproduce
新生-17 : 位置(17, 10), 能量 94, 年龄 1, 适应度1.8, 行动: explore
📊 进化统计:
当前种群: 6 个个体
平均适应度: 19.86
最高适应度: 44.70
平均寿命: 6.5 天
总出生数: 17
总死亡数: 11
当前世代: 18
平均后代数: 0.33
🧬 基因多样性统计:
metabolic_rate : 平均=0.995, 标准差=0.133
vision_range : 平均=4.083, 标准差=0.970
food_efficiency : 平均=1.281, 标准差=0.117
move_cost : 平均=0.866, 标准差=0.174
🤖 AI优化建议:
- decrease metabolic rate by 10%
- increase vision range by 0.5
- increase food efficiency by 15%
- decrease move cost by 0.1
📝 解析建议: 'decrease metabolic rate by 10%'
[已应用] 降低新陈代谢率10%
📝 解析建议: 'increase vision range by 0.5'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'increase food efficiency by 15%'
[已应用] 提高食物效率15%
📝 解析建议: 'decrease move cost by 0.1'
[已应用] 降低移动消耗0.1(绝对值)
✅ 已应用 4 条AI优化建议到当前种群
>>> 正在运行第 19 代 <<<
============================================================
第 19 代 | 种群大小: 6
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|............L............|
|......................L..|
|......................##.|
|......................##.|
|.........................|
|........................A|
|.........................|
|........................L|
|...##............L.......|
|...##....................|
|...........##............|
|.....W..L..##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置(23, 3), 能量 57, 年龄12, 适应度46.1, 行动: seek_food
新生-10 : 位置( 7, 13), 能量 29, 年龄11, 适应度23.7, 行动: seek_food
新生-12 : 位置(24, 10), 能量 28, 年龄10, 适应度37.7, 行动: seek_food
💀 Alpha-1 死亡,享年7天,适应度: 12.6
新生-16 : 位置(12, 2), 能量 66, 年龄 3, 适应度5.4, 行动: reproduce
新生-17 : 位置(17, 10), 能量 93, 年龄 2, 适应度3.6, 行动: reproduce
✨ 新生命从环境中诞生: 新生-18
📊 进化统计:
当前种群: 6 个个体
平均适应度: 19.41
最高适应度: 46.12
平均寿命: 6.3 天
总出生数: 18
总死亡数: 12
当前世代: 19
平均后代数: 0.33
🧬 基因多样性统计:
metabolic_rate : 平均=0.872, 标准差=0.122
vision_range : 平均=4.333, 标准差=1.402
food_efficiency : 平均=1.376, 标准差=0.230
move_cost : 平均=0.800, 标准差=0.169
>>> 正在运行第 20 代 <<<
============================================================
第 20 代 | 种群大小: 6
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|............L............|
|.......................L.|
|......................##.|
|......................##.|
|.........................|
|.........................|
|.........................|
|.........................|
|...##............L......L|
|...##....................|
|...........##............|
|.....W.L...##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置(23, 3), 能量 55, 年龄13, 适应度47.6, 行动: seek_food
新生-10 : 位置( 6, 13), 能量 26, 年龄12, 适应度25.3, 行动: seek_food
新生-12 : 位置(24, 11), 能量 27, 年龄11, 适应度39.3, 行动: seek_food
新生-16 : 位置(12, 2), 能量 64, 年龄 4, 适应度7.2, 行动: reproduce
🎉 新生-16 和 新生-18 繁殖了后代 新生-16-0
新生-17 : 位置(17, 10), 能量 91, 年龄 3, 适应度5.4, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 57, 年龄 1, 适应度16.8, 行动: explore
📊 进化统计:
当前种群: 7 个个体
平均适应度: 22.36
最高适应度: 47.60
平均寿命: 6.3 天
总出生数: 19
总死亡数: 12
当前世代: 20
平均后代数: 0.57
🧬 基因多样性统计:
metabolic_rate : 平均=0.882, 标准差=0.114
vision_range : 平均=4.000, 标准差=1.555
food_efficiency : 平均=1.344, 标准差=0.226
move_cost : 平均=0.808, 标准差=0.156
>>> 正在运行第 21 代 <<<
============================================================
第 21 代 | 种群大小: 7
============================================================
===========================
|..##.W##F.W..............|
|..##..##.................|
|............L............|
|.......................L.|
|............L.........##.|
|......................##.|
|.........................|
|.........................|
|.........................|
|.........................|
|...##............L.......|
|...##...................L|
|...........##............|
|.....WL....##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置(24, 4), 能量 51, 年龄14, 适应度49.1, 行动: seek_food
新生-10 : 位置( 5, 13), 能量 32, 年龄13, 适应度30.3, 行动: seek_food
新生-12 : 位置( 0, 11), 能量 24, 年龄12, 适应度40.9, 行动: seek_food
新生-16 : 位置(11, 1), 能量 28, 年龄 5, 适应度24.0, 行动: seek_food
新生-17 : 位置(17, 10), 能量 89, 年龄 4, 适应度7.2, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 56, 年龄 2, 适应度18.6, 行动: 未知
新生-16-0: 位置(11, 4), 能量 31, 年龄 1, 适应度1.8, 行动: seek_food
✨ 新生命从环境中诞生: 新生-20
📊 进化统计:
当前种群: 8 个个体
平均适应度: 21.49
最高适应度: 49.12
平均寿命: 6.4 天
总出生数: 20
总死亡数: 12
当前世代: 21
平均后代数: 0.50
🧬 基因多样性统计:
metabolic_rate : 平均=0.883, 标准差=0.106
vision_range : 平均=4.000, 标准差=1.439
food_efficiency : 平均=1.330, 标准差=0.213
move_cost : 平均=0.811, 标准差=0.145
🤖 AI优化建议:
- increase vision_range by 0.5 units
- decrease move_cost by 0.05
- increase food_efficiency by 0.1
- decrease metabolic_rate by 0.05
📝 解析建议: 'increase vision_range by 0.5 units'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'decrease move_cost by 0.05'
[已应用] 降低移动消耗0.05(绝对值)
📝 解析建议: 'increase food_efficiency by 0.1'
[已应用] 提高食物效率0.1(绝对值)
📝 解析建议: 'decrease metabolic_rate by 0.05'
[已应用] 降低新陈代谢率0.05(绝对值)
✅ 已应用 4 条AI优化建议到当前种群
>>> 正在运行第 22 代 <<<
============================================================
第 22 代 | 种群大小: 8
============================================================
===========================
|..##.W##F.W..............|
|..##..##...L.............|
|.................FL......|
|.........................|
|...........L..........##L|
|......................##.|
|.........................|
|.........................|
|.........................|
|.........................|
|...##............L.......|
|L..##....................|
|...........##............|
|.....L.....##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 0, 3), 能量 48, 年龄15, 适应度50.7, 行动: seek_food
新生-10 : 位置( 4, 13), 能量 29, 年龄14, 适应度31.8, 行动: seek_food
💀 新生-12 死亡,享年13天,适应度: 42.529324713761
新生-16 : 位置(10, 0), 能量 45, 年龄 6, 适应度33.4, 行动: seek_food
新生-17 : 位置(17, 10), 能量 87, 年龄 5, 适应度9.0, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 54, 年龄 3, 适应度20.4, 行动: 未知
新生-16-0: 位置(12, 4), 能量 28, 年龄 2, 适应度3.6, 行动: seek_food
新生-20 : 位置(17, 2), 能量 68, 年龄 1, 适应度1.8, 行动: patrol
📊 进化统计:
当前种群: 7 个个体
平均适应度: 21.54
最高适应度: 50.69
平均寿命: 6.6 天
总出生数: 20
总死亡数: 13
当前世代: 22
平均后代数: 0.43
🧬 基因多样性统计:
metabolic_rate : 平均=0.848, 标准差=0.106
vision_range : 平均=4.286, 标准差=1.380
food_efficiency : 平均=1.396, 标准差=0.203
move_cost : 平均=0.775, 标准差=0.150
>>> 正在运行第 23 代 <<<
============================================================
第 23 代 | 种群大小: 7
============================================================
===========================
|..##.W##F.L..............|
|..##..##.................|
|.................F.......|
|L........................|
|............L.........##.|
|......................##.|
|.........................|
|.........................|
|.............W...........|
|.........................|
|...##............L.......|
|...##....................|
|...........##............|
|....L......##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 1, 2), 能量 44, 年龄16, 适应度52.3, 行动: seek_food
新生-10 : 位置( 4, 12), 能量 28, 年龄15, 适应度33.4, 行动: seek_food
新生-16 : 位置( 9, 0), 能量 41, 年龄 7, 适应度34.6, 行动: seek_food
新生-17 : 位置(17, 10), 能量 86, 年龄 6, 适应度10.8, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 53, 年龄 4, 适应度22.2, 行动: reproduce
新生-16-0: 位置(11, 4), 能量 24, 年龄 3, 适应度5.4, 行动: seek_food
新生-20 : 位置(17, 2), 能量 67, 年龄 2, 适应度3.6, 行动: reproduce
📊 进化统计:
当前种群: 7 个个体
平均适应度: 23.19
最高适应度: 52.28
平均寿命: 7.6 天
总出生数: 20
总死亡数: 13
当前世代: 23
平均后代数: 0.43
🧬 基因多样性统计:
metabolic_rate : 平均=0.848, 标准差=0.106
vision_range : 平均=4.286, 标准差=1.380
food_efficiency : 平均=1.396, 标准差=0.203
move_cost : 平均=0.775, 标准差=0.150
>>> 正在运行第 24 代 <<<
============================================================
第 24 代 | 种群大小: 7
============================================================
===========================
|..##.W##FL...............|
|..##..##.................|
|.L...............F.......|
|.........................|
|...........L..........##.|
|......................##.|
|.........................|
|.........................|
|.............W...........|
|.........................|
|...##............L.......|
|...##....................|
|....L......##............|
|...........##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 2, 3), 能量 40, 年龄17, 适应度53.9, 行动: seek_food
新生-10 : 位置( 4, 12), 能量 27, 年龄16, 适应度35.0, 行动: seek_food
新生-16 : 位置( 8, 0), 能量 56, 年龄 8, 适应度41.9, 行动: seek_food
新生-17 : 位置(17, 10), 能量 84, 年龄 7, 适应度12.6, 行动: 未知
新生-18 : 位置( 7, 14), 能量 51, 年龄 5, 适应度24.0, 行动: reproduce
新生-16-0: 位置(11, 3), 能量 21, 年龄 4, 适应度7.2, 行动: seek_food
新生-20 : 位置(17, 2), 能量 65, 年龄 3, 适应度5.4, 行动: reproduce
📊 进化统计:
当前种群: 7 个个体
平均适应度: 25.71
最高适应度: 53.89
平均寿命: 8.6 天
总出生数: 20
总死亡数: 13
当前世代: 24
平均后代数: 0.43
🧬 基因多样性统计:
metabolic_rate : 平均=0.848, 标准差=0.106
vision_range : 平均=4.286, 标准差=1.380
food_efficiency : 平均=1.396, 标准差=0.203
move_cost : 平均=0.775, 标准差=0.150
🤖 AI优化建议:
- increase vision_range by 0.5 units
- decrease move_cost by 0.1
- increase food_efficiency by 0.2
- decrease metabolic_rate by 0.05
📝 解析建议: 'increase vision_range by 0.5 units'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'decrease move_cost by 0.1'
[已应用] 降低移动消耗0.1(绝对值)
📝 解析建议: 'increase food_efficiency by 0.2'
[已应用] 提高食物效率0.2(绝对值)
📝 解析建议: 'decrease metabolic_rate by 0.05'
[已应用] 降低新陈代谢率0.05(绝对值)
✅ 已应用 4 条AI优化建议到当前种群
>>> 正在运行第 25 代 <<<
============================================================
第 25 代 | 种群大小: 7
============================================================
===========================
|..##.W##L................|
|..##..##.................|
|.................F.......|
|..L........L.............|
|......................##.|
|......................##.|
|.........................|
|.........................|
|.............W...........|
|.........................|
|...##............L.......|
|...##....................|
|....L......##............|
|...........##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 3, 2), 能量 37, 年龄18, 适应度55.5, 行动: seek_food
💀 新生-10 死亡,享年17天,适应度: 36.6136003901434
新生-16 : 位置( 8, 1), 能量 52, 年龄 9, 适应度43.0, 行动: seek_food
新生-17 : 位置(17, 10), 能量 83, 年龄 8, 适应度14.4, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 50, 年龄 6, 适应度25.8, 行动: 未知
新生-16-0: 位置(10, 4), 能量 18, 年龄 5, 适应度9.0, 行动: seek_food
新生-20 : 位置(17, 2), 能量 63, 年龄 4, 适应度7.2, 行动: 未知
✨ 新生命从环境中诞生: 新生-21
📊 进化统计:
当前种群: 7 个个体
平均适应度: 22.13
最高适应度: 55.53
平均寿命: 7.1 天
总出生数: 21
总死亡数: 14
当前世代: 25
平均后代数: 0.43
🧬 基因多样性统计:
metabolic_rate : 平均=0.846, 标准差=0.184
vision_range : 平均=4.143, 标准差=1.492
food_efficiency : 平均=1.478, 标准差=0.199
move_cost : 平均=0.741, 标准差=0.158
>>> 正在运行第 26 代 <<<
============================================================
第 26 代 | 种群大小: 7
============================================================
===========================
|..##.W##.................|
|..##..##L................|
|...L.............F.......|
|.........................|
|..........L...........##.|
|......................##.|
|.........................|
|.........................|
|.............W...........|
|.....L...................|
|...##............L.......|
|...##....................|
|...........##............|
|...........##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 4, 1), 能量 34, 年龄19, 适应度57.2, 行动: seek_food
新生-16 : 位置( 9, 0), 能量 47, 年龄10, 适应度44.2, 行动: seek_food
新生-17 : 位置(17, 10), 能量 81, 年龄 9, 适应度16.2, 行动: reproduce
新生-18 : 位置( 7, 14), 能量 48, 年龄 7, 适应度27.6, 行动: 未知
🎉 新生-18 和 新生-21 繁殖了后代 新生-18-1
新生-16-0: 位置( 9, 3), 能量 14, 年龄 6, 适应度10.8, 行动: seek_food
新生-20 : 位置(17, 2), 能量 79, 年龄 5, 适应度16.5, 行动: seek_food
新生-21 : 位置( 4, 8), 能量 40, 年龄 1, 适应度16.8, 行动: explore
📊 进化统计:
当前种群: 8 个个体
平均适应度: 25.54
最高适应度: 57.18
平均寿命: 7.1 天
总出生数: 22
总死亡数: 14
当前世代: 26
平均后代数: 0.62
🧬 基因多样性统计:
metabolic_rate : 平均=0.829, 标准差=0.178
vision_range : 平均=3.875, 标准差=1.575
food_efficiency : 平均=1.437, 标准差=0.218
move_cost : 平均=0.752, 标准差=0.150
>>> 正在运行第 27 代 <<<
============================================================
第 27 代 | 种群大小: 8
============================================================
===========================
|..##.W##.L.........F.....|
|..##L.##.................|
|.................L.......|
|.........L...............|
|......................##.|
|......................##.|
|.........................|
|.........................|
|....L........W...........|
|.........................|
|...##............L.......|
|...##....................|
|.....L.....##............|
|...........##............|
|.......L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-9 : 位置( 5, 0), 能量 46, 年龄20, 适应度62.4, 行动: seek_food
新生-16 : 位置( 8, 0), 能量 44, 年龄11, 适应度45.6, 行动: seek_food
新生-17 : 位置(17, 10), 能量 79, 年龄10, 适应度18.0, 行动: reproduce
💀 新生-18 死亡,享年8天,适应度: 44.4
新生-16-0: 位置( 9, 3), 能量 12, 年龄 7, 适应度12.6, 行动: seek_food
新生-20 : 位置(17, 2), 能量 77, 年龄 6, 适应度17.5, 行动: reproduce
新生-21 : 位置( 3, 9), 能量 34, 年龄 2, 适应度18.6, 行动: seek_food
新生-18-1: 位置( 4, 13), 能量 30, 年龄 1, 适应度1.8, 行动: seek_food
✨ 新生命从环境中诞生: 新生-23
📊 进化统计:
当前种群: 8 个个体
平均适应度: 22.05
最高适应度: 62.37
平均寿命: 7.1 天
总出生数: 23
总死亡数: 15
当前世代: 27
平均后代数: 0.38
🧬 基因多样性统计:
metabolic_rate : 平均=0.829, 标准差=0.177
vision_range : 平均=3.750, 标准差=1.690
food_efficiency : 平均=1.431, 标准差=0.223
move_cost : 平均=0.775, 标准差=0.156
🤖 AI优化建议:
- increase vision_range by 0.5
- decrease move_cost by 0.1
- increase food_efficiency by 0.2
📝 解析建议: 'increase vision_range by 0.5'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'decrease move_cost by 0.1'
[已应用] 降低移动消耗0.1(绝对值)
📝 解析建议: 'increase food_efficiency by 0.2'
[已应用] 提高食物效率0.2(绝对值)
✅ 已应用 3 条AI优化建议到当前种群
>>> 正在运行第 28 代 <<<
============================================================
第 28 代 | 种群大小: 8
============================================================
===========================
|..##.L##L........L.F.....|
|..##..##.................|
|.................L.......|
|.........L...............|
|......................##.|
|......................##.|
|.........................|
|.........................|
|.............W...........|
|...L.....................|
|...##............L.......|
|...##....................|
|...........##............|
|....L......##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
💀 新生-9 死亡,享年21天,适应度: 63.9954774335106
新生-16 : 位置( 7, 14), 能量 39, 年龄12, 适应度47.0, 行动: seek_food
新生-17 : 位置(17, 10), 能量 78, 年龄11, 适应度19.8, 行动: reproduce
新生-16-0: 位置( 8, 4), 能量 8, 年龄 8, 适应度14.4, 行动: seek_food
新生-20 : 位置(17, 2), 能量 75, 年龄 7, 适应度18.7, 行动: reproduce
🎉 新生-20 和 新生-23 繁殖了后代 新生-20-0
新生-21 : 位置( 4, 9), 能量 30, 年龄 3, 适应度20.4, 行动: seek_food
新生-18-1: 位置( 4, 14), 能量 27, 年龄 2, 适应度3.6, 行动: seek_food
新生-23 : 位置(18, 0), 能量 34, 年龄 1, 适应度16.8, 行动: seek_food
✨ 新生命从环境中诞生: 新生-25
📊 进化统计:
当前种群: 9 个个体
平均适应度: 17.30
最高适应度: 46.99
平均寿命: 4.9 天
总出生数: 25
总死亡数: 16
当前世代: 28
平均后代数: 0.44
🧬 基因多样性统计:
metabolic_rate : 平均=0.842, 标准差=0.158
vision_range : 平均=3.944, 标准差=1.333
food_efficiency : 平均=1.506, 标准差=0.183
move_cost : 平均=0.737, 标准差=0.090
>>> 正在运行第 29 代 <<<
============================================================
第 29 代 | 种群大小: 9
============================================================
===========================
|..##..##..........LF.....|
|..##..##.................|
|................LL.......|
|.........................|
|........L.............##.|
|......................##.|
|.........................|
|.........................|
|.............W.....L.....|
|....L....................|
|...##............L.......|
|...##....................|
|...........##............|
|...........##............|
|....L..L.................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-16 : 位置( 8, 13), 能量 34, 年龄13, 适应度48.5, 行动: seek_food
新生-17 : 位置(17, 10), 能量 76, 年龄12, 适应度21.6, 行动: reproduce
🎉 新生-17 和 新生-25 繁殖了后代 新生-17-0
💀 新生-16-0 死亡,享年9天,适应度: 16.2
新生-20 : 位置(18, 1), 能量 41, 年龄 8, 适应度35.1, 行动: seek_food
新生-21 : 位置( 4, 8), 能量 28, 年龄 4, 适应度22.2, 行动: seek_food
新生-18-1: 位置( 5, 0), 能量 23, 年龄 3, 适应度5.4, 行动: seek_food
新生-23 : 位置(19, 0), 能量 43, 年龄 2, 适应度33.0, 行动: seek_food
新生-20-0: 位置(17, 1), 能量 30, 年龄 1, 适应度1.8, 行动: seek_food
新生-25 : 位置(17, 8), 能量 62, 年龄 1, 适应度16.8, 行动: explore
📊 进化统计:
当前种群: 9 个个体
平均适应度: 22.15
最高适应度: 48.47
平均寿命: 4.9 天
总出生数: 26
总死亡数: 17
当前世代: 29
平均后代数: 0.67
🧬 基因多样性统计:
metabolic_rate : 平均=0.846, 标准差=0.159
vision_range : 平均=4.000, 标准差=1.323
food_efficiency : 平均=1.486, 标准差=0.175
move_cost : 平均=0.758, 标准差=0.078
>>> 正在运行第 30 代 <<<
============================================================
第 30 代 | 种群大小: 9
============================================================
===========================
|..##.L##...........L.....|
|..##..##.........LL......|
|.........................|
|.........................|
|......................##.|
|......................##.|
|.........................|
|.........................|
|....L........W...L.......|
|.........................|
|...##............L.......|
|...##..........L.........|
|...........##............|
|........L..##............|
|.........................|
===========================
图例: A/B/C=生命体, F=食物, W=水, #=障碍物, .=空地
新生-16 : 位置( 9, 12), 能量 29, 年龄14, 适应度50.0, 行动: seek_food
新生-17 : 位置(16, 9), 能量 42, 年龄13, 适应度38.4, 行动: seek_food
🎉 新生-17 和 新生-25 繁殖了后代 新生-17-1
新生-20 : 位置(18, 2), 能量 39, 年龄 9, 适应度36.5, 行动: seek_food
新生-21 : 位置( 5, 9), 能量 22, 年龄 5, 适应度24.0, 行动: seek_food
新生-18-1: 位置( 5, 0), 能量 23, 年龄 4, 适应度7.2, 行动: seek_food
新生-23 : 位置(19, 14), 能量 40, 年龄 3, 适应度30.7, 行动: seek_food
新生-20-0: 位置(18, 1), 能量 29, 年龄 2, 适应度3.6, 行动: seek_food
新生-25 : 位置(16, 8), 能量 28, 年龄 2, 适应度33.6, 行动: seek_food
新生-17-0: 位置(14, 10), 能量 30, 年龄 1, 适应度1.8, 行动: seek_food
📊 进化统计:
当前种群: 10 个个体
平均适应度: 24.08
最高适应度: 53.40
平均寿命: 5.3 天
总出生数: 27
总死亡数: 17
当前世代: 30
平均后代数: 0.80
🧬 基因多样性统计:
metabolic_rate : 平均=0.839, 标准差=0.151
vision_range : 平均=4.000, 标准差=1.247
food_efficiency : 平均=1.484, 标准差=0.165
move_cost : 平均=0.763, 标准差=0.075
🤖 AI优化建议:
- increase vision_range by 0.5 units
- decrease move_cost by 0.1
- increase food_efficiency by 0.2
- increase metabolic_rate by 0.05
📝 解析建议: 'increase vision_range by 0.5 units'
[已应用] 增加视野范围0.5单位
📝 解析建议: 'decrease move_cost by 0.1'
[已应用] 降低移动消耗0.1(绝对值)
📝 解析建议: 'increase food_efficiency by 0.2'
[已应用] 提高食物效率0.2(绝对值)
📝 解析建议: 'increase metabolic_rate by 0.05'
[已应用] 提高新陈代谢率0.05(绝对值)
✅ 已应用 4 条AI优化建议到当前种群
============================================================
🏁 模拟结束 - 最终报告
============================================================
📊 进化统计:
当前种群: 10 个个体
平均适应度: 24.08
最高适应度: 53.40
平均寿命: 5.3 天
总出生数: 27
总死亡数: 17
当前世代: 30
平均后代数: 0.80
🧬 基因多样性统计:
metabolic_rate : 平均=0.889, 标准差=0.151
vision_range : 平均=4.450, 标准差=1.165
food_efficiency : 平均=1.624, 标准差=0.088
move_cost : 平均=0.663, 标准差=0.075
🏆 最适应的个体:
1. 新生-17 : 适应度53.4, 年龄13, 能量 12, 后代 2, 基因: 基因组: aggression=0.14, curiosity=0.55, food_efficiency=1.70, hunger_threshold=63.00, metabolic_rate=0.83, move_cost=0.66, reproduce_threshold=44.00, rest_threshold=36.00, sociality=0.41, speed=0.96, vision_range=5.50, water_efficiency=1.07
2. 新生-16 : 适应度50.0, 年龄14, 能量 29, 后代 1, 基因: 基因组: aggression=0.69, curiosity=0.69, food_efficiency=1.70, hunger_threshold=61.00, metabolic_rate=1.02, move_cost=0.62, reproduce_threshold=48.00, rest_threshold=38.00, sociality=0.77, speed=1.08, vision_range=6.00, water_efficiency=1.28
3. 新生-20 : 适应度36.5, 年龄 9, 能量 39, 后代 1, 基因: 基因组: aggression=0.02, curiosity=0.07, food_efficiency=1.70, hunger_threshold=63.00, metabolic_rate=0.84, move_cost=0.48, reproduce_threshold=41.00, rest_threshold=44.00, sociality=0.26, speed=1.07, vision_range=6.00, water_efficiency=1.20
4. 新生-25 : 适应度33.6, 年龄 2, 能量 28, 后代 2, 基因: 基因组: aggression=0.40, curiosity=0.47, food_efficiency=1.43, hunger_threshold=43.00, metabolic_rate=0.93, move_cost=0.70, reproduce_threshold=36.00, rest_threshold=47.00, sociality=0.01, speed=0.85, vision_range=4.50, water_efficiency=1.00
5. 新生-23 : 适应度30.7, 年龄 3, 能量 40, 后代 1, 基因: 基因组: aggression=0.29, curiosity=0.87, food_efficiency=1.64, hunger_threshold=43.00, metabolic_rate=0.76, move_cost=0.69, reproduce_threshold=45.00, rest_threshold=34.00, sociality=0.23, speed=1.19, vision_range=3.00, water_efficiency=1.02
📈 适应度进化趋势:
第26代: 25.54 ████████
第27代: 22.05 ███████
第28代: 17.30 █████
第29代: 22.15 ███████
第30代: 24.08 ████████
感谢使用进化模拟器!
更多推荐

所有评论(0)