refactor(topics): 멀티 에이전트용 지식 재편 — _Common(공통 기본기) + Domain_* 구조
에이전트 8종(대화형/프로그래머 C·S/디자이너/설계자/기획자/QA/PD/PM)에게 [공통 기본 능력 + 롤별 Specialty] 2층으로 지식을 주입하기 위한 재분류. 문서 내용·포맷은 무수정, 폴더 이동만 (6,372개 문서 수 보존 확인). - Topic_Programming → Domain_Programming (내부 구조 보존) - Topic_Graphic → Domain_Design - Topic_Business → Domain_Product - Topic_General → Domain_General - _Common 신설: Math(구 Topic_Math_Specialty), Reasoning(구 General/From_Thinking & Reasoning), Reasoning_Creativity(구 General/From_창의성), Communication(Poetic_Blog_Writing + From_writing) - 타 도메인의 From_* 폴더는 유지 (출처 표기일 뿐, 이미 도메인에 맞게 분류된 문서) - 빈 폴더 정리 (memory/procedures) - 에이전트→폴더 매핑은 workspace의 .astra/agent-knowledge-map.json (9개 에이전트) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,289 @@
|
||||
---
|
||||
id: wiki-2026-0508-cybernetics
|
||||
title: Cybernetics Foundations
|
||||
category: 10_Wiki/Topics
|
||||
status: verified
|
||||
canonical_id: self
|
||||
aliases: [cybernetics, Norbert Wiener, feedback loop, homeostasis, control theory, second-order cybernetics, autopoiesis]
|
||||
duplicate_of: none
|
||||
source_trust_level: A
|
||||
confidence_score: 0.88
|
||||
verification_status: applied
|
||||
tags: [cybernetics, systems-thinking, control-theory, feedback, homeostasis, ai-history, wiener, ashby]
|
||||
raw_sources: []
|
||||
last_reinforced: 2026-05-10
|
||||
github_commit: pending
|
||||
tech_stack:
|
||||
language: systems theory
|
||||
applicable_to: [Multi-agent Design, Control Systems, AI Architecture]
|
||||
---
|
||||
|
||||
# Cybernetics
|
||||
|
||||
## 매 한 줄
|
||||
> **"매 living + 매 machine 의 control + communication 의 universal"**. Norbert Wiener (1948). 매 feedback loop + homeostasis + 매 information transmission. 매 AI / robotics / biology / sociology 의 cross-disciplinary roots. 매 modern: 매 multi-agent system + 매 control + 매 active inference.
|
||||
|
||||
## 매 핵심
|
||||
|
||||
### Wiener (1st-order cybernetics)
|
||||
- 매 system 의 observe.
|
||||
- 매 input → process → output → feedback.
|
||||
- 매 negative feedback 의 stabilize.
|
||||
- 매 positive feedback 의 amplify / explode.
|
||||
|
||||
### 2nd-order cybernetics (Foerster, Maturana)
|
||||
- 매 observer 의 part of system.
|
||||
- 매 self-reference.
|
||||
- 매 autopoiesis (self-creating).
|
||||
|
||||
### 매 핵심 concept
|
||||
|
||||
#### Feedback Loop
|
||||
- **Negative**: 매 thermostat, 매 homeostasis.
|
||||
- **Positive**: 매 microphone feedback, 매 viral growth.
|
||||
|
||||
#### Homeostasis
|
||||
- 매 internal state 의 stable.
|
||||
- 매 perturbation 의 counter.
|
||||
- 매 biological + 매 artificial.
|
||||
|
||||
#### Black Box
|
||||
- 매 internal X — 매 I/O 만.
|
||||
- 매 abstraction principle.
|
||||
|
||||
#### Variety (Ashby's Law)
|
||||
- 매 controller 의 variety ≥ disturbance 의 variety.
|
||||
- 매 system 의 control 의 limit.
|
||||
|
||||
#### Requisite Variety
|
||||
- 매 system 의 manage 의 environment 의 capable variety.
|
||||
|
||||
### 매 history
|
||||
- 1948 Wiener "Cybernetics".
|
||||
- 1956 Dartmouth (AI 이름).
|
||||
- Macy Conferences (1946-1953): cyber + systems.
|
||||
- 2nd-order: Heinz von Foerster, Maturana-Varela.
|
||||
- Decline (1970s): AI vs Cybernetics 의 split.
|
||||
- Revival (2000s+): control + agent + autopoiesis.
|
||||
|
||||
### 매 modern relevance
|
||||
|
||||
#### Control theory
|
||||
- PID, MPC, optimal control.
|
||||
- Robotics: 매 closed-loop.
|
||||
- 매 autonomous vehicle.
|
||||
|
||||
#### Multi-agent system
|
||||
- 매 distributed control.
|
||||
- 매 swarm.
|
||||
|
||||
#### Active inference (Friston)
|
||||
- 매 free energy minimization.
|
||||
- 매 cybernetic + Bayesian.
|
||||
- [[Bayesian-Brain-Hypothesis]] 참조.
|
||||
|
||||
#### Organizational
|
||||
- 매 systems thinking (Senge "Fifth Discipline").
|
||||
- 매 viable system model (Beer).
|
||||
|
||||
#### AI alignment
|
||||
- 매 reward hacking 의 cybernetic 의 lens.
|
||||
- 매 unintended feedback.
|
||||
|
||||
### 매 응용
|
||||
1. **Thermostat / HVAC**: 매 simplest.
|
||||
2. **Robotics**: 매 control.
|
||||
3. **Biology**: 매 endocrine / neural.
|
||||
4. **Economics**: 매 supply-demand.
|
||||
5. **Organization**: 매 managed system.
|
||||
6. **AI agent**: 매 action + observation loop.
|
||||
|
||||
## 💻 패턴
|
||||
|
||||
### PID Controller (classic feedback)
|
||||
```python
|
||||
class PID:
|
||||
def __init__(self, kp=1.0, ki=0.1, kd=0.05):
|
||||
self.kp, self.ki, self.kd = kp, ki, kd
|
||||
self.integral = 0
|
||||
self.prev_error = 0
|
||||
|
||||
def update(self, target, current, dt):
|
||||
error = target - current
|
||||
self.integral += error * dt
|
||||
derivative = (error - self.prev_error) / dt
|
||||
|
||||
output = self.kp * error + self.ki * self.integral + self.kd * derivative
|
||||
self.prev_error = error
|
||||
return output
|
||||
|
||||
# 매 example: 매 thermostat
|
||||
pid = PID()
|
||||
while True:
|
||||
error_correction = pid.update(target_temp=22, current=sensor.read(), dt=1.0)
|
||||
heater.set_power(error_correction)
|
||||
sleep(1)
|
||||
```
|
||||
|
||||
### Negative feedback (homeostasis)
|
||||
```python
|
||||
class Homeostat:
|
||||
def __init__(self, target):
|
||||
self.target = target
|
||||
self.state = target
|
||||
|
||||
def perturbate(self, disturbance):
|
||||
self.state += disturbance
|
||||
|
||||
def regulate(self, gain=0.1):
|
||||
# 매 negative feedback 의 self-correct
|
||||
error = self.target - self.state
|
||||
self.state += gain * error
|
||||
|
||||
# 매 simulate
|
||||
h = Homeostat(target=37) # 매 body temp
|
||||
for _ in range(100):
|
||||
h.perturbate(random.gauss(0, 1)) # 매 environment
|
||||
h.regulate()
|
||||
print(h.state) # 매 ~37
|
||||
```
|
||||
|
||||
### Positive feedback (caution)
|
||||
```python
|
||||
def viral_growth(initial, gain, steps):
|
||||
"""매 positive feedback — 매 amplify."""
|
||||
state = initial
|
||||
for _ in range(steps):
|
||||
state *= (1 + gain)
|
||||
if state > LIMIT: break # 매 saturation needed
|
||||
return state
|
||||
```
|
||||
|
||||
### Ashby's Law check
|
||||
```python
|
||||
def can_control(controller_variety, disturbance_variety):
|
||||
"""매 'Only variety can destroy variety.'"""
|
||||
return controller_variety >= disturbance_variety
|
||||
|
||||
# 매 example: 매 thermostat 의 매 1 mode 만 → 매 매 disturbance 매 multiple 의 fail
|
||||
print(can_control(1, 5)) # False
|
||||
print(can_control(10, 5)) # True
|
||||
```
|
||||
|
||||
### Black Box (system identification)
|
||||
```python
|
||||
import numpy as np
|
||||
|
||||
def identify_black_box(system_fn, n_samples=100):
|
||||
"""매 input-output 의 model 의 fit."""
|
||||
X = np.random.randn(n_samples, INPUT_DIM)
|
||||
Y = np.array([system_fn(x) for x in X])
|
||||
|
||||
from sklearn.linear_model import LinearRegression
|
||||
model = LinearRegression().fit(X, Y)
|
||||
return model # 매 estimated transfer function
|
||||
```
|
||||
|
||||
### Active inference (Friston-style)
|
||||
```python
|
||||
def active_inference(belief, world_model, possible_actions):
|
||||
"""매 minimize expected free energy."""
|
||||
best_action, best_efe = None, float('inf')
|
||||
for a in possible_actions:
|
||||
next_belief = world_model.predict(belief, a)
|
||||
# 매 epistemic value
|
||||
info_gain = expected_kl(next_belief, belief)
|
||||
# 매 pragmatic value
|
||||
pragmatic = expected_log_preference(next_belief)
|
||||
efe = -info_gain - pragmatic
|
||||
if efe < best_efe:
|
||||
best_efe, best_action = efe, a
|
||||
return best_action
|
||||
```
|
||||
|
||||
### MPC (Model Predictive Control)
|
||||
```python
|
||||
import cvxpy as cp
|
||||
|
||||
def mpc_step(x_current, x_target, horizon=10):
|
||||
x = cp.Variable((horizon + 1, STATE_DIM))
|
||||
u = cp.Variable((horizon, ACTION_DIM))
|
||||
|
||||
cost = 0
|
||||
constraints = [x[0] == x_current]
|
||||
for t in range(horizon):
|
||||
cost += cp.sum_squares(x[t+1] - x_target) + 0.1 * cp.sum_squares(u[t])
|
||||
constraints += [x[t+1] == A @ x[t] + B @ u[t]]
|
||||
constraints += [cp.abs(u[t]) <= U_MAX]
|
||||
|
||||
cp.Problem(cp.Minimize(cost), constraints).solve()
|
||||
return u[0].value
|
||||
```
|
||||
|
||||
### Multi-agent feedback (consensus)
|
||||
```python
|
||||
def consensus_step(agents, alpha=0.1):
|
||||
"""매 distributed averaging."""
|
||||
new_states = []
|
||||
for a in agents:
|
||||
avg_neighbor = mean(n.state for n in a.neighbors)
|
||||
new_states.append(a.state + alpha * (avg_neighbor - a.state))
|
||||
for a, ns in zip(agents, new_states):
|
||||
a.state = ns
|
||||
|
||||
# 매 매 step 의 모두 의 average 의 converge.
|
||||
```
|
||||
|
||||
### Reward hacking detection (cybernetic perspective)
|
||||
```python
|
||||
def detect_reward_hacking(agent_trajectory, true_objective):
|
||||
"""매 unintended feedback 의 detect."""
|
||||
declared_reward = sum(t.reward for t in agent_trajectory)
|
||||
actual_progress = measure_against_intent(agent_trajectory, true_objective)
|
||||
|
||||
if declared_reward > 0.9 * MAX_DECLARED and actual_progress < 0.5:
|
||||
return 'WARN: reward hacking — 매 metric 의 game'
|
||||
return 'OK'
|
||||
```
|
||||
|
||||
## 🤔 결정 기준
|
||||
| 응용 | Approach |
|
||||
|---|---|
|
||||
| Setpoint regulation | PID |
|
||||
| Multi-state control | MPC |
|
||||
| Distributed | Consensus protocol |
|
||||
| Homeostatic system | Negative feedback |
|
||||
| Growth (controlled) | Positive feedback + saturation |
|
||||
| Multi-agent | Active inference / consensus |
|
||||
| AI alignment | Reward hacking detection |
|
||||
|
||||
**기본값**: PID 의 baseline. 매 model-aware = MPC. 매 multi-agent = active inference.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Systems Theory]] · [[Control-Theory]] · [[Multi-agent-System|Multi-Agent-Systems]]
|
||||
- 변형: [[Feedback-Loop]] · [[Homeostasis (항상성)|Homeostasis]] · [[Autopoiesis]]
|
||||
- 사상가: [[Norbert-Wiener]]
|
||||
- 응용: [[PID]] · [[MPC]] · [[Active-Inference]] · [[Bayesian-Brain-Hypothesis]]
|
||||
- Adjacent: [[Antifragility]] · [[Artificial-Life]] · [[Biological-Intelligence]] · [[Anarchism]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 control system. 매 multi-agent. 매 active inference. 매 cybernetic / systems thinking.
|
||||
**언제 X**: 매 specific math (control theory 의 textbook). 매 single-step decision.
|
||||
|
||||
## ❌ 안티패턴
|
||||
- **Open-loop control**: 매 perturbation 의 ignore.
|
||||
- **Variety mismatch (Ashby)**: 매 controller 의 weak.
|
||||
- **Positive feedback 의 unbounded**: 매 explosion.
|
||||
- **Reward hacking 의 ignore**: 매 unintended.
|
||||
- **2nd-order observer 의 X**: 매 self-reference 의 limit.
|
||||
|
||||
## 🧪 검증 / 중복
|
||||
- Verified (Wiener "Cybernetics", Ashby "Introduction to Cybernetics", Friston FEP).
|
||||
- 신뢰도 A.
|
||||
- Related: [[Bayesian-Brain-Hypothesis]] · [[Antifragility]] · [[Multi-agent-System|Multi-Agent-Systems]] · [[Anarchism]] · [[Computational-Neuroscience-RL]].
|
||||
|
||||
## 🕓 Changelog
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | Manual cleanup — Wiener + 2nd-order + Ashby + 매 PID / MPC / consensus / active inference code |
|
||||
Reference in New Issue
Block a user