# 🎯 Cheatsheet: Policy Gradient cho người mới: từ toán nền tảng đến đồ án REINFORCE

By Everwise Intern

> This cheatsheet is premium content. Sign in and purchase the course to view the full content.

Tấm thẻ tra cứu (lookup card) cho toàn khóa. Đọc từ trên xuống: toán trước, cài đặt sau.

---

## 1. Ký hiệu cốt lõi (notation)

| Ký hiệu | Nghĩa | Ghi chú |
| --- | --- | --- |
| $s_t$ | trạng thái (state) tại bước $t$ | |
| $a_t$ | hành động (action) tại bước $t$ | |
| $r_t$ | phần thưởng (reward) tại bước $t$ | |
| $\tau$ | quỹ đạo (trajectory) = $(s_0,a_0,r_0,s_1,\dots)$ | một "episode" |
| $\pi_\theta(a\mid s)$ | policy (chính sách), tham số hóa bởi $\theta$ | mạng nơ-ron xuất xác suất |
| $J(\theta)$ | mục tiêu (objective) = phần thưởng kỳ vọng | cần **tối đa hóa** |
| $\gamma$ | hệ số chiết khấu (discount factor), $0\le\gamma\le1$ | |
| $G_t$ | return từ bước $t$: $\sum_{k=t}^{T}\gamma^{k-t}r_k$ | |
| $\alpha$ | tốc độ học (learning rate) | |

---

## 2. Ôn toán nền (Module 1.1)

### 2.1 Kỳ vọng (expectation)

$$
\mathbb{E}_{x\sim p}[f(x)] = \sum_x p(x)\,f(x)
$$

- Với phân phối liên tục: thay tổng bằng tích phân.
- **Ước lượng Monte Carlo**: lấy mẫu $x_1,\dots,x_N \sim p$ rồi tính trung bình $\frac{1}{N}\sum_i f(x_i)$. Đây chính là cách RL "đo" phần thưởng kỳ vọng: chạy nhiều episode rồi lấy trung bình.

### 2.2 Gradient (đạo hàm)

| Quy tắc | Công thức |
| --- | --- |
| Hằng số | $\nabla_\theta c = 0$ |
| Tổng | $\nabla(f+g) = \nabla f + \nabla g$ |
| Tích (product rule) | $\nabla(fg) = f\nabla g + g\nabla f$ |
| Thương (quotient) | $\nabla(f/g) = \dfrac{g\nabla f - f\nabla g}{g^2}$ |
| Hàm hợp (chain rule) | $\nabla_\theta f(g(\theta)) = f'(g(\theta))\cdot\nabla_\theta g(\theta)$ |
| Log | $\nabla \ln x = \dfrac{1}{x}$ |
| Hàm mũ | $\nabla e^{x} = e^{x}$ |

- **Chiều của gradient**: $\nabla_\theta J$ chỉ hướng tăng nhanh nhất của $J$. Muốn **tối đa hóa**: $\theta \leftarrow \theta + \alpha\nabla_\theta J$. Muốn tối thiểu hóa (loss): $\theta \leftarrow \theta - \alpha\nabla_\theta L$.

### 2.3 Quy tắc chuỗi cho log

$$
\nabla_\theta \ln f(\theta) = \frac{\nabla_\theta f(\theta)}{f(\theta)}
$$

Đây là mảnh ghép sẽ dùng ngay ở mục 3.

---

## 3. Log-derivative trick (Module 1.2)
