AI for Youth Academy 青少年AI研究计划

课程重点

核心主题

  • 二维空间:点、向量与矩阵表示
  • 地图上的线性方程二维表达
  • Python基础:函数、循环与条件判断

动手实践

  • 编程控制FIRST LEGO挑战赛机器人在二维地图上自主导航。
  • 使用FIRST LEGO Python库,通过函数调用精确控制机器人运动。
  • 运用循环和条件判断实现可靠的导航逻辑。

学习成果

  • 能够用二维地图的实例解释向量和线性方程。
  • 能够使用函数、循环和条件判断编写Python入门程序。
  • 理解机器人运动与二维数学表示之间的联系。

每周教学计划

课程内容可能根据学员进度和反馈进行调整。

  1. 第01周

    课程启动和二维地图

    数学

    坐标平面、点和地图方向。

    阅读材料
  2. 第02周

    点和距离

    数学

    巩固第01周的坐标平面概念,探索两点之间的距离。

    环境配置

    安装LEGO Education SPIKE App (https://education.lego.com/en-us/downloads/spike-app/software/) 或验证浏览器访问 https://spike.legoeducation.com/。

    Python

    LEGO Spike Prime IDE设置和使用FIRST LEGO Python库的辅助函数驱动SPIKE PRIME。

    机器人

    驱动校准和使用move_for_degrees进行距离移动以到达地图检查点。

    阅读材料
  3. 第03周

    线性方程和坐标系

    数学

    使用二元一次方程组理解非垂直("古怪的")坐标系并在它们之间转换。

    阅读材料
  4. 第04周

    AI中的向量、三维空间和Python基础

    数学

    词嵌入(king - man + woman = queen)、三维坐标系和在三维空间中定位点。

    Python

    Google Colab设置、变量类型(int, float, str, list)和NumPy矩阵乘法。

    阅读材料
  5. 第05周

    向量加法和标量乘法

    数学

    将向量相加并用标量乘以向量进行移动规划。

    Python

    介绍用于遍历向量组件的for循环。

    阅读材料
  6. 第06周

    什么是智能?

    数学

    介绍输入和输出。

    人工智能

    什么让任务变得"智能"?

    人工智能

    Google Teachable Machine:训练狗与猫分类器。

    阅读材料
  7. 第07周

    一步一步找到最佳直线

    数学

    绝对误差、误差斜率和梯度下降更新规则。

    Python

    列表、for循环、函数和用于梯度下降的matplotlib散点/线图。

    人工智能

    梯度下降:从随机猜测开始,一步一步改进。

    人工智能

    学习率:控制每次更新步长的大小。

    阅读材料
  8. 第08周

    复习周——连点成线

    数学

    坐标系、向量及其应用的全面复习。

    Python

    变量、列表、for循环、函数和matplotlib绘图的复习。

    人工智能

    连接所有概念:从抽象到梯度下降。

    人工智能

    综合挑战:从头开始实现线性回归。

    阅读材料
  9. 第09周

    将Python技能应用到LEGO Spike

    数学

    正多边形的外角(360 ÷ n)。

    Python

    配置块、自定义函数(drive_straight、turn)、用for循环实现重复路线、用任务列表规划多步路线。

    机器人

    驱动多边形路线、调整配置变量、导航多航点路线。

    阅读材料
  10. 第10周

    待更新

    数学

    待更新。

  11. 第11周

    待更新

    数学

    待更新。

  12. 第12周

    待更新

    数学

    待更新。

  13. 第13周

    待更新

    数学

    待更新。

  14. 第14周

    待更新

    数学

    待更新。

  15. 第15周

    待更新

    数学

    待更新。

  16. 第16周

    待更新

    数学

    待更新。

备选主题

以下第07-16周的主题仍在规划中,将根据课程进展安排到具体周次。

数学

  • y = mx + b 和在地图上表示直线
  • 求解两条直线的交点
  • 将路线分解为线段和航点
  • 距离目标作为条件
  • 添加向量以跟踪总位移
  • 组合变换以在网格上规划路线
  • 容差和小误差校正
  • 为自定义任务定义点、向量和线方程

Python

  • 分解:将程序分解为小函数
  • 用于路线段和检查点的列表
  • 用于集中调整的字典和配置
  • 模块和多文件组织
  • 使用assert和快速A/B检查进行测试
  • 用于选择运行的微型UI/菜单
  • 用于可重复性的日志、笔记和汇报记录
  • 编码前编写计划和概述模块
  • 使用FIRST LEGO Python库实现并测试
  • 重构函数并清理代码结构

机器人

  • 对齐然后驱动附件电机
  • 距离传感器接近和对峙
  • 使用共享调整重复多段路径
  • 一次发射中的两任务链
  • 原地转向与弧形转向比较
  • 带有重置角色的2:30运行纪律
  • 时间盒排练和检查表习惯
  • 绘制路径并分配团队角色
  • 运行完整任务并捕获结果
  • 完善最终运行的可靠性
  • 演示最终任务并反思改进