Chương A** · mở đầu toàn khóa · bản đồ stack Sense–Think–Act trước khi đụng dynamics
1 / 14
← → · Space · F · Esc · S
Lecture 1 — Robotics là gì?
Chương A · mở đầu toàn khóa · bản đồ stack Sense–Think–Act trước khi đụng dynamics
Khung 6 câu hỏi
#
Câu hỏi
Trả lời ngắn
1
Tại sao cần?
Muốn máy tự bay/đi trong thế giới vật lý: nhiễu, trễ, sai lầm có giá (rơi máy). Không thể chỉ “phát lại” chuỗi lệnh offline.
2
So với cái khác?
Khác script open-loop / tối ưu offline một phát; khác ML thuần trên dataset tĩnh vì phải đóng vòng realtime với dynamics.
3
Giải quyết gì & thế nào?
Chia bài toán Sense → Think → Act: ước lượng state \(x\), lập kế hoạch/policy, điều khiển tầng thấp — chạy lặp theo tần số khác nhau.
4
Kết quả ra sao?
Một stack rõ tầng: dynamics–control–planning–estimation–vision–decision. RL chỉ là một lớp quyết định trên stack đó.
5
Nên dùng khung này khi nào?
Mọi nghiên cứu UAV/robot cần deploy hoặc so baseline trung thực; khi viết MDP phải chỉ được tầng action/obs.
6
Không nên / hiểu sai khi nào?
Đừng gộp hết thành một hộp “agent end-to-end” rồi không biết baseline cổ điển đặt đâu; đừng coi sim state \(x\) = obs onboard \(z\).
🖼️ Hình nhanh: Robot = vòng kín với thế giới — không phải “play file lệnh”.
Hình minh họa (seminar-ready)
Hình gốc hoặc minh họa cho ebook — không cắt từ slide Princeton. Dùng Present: bật Slide · F toàn màn.
Vòng kín Sense–Think–Act.HiếuTC · gốcNgữ cảnh đô thị đặc — GPS/hẻm.Generated for ebook · seminar OK
Gió / nhiễu (~)
│
u ──► [ DYNAMICS f ] ──► x thật (ruộng chè / phố)
│ cảm biến
▼
z = h(x) + noise
│
[ ESTIMATOR ] ──► x̂
│
[ PLANNER / POLICY ] ──► reference
│
[ CONTROLLER ] ──► u ★ đóng vòng
0. Mục tiêu học
Phát biểu được bài toán robot tự chủ khác script offline ở điểm nào.
Vẽ lại stack Sense–Think–Act (estimator / planner / controller) từ trí nhớ.
Nêu state quadrotor (~12–13 chiều) và chọn mức cắm RL A / B / C.
Viết được “tờ nháp paper” một dòng: task · obs · action tầng · rủi ro nếu \(\hat{x}\) lệch.
1. Trực giác — nói bằng lời thường
Hình dung hai cách “cho drone bay qua ruộng chè”:
Cách A (offline): tối ngồi nhà tính sẵn chuỗi tốc độ motor, sáng mai bấm play. Gió đổi hướng → máy trôi khỏi luống chè như người đi theo bản đồ cũ khi đường đã sửa.
Cách B (robotics): mỗi vài ms đọc IMU/GPS/camera → ước lượng mình đang ở đâu → quyết định chỉnh → gửi \(u\) → thế giới đổi → đo lại.
Chỉ B chịu được gió, sai model, trễ truyền. Đó là ngữ cảnh bạn cần stack phía dưới trước khi train RL cho path-planning đa mục tiêu (năng lượng · độ phủ · quỹ đạo · gió).
🇻🇳 Chuyện thật (sân A+B): Path trên giấy lúc nào cũng đẹp — như đường vẽ bằng thước kẻ trên bản đồ Google.
Đưa lên đồi chè Mộc Châu buổi gió sườn, máy open-loop trôi khỏi luống như người đi theo chỉ đường cũ khi đường đã sửa.
Nhét vào hẻm Hà Nội / cao ốc HCM, GPS nhảy một cái là planner vẫn tin mình còn nửa mét clearance. Chốt: robotics = đóng vòng với thế giới thật; chưa có Sense–Think–Act thì mọi Pareto chỉ là phác thảo. Chi tiết: ../00C.
Ba ứng dụng hay nhắc — UAV, xe tự lái, tay máy — chung một khung: sai lầm có giá vật lý, thông tin không đầy đủ, thời gian thực.
2. Cốt lõi kỹ thuật
2.1 State, observation, estimate
Ký hiệu
Nghĩa
Ví dụ UAV
\(x\)
State đủ để dự đoán tương lai nếu biết \(u\)
vị trí, vận tốc, attitude, \(\omega\) (~12–13D)
\(u\)
Input / lệnh
lực motor, hoặc setpoint attitude+thrust
\(z\)
Observation cảm biến
IMU, GPS, camera…
\(\hat{x}\)
Ước lượng từ estimator
cái planner/controller thật sự “thấy”
State quadrotor đầy đủ: vị trí (3) + vận tốc (3) + quaternion/Euler (3–4) + tốc độ góc (3).
2.2 Tách tầng & tần số vòng lặp
Thực tế kỹ thuật: tách estimator / planner / controller — không tối ưu toàn cục nhưng kiểm soát được. Nhiều vòng chạy đồng thời, khác tốc độ:
attitude control ████████████████████ ~500 Hz – 1 kHz
position control ████████ ~50–100 Hz
planning / RL ███ ~1–10 Hz
vision █████ ~15–30 Hz
└─ thời gian ────────►
2.3 Ba mức cắm RL (Sơ đồ)
┌─ Mức A: policy → waypoint / mode ─────────────► [planner cổ điển]
│ tần số thấp · an toàn hơn
├─ Mức B: policy → vel / attitude+thrust ───────► [position loop]
│ ★ phổ biến paper RL–UAV
└─ Mức C: policy → gần lệnh motor ──────────────► [attitude / mixer]
sim-to-real khó nhất
Mức
Policy xuất gì
So với baseline cổ điển
Rủi ro sim-to-real
Nghĩa với năng lượng / gió
A
waypoint / mode
gần planner
thấp hơn
dễ gắn cost map gió–pin ở tầng path
B
vel hoặc attitude+thrust
phổ biến paper
trung bình
reward vừa bám quỹ đạo vừa phạt lực
C
gần motor
“end-to-end” nhất
cao nhất
domain gap motor/gió lớn
3. Demo — bài tập “khăn giấy” (không cần code)
Lec 01 định hướng: thay code bằng một tờ nháp bạn viết trước khi đọc Lec 2.
┌─────────────────────────────────────────────────────────┐
│ TASK (1 câu): …………………………………………………………… │
│ (vd: phủ 80% ruộng chè 2 ha, về điểm sạc, gió ≤ 5 m/s) │
├─────────────────────────────────────────────────────────┤
│ OBS dự kiến z: [ ] GPS [ ] IMU [ ] camera [ ] … │
│ ACTION mức: ( ) A waypoint ( ) B setpoint ( ) C │
│ Nếu x̂ lệch 0.5 m ngang: ……………………………………… │
│ (va chéo luống? mất phủ? tốn pin vòng lại?) │
└─────────────────────────────────────────────────────────┘
🧪 Kỳ vọng demo: Sau khi điền, bạn chỉ rõ được “policy của tôi thay khối nào trên stack” — không còn câu mơ hồ “RL điều khiển drone”. Nếu không chọn được A/B/C → chưa sẵn sàng viết MDP.
4. Gắn RL–UAV / path-planning đa mục tiêu của bạn
“Policy điều khiển drone” chưa đủ nghĩa cho đến khi nêu tầng action + loại obs.
Với bài toán energy / coverage / trajectory / wind của bạn:
Tầng path (A hoặc hierarchical): cost map gió + năng lượng + độ phủ sống tự nhiên.
Chương A** · mở đầu toàn khóa · bản đồ stack Sense–Think–Act trước khi đụng dynamics
Chế độ Slide · phím ←→ · F toàn màn · Esc về đọc · S mở slide
Chương A · mở đầu toàn khóa · bản đồ stack Sense–Think–Act trước khi đụng dynamics
Khung 6 câu hỏi
#
Câu hỏi
Trả lời ngắn
1
Tại sao cần?
Muốn máy tự bay/đi trong thế giới vật lý: nhiễu, trễ, sai lầm có giá (rơi máy). Không thể chỉ “phát lại” chuỗi lệnh offline.
2
So với cái khác?
Khác script open-loop / tối ưu offline một phát; khác ML thuần trên dataset tĩnh vì phải đóng vòng realtime với dynamics.
3
Giải quyết gì & thế nào?
Chia bài toán Sense → Think → Act: ước lượng state \(x\), lập kế hoạch/policy, điều khiển tầng thấp — chạy lặp theo tần số khác nhau.
4
Kết quả ra sao?
Một stack rõ tầng: dynamics–control–planning–estimation–vision–decision. RL chỉ là một lớp quyết định trên stack đó.
5
Nên dùng khung này khi nào?
Mọi nghiên cứu UAV/robot cần deploy hoặc so baseline trung thực; khi viết MDP phải chỉ được tầng action/obs.
6
Không nên / hiểu sai khi nào?
Đừng gộp hết thành một hộp “agent end-to-end” rồi không biết baseline cổ điển đặt đâu; đừng coi sim state \(x\) = obs onboard \(z\).
🖼️ Hình nhanh: Robot = vòng kín với thế giới — không phải “play file lệnh”.
Hình minh họa (seminar-ready)
Hình gốc hoặc minh họa cho ebook — không cắt từ slide Princeton. Dùng Present: bật Slide · F toàn màn.
Vòng kín Sense–Think–Act.HiếuTC · gốcNgữ cảnh đô thị đặc — GPS/hẻm.Generated for ebook · seminar OK
Gió / nhiễu (~)
│
u ──► [ DYNAMICS f ] ──► x thật (ruộng chè / phố)
│ cảm biến
▼
z = h(x) + noise
│
[ ESTIMATOR ] ──► x̂
│
[ PLANNER / POLICY ] ──► reference
│
[ CONTROLLER ] ──► u ★ đóng vòng
0. Mục tiêu học
Phát biểu được bài toán robot tự chủ khác script offline ở điểm nào.
Vẽ lại stack Sense–Think–Act (estimator / planner / controller) từ trí nhớ.
Nêu state quadrotor (~12–13 chiều) và chọn mức cắm RL A / B / C.
Viết được “tờ nháp paper” một dòng: task · obs · action tầng · rủi ro nếu \(\hat{x}\) lệch.
1. Trực giác — nói bằng lời thường
Hình dung hai cách “cho drone bay qua ruộng chè”:
Cách A (offline): tối ngồi nhà tính sẵn chuỗi tốc độ motor, sáng mai bấm play. Gió đổi hướng → máy trôi khỏi luống chè như người đi theo bản đồ cũ khi đường đã sửa.
Cách B (robotics): mỗi vài ms đọc IMU/GPS/camera → ước lượng mình đang ở đâu → quyết định chỉnh → gửi \(u\) → thế giới đổi → đo lại.
Chỉ B chịu được gió, sai model, trễ truyền. Đó là ngữ cảnh bạn cần stack phía dưới trước khi train RL cho path-planning đa mục tiêu (năng lượng · độ phủ · quỹ đạo · gió).
🇻🇳 Chuyện thật (sân A+B): Path trên giấy lúc nào cũng đẹp — như đường vẽ bằng thước kẻ trên bản đồ Google.
Đưa lên đồi chè Mộc Châu buổi gió sườn, máy open-loop trôi khỏi luống như người đi theo chỉ đường cũ khi đường đã sửa.
Nhét vào hẻm Hà Nội / cao ốc HCM, GPS nhảy một cái là planner vẫn tin mình còn nửa mét clearance. Chốt: robotics = đóng vòng với thế giới thật; chưa có Sense–Think–Act thì mọi Pareto chỉ là phác thảo. Chi tiết: ../00C.
Ba ứng dụng hay nhắc — UAV, xe tự lái, tay máy — chung một khung: sai lầm có giá vật lý, thông tin không đầy đủ, thời gian thực.
2. Cốt lõi kỹ thuật
2. Cốt lõi kỹ thuật
2.1 State, observation, estimate
Ký hiệu
Nghĩa
Ví dụ UAV
\(x\)
State đủ để dự đoán tương lai nếu biết \(u\)
vị trí, vận tốc, attitude, \(\omega\) (~12–13D)
\(u\)
Input / lệnh
lực motor, hoặc setpoint attitude+thrust
\(z\)
Observation cảm biến
IMU, GPS, camera…
\(\hat{x}\)
Ước lượng từ estimator
cái planner/controller thật sự “thấy”
State quadrotor đầy đủ: vị trí (3) + vận tốc (3) + quaternion/Euler (3–4) + tốc độ góc (3).
2. Cốt lõi kỹ thuật
2.2 Tách tầng & tần số vòng lặp
Thực tế kỹ thuật: tách estimator / planner / controller — không tối ưu toàn cục nhưng kiểm soát được. Nhiều vòng chạy đồng thời, khác tốc độ:
attitude control ████████████████████ ~500 Hz – 1 kHz
position control ████████ ~50–100 Hz
planning / RL ███ ~1–10 Hz
vision █████ ~15–30 Hz
└─ thời gian ────────►
2. Cốt lõi kỹ thuật
2.3 Ba mức cắm RL (Sơ đồ)
┌─ Mức A: policy → waypoint / mode ─────────────► [planner cổ điển]
│ tần số thấp · an toàn hơn
├─ Mức B: policy → vel / attitude+thrust ───────► [position loop]
│ ★ phổ biến paper RL–UAV
└─ Mức C: policy → gần lệnh motor ──────────────► [attitude / mixer]
sim-to-real khó nhất
Mức
Policy xuất gì
So với baseline cổ điển
Rủi ro sim-to-real
Nghĩa với năng lượng / gió
A
waypoint / mode
gần planner
thấp hơn
dễ gắn cost map gió–pin ở tầng path
B
vel hoặc attitude+thrust
phổ biến paper
trung bình
reward vừa bám quỹ đạo vừa phạt lực
C
gần motor
“end-to-end” nhất
cao nhất
domain gap motor/gió lớn
3. Demo — bài tập “khăn giấy” (không cần code)
Lec 01 định hướng: thay code bằng một tờ nháp bạn viết trước khi đọc Lec 2.
┌─────────────────────────────────────────────────────────┐
│ TASK (1 câu): …………………………………………………………… │
│ (vd: phủ 80% ruộng chè 2 ha, về điểm sạc, gió ≤ 5 m/s) │
├─────────────────────────────────────────────────────────┤
│ OBS dự kiến z: [ ] GPS [ ] IMU [ ] camera [ ] … │
│ ACTION mức: ( ) A waypoint ( ) B setpoint ( ) C │
│ Nếu x̂ lệch 0.5 m ngang: ……………………………………… │
│ (va chéo luống? mất phủ? tốn pin vòng lại?) │
└─────────────────────────────────────────────────────────┘
🧪 Kỳ vọng demo: Sau khi điền, bạn chỉ rõ được “policy của tôi thay khối nào trên stack” — không còn câu mơ hồ “RL điều khiển drone”. Nếu không chọn được A/B/C → chưa sẵn sàng viết MDP.
4. Gắn RL–UAV / path-planning đa mục tiêu của bạn
“Policy điều khiển drone” chưa đủ nghĩa cho đến khi nêu tầng action + loại obs.
Với bài toán energy / coverage / trajectory / wind của bạn:
Tầng path (A hoặc hierarchical): cost map gió + năng lượng + độ phủ sống tự nhiên.