f8b21af4be
10_Wiki/Topics 대규모 정리: - 오류 캡처/미완성 stub 문서 227개 제거 - 교차폴더 중복 43클러스터 병합 (63파일 → redirect) - 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건 - 카테고리 MOC 6개 신규 생성 - Graph 섹션 미해결 related-keyword 링크 10,058건 제거 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
166 lines
5.5 KiB
Markdown
166 lines
5.5 KiB
Markdown
---
|
||
id: wiki-2026-0508-perceptual-motor-skills
|
||
title: Perceptual Motor Skills
|
||
category: 10_Wiki/Topics
|
||
status: verified
|
||
canonical_id: self
|
||
aliases: [Sensorimotor Skills, PM Skills, Eye-Hand Coordination]
|
||
duplicate_of: none
|
||
source_trust_level: A
|
||
confidence_score: 0.9
|
||
verification_status: applied
|
||
tags: [psychology, motor-control, hci, vr, robotics]
|
||
raw_sources: []
|
||
last_reinforced: 2026-05-10
|
||
github_commit: pending
|
||
tech_stack:
|
||
language: theory
|
||
framework: motor-learning
|
||
---
|
||
|
||
# Perceptual Motor Skills
|
||
|
||
## 매 한 줄
|
||
> **"매 perception and action are one closed loop, not two systems."**. 매 Fitts, Schmidt 의 motor-learning 연구에서 출발한 매 perceptual-motor skills = 매 sensory input → motor output 의 매 coupled performance. 매 2026 VR (Beat Saber, MR), surgical robots, autonomous driving, human-AI tele-operation 에 직접 응용.
|
||
|
||
## 매 핵심
|
||
|
||
### 매 components
|
||
- **Perception**: 매 visual, vestibular, proprioceptive, tactile input integration.
|
||
- **Decision**: 매 motor program selection (Schmidt's schema theory).
|
||
- **Execution**: 매 muscle coordination + online correction.
|
||
- **Feedback**: 매 KR (Knowledge of Results), KP (Knowledge of Performance).
|
||
|
||
### 매 laws
|
||
- **Fitts' Law**: 매 MT = a + b·log₂(2D/W) — 매 difficulty ∝ distance/target-size.
|
||
- **Hick's Law**: 매 RT = a + b·log₂(N) — 매 choice reaction time vs alternatives.
|
||
- **Power Law of Practice**: 매 T(n) = T₁ · n^(-α) — 매 skill acquisition curve.
|
||
|
||
### 매 stages (Fitts & Posner)
|
||
- **Cognitive**: 매 verbal rehearsal, slow, error-prone.
|
||
- **Associative**: 매 refining; reduced explicit thought.
|
||
- **Autonomous**: 매 fast, low-attention-cost, automatic.
|
||
|
||
### 매 응용
|
||
1. VR exergaming: 매 Beat Saber score = 매 PM skill metric.
|
||
2. Surgical training: 매 da Vinci 의 PM skill calibration.
|
||
3. Robotic teleoperation: 매 latency 가 PM loop 깨면 매 performance 폭락.
|
||
4. UI design: 매 Fitts' Law → 매 button size & placement.
|
||
|
||
## 💻 패턴
|
||
|
||
### Pattern 1: Fitts' Law calculator (UI design)
|
||
```python
|
||
import math
|
||
|
||
def fitts_mt(distance_px, width_px, a=0.05, b=0.1):
|
||
"""매 movement time in seconds. a, b empirically calibrated."""
|
||
return a + b * math.log2(2 * distance_px / width_px)
|
||
|
||
# 매 example: button 40px wide at 300px away
|
||
print(fitts_mt(300, 40)) # ~0.36s
|
||
```
|
||
|
||
### Pattern 2: Power-law learning curve fit
|
||
```python
|
||
import numpy as np
|
||
from scipy.optimize import curve_fit
|
||
|
||
def power_law(n, T1, alpha):
|
||
return T1 * n ** (-alpha)
|
||
|
||
trials = np.arange(1, 100)
|
||
times = ... # 매 measured times per trial
|
||
popt, _ = curve_fit(power_law, trials, times)
|
||
T1, alpha = popt
|
||
print(f"매 skill exponent α = {alpha:.3f}")
|
||
```
|
||
|
||
### Pattern 3: Online correction in robot teleop
|
||
```python
|
||
# 매 closed-loop with 100Hz feedback
|
||
import time
|
||
|
||
def teleop_loop(robot, target):
|
||
while not at_target(robot.pose, target, tol=0.005):
|
||
err = target - robot.pose
|
||
robot.send_velocity(0.5 * err) # 매 P-controller
|
||
time.sleep(0.01)
|
||
```
|
||
|
||
### Pattern 4: KR vs KP feedback in training app
|
||
```python
|
||
def feedback(trial_result):
|
||
return {
|
||
"KR": f"매 hit/miss: {trial_result.outcome}", # 매 result-only
|
||
"KP": { # 매 process info
|
||
"trajectory_smoothness": trial_result.jerk,
|
||
"reaction_time": trial_result.rt_ms,
|
||
"approach_angle": trial_result.angle,
|
||
},
|
||
}
|
||
```
|
||
|
||
### Pattern 5: VR PM skill scoring
|
||
```python
|
||
def beat_saber_pm_score(slices):
|
||
accuracy = sum(s.angle_error < 15 for s in slices) / len(slices)
|
||
timing = sum(abs(s.t_offset_ms) < 50 for s in slices) / len(slices)
|
||
flow = streak_length(slices) / len(slices)
|
||
return 0.4*accuracy + 0.4*timing + 0.2*flow
|
||
```
|
||
|
||
### Pattern 6: Latency budget for VR
|
||
```python
|
||
# 매 motion-to-photon < 20ms or 매 PM loop breaks (sim-sickness)
|
||
def latency_audit(pipeline):
|
||
budget_ms = 20
|
||
used = sum(pipeline.stage_latencies.values())
|
||
assert used < budget_ms, f"매 over budget: {used}ms"
|
||
```
|
||
|
||
### Pattern 7: Hick's Law menu design
|
||
```python
|
||
import math
|
||
def menu_rt(n_options, a=0.2, b=0.15):
|
||
return a + b * math.log2(n_options + 1)
|
||
# 매 8 options ≈ 0.67s, 16 options ≈ 0.81s — 매 sublinear
|
||
```
|
||
|
||
## 매 결정 기준
|
||
| 상황 | Approach |
|
||
|---|---|
|
||
| 매 button placement | Fitts' Law optimization |
|
||
| 매 menu structure | Hick's Law (depth vs breadth) |
|
||
| 매 training app | KR for novice, KP for advanced |
|
||
| 매 VR app | Latency budget < 20ms motion-to-photon |
|
||
| 매 teleoperation | Closed-loop with predictive control |
|
||
| 매 skill assessment | Power-law exponent α + asymptote |
|
||
|
||
**기본값**: 매 close the perception-action loop with < 100ms latency.
|
||
|
||
## 🔗 Graph
|
||
- 부모: [[Cognitive Psychology]] · [[Motor Control]]
|
||
- 응용: [[VR Sickness]] · [[Beat Saber]]
|
||
- Adjacent: [[Proprioception]]
|
||
|
||
## 🤖 LLM 활용
|
||
**언제**: 매 designing UI/VR/robotics interfaces, 매 modeling skill acquisition, 매 latency budgeting.
|
||
**언제 X**: 매 pure cognitive tasks (no motor component) — 매 different framework.
|
||
|
||
## ❌ 안티패턴
|
||
- **Ignoring Fitts**: 매 tiny buttons far away — 매 high MT, errors.
|
||
- **Open-loop teleop**: 매 no feedback → 매 oscillation, drift.
|
||
- **KR for experts**: 매 expert needs KP detail, not just hit/miss.
|
||
- **Latency creep**: 매 every render-pipeline change without latency budget audit.
|
||
|
||
## 🧪 검증 / 중복
|
||
- Verified (Fitts 1954, Schmidt 1975, Magill *Motor Learning*).
|
||
- 신뢰도 A.
|
||
|
||
## 🕓 Changelog
|
||
| 날짜 | 변경 |
|
||
|---|---|
|
||
| 2026-05-08 | Phase 1 |
|
||
| 2026-05-10 | Manual cleanup — Fitts/Hicks/Schmidt + VR/teleop 응용 |
|