单元四
第14课 游戏里选最高分动作——奖励与动作选择

一、任务目标
理解强化学习用奖励评价动作:分数高的动作更值得再选;能在几个动作中选出当前奖励最高的一个。
二、我们要学什么
- 学习要点:游戏里选最高分动作|奖励与动作选择
- 本课过关:能完成:说出奖励是对动作好坏的反馈;载入体验程序,指出程序选择了分最高的动作;改某个动作的分数后重新运行,所选动作跟着变。
- 示例对齐:体验题对应本课「编程体验」;完整代码对应编程题1;补全与独立编写对应编程题2–3。均在 Mixly 图形化积木中完成。
三、本节要点
本课要认识奖励与选动作。重难点是先列出动作及其奖励,再选最大者;奖励设计会引导行为。要点对齐「游戏里选最高分动作|奖励与动作选择」。
1读场景明确真实任务
2对要点游戏里选最高分动作|奖励与动作选择
3载入运行图形化积木
四、解题思路
任务:在若干动作中选择奖励最高的一个。请分清输入(各动作的分)与输出(所选动作)。
本课主要用到:Mixly 图形化积木与屏幕输出。
- 1明确任务「选最高分动作」:输出应是一个动作名。
- 2比较各动作的奖励,取最大者。
- 3改一个动作的分数后重跑,观察选择是否跟随。
流程示意(可对照左侧文字)
五、图形块功能讲解
本课用到的 Mixly 图形块均已在前面的课讲过。请直接对照编程练习搭积木;若有遗忘,回到该积木首次出现的课页复习。
六、知识点讲解
强化学习靠奖励评价动作:做对加分、做错扣分,再据此改策略。本课用游戏选动作作例子——先练一步:在当前几个动作里选分最高的。奖励怎么设,行为就会往哪边靠。
先弄清:改分数,所选动作应跟着变;再进编程练习对照选择。
七、编程练习
用下拉列表切换题目;下方 Mixly 默认显示图形化积木。请在 Mixly 工具栏点「运行」;「检查」读取 Mixly 代码自动判题。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
参考代码(对照抄写到下方 Mixly)
def choose_action(scores):
best_a = None
best_s = None
for a in scores.keys():
s = scores[a]
if best_s is None or s > best_s:
best_a = a
best_s = s
return best_a
print(choose_action({"左": 1, "右": 5, "跳": 3}))
正在载入编程环境
正在载入 Mixly 图形化编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:在当前几个动作里选分数最高的那一个,就是本课的动作选择。
判断:过马路也可以用“试错扣分”随便试,反正错了再扣分。
「奖励」在本课指的是?
本课选择动作的办法是?
更适合用强化学习的是?
九、本节小结
本课主题是奖励与选动作:比较各动作的分,选择最高者。奖励会塑造行为。