这个项目是关于什么的

开篇段落介绍Trekhleb博客文章及其TypeScript实现的遗传算法泊车项目,封面图为读者提供直观的视觉锚点。
Trekhleb在2021年9月的博客文章介绍了如何使用遗传算法训练汽车自动泊车。该项目使用TypeScript实现,完整源代码不到500行。
自动泊车汽车的工作原理
汽车配备八个距离传感器——"眼睛"——每个传感器报告0–4米范围内的障碍物距离。传感器每100毫秒刷新一次;读数为0表示未检测到障碍物,较小的正值表示接近障碍物。汽车有两个"肌肉":一个控制前进、后退或惰行的引擎肌肉,以及一个控制左转、右转或直行的方向盘肌肉(在移动时)。每个肌肉每100毫秒接收一个信号(–1、0或+1)。
汽车的"大脑"由两个线性多项式组成,分别控制引擎信号和转向信号。每个多项式以八个传感器值为变量,以九个系数为参数(八个系数×变量的乘积,外加一个不加乘法的常数项)。这18个系数共同定义汽车的行为,构成其基因组。
基因组结构
18个十进制系数各自转换为一个10位二进制数(1个符号位、4个指数位、5个小数位),产生180位的基因组(18个系数×10位)。这意味着汽车的完整DNA由180个0和1组成。

基因组结构段落解释每个十进制系数如何编码为10位二进制数,该转换图展示的就是这一编码步骤。
演化过程
开始时,汽车获得随机基因组,行为混乱。大约40代之后,汽车开始学会自动泊车的含义并靠近停车位,尽管仍可能撞上其他汽车或未能完美停入。项目提供了一个基于浏览器的演化模拟器,用户可从头训练汽车、调整遗传参数,或检查表现最佳基因组的系数和数值。

演化段落描述汽车从随机基因组开始、行为混乱,该第一代动画生动展示了这一点。

同一演化段落指出大约40代后汽车开始学会自动泊车,该动画捕捉了这一发展阶段。
仍不确定之处
源代码未报告各代的精确泊车成功率,也未指定终止条件或最终性能基准。博客提到简单的多项式大脑限制了汽车泛化到未知环境的能力,但未提供定量结果。
证据
1. 遗传算法在多代中演化汽车基因组,大约第40代是汽车开始学会自动泊车行为的节点。这有博客原文("这对它们来说只是世界诞生后的第40代")和GitHub仓库(support-2)的描述支持,两者均指出汽车从第40代开始学习。
2. 汽车的大脑实现为两个线性多项式,共18个系数;当每个系数编码为10位时,完整基因组为180位。这直接来自原文对多项式结构、系数转换和基因组编码的详细解释。
每项主张仅映射到确切相关的来源ID,未引用HN讨论、评论或其他无关来源。