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,243 @@
|
||||
---
|
||||
id: wiki-2026-0508-cpted
|
||||
title: CPTED (Crime Prevention Through Environmental Design)
|
||||
category: 10_Wiki/Topics
|
||||
status: verified
|
||||
canonical_id: self
|
||||
aliases: [CPTED, environmental design, defensible space, broken windows, urban safety, Oscar Newman]
|
||||
duplicate_of: none
|
||||
source_trust_level: A
|
||||
confidence_score: 0.88
|
||||
verification_status: applied
|
||||
tags: [urban-planning, security, cpted, defensible-space, broken-windows, smart-city, environmental-design]
|
||||
raw_sources: []
|
||||
last_reinforced: 2026-05-10
|
||||
github_commit: pending
|
||||
tech_stack:
|
||||
language: urban planning / security
|
||||
applicable_to: [Urban Design, Smart City, Security Architecture]
|
||||
---
|
||||
|
||||
# CPTED (Crime Prevention Through Environmental Design)
|
||||
|
||||
## 📌 한 줄 통찰
|
||||
> **"매 공간 으로 범죄 의 prevention"**. 매 CCTV 의 reactive X — 매 building / lighting / fence 의 design 의 의지 의 deter. 매 5 strategy. 매 modern: 매 smart city + AI 의 simulation 의 augment.
|
||||
|
||||
## 📖 핵심
|
||||
|
||||
### 매 5 strategy (2nd-gen CPTED)
|
||||
1. **Natural Surveillance**: 매 visibility (low fence, transparent wall, lighting).
|
||||
2. **Natural Access Control**: 매 single entry, 매 clear pathway.
|
||||
3. **Territorial Reinforcement**: 매 public-private boundary 의 clear.
|
||||
4. **Activity Support**: 매 people 의 traffic.
|
||||
5. **Maintenance** (Image): 매 broken window 의 fix.
|
||||
|
||||
### 매 historical
|
||||
- **Jane Jacobs** (1961): "The Death and Life of Great American Cities" — 매 "eyes on the street".
|
||||
- **Oscar Newman** (1972): "Defensible Space".
|
||||
- **C. Ray Jeffery** (1971): 매 CPTED term.
|
||||
- **Wilson & Kelling** (1982): 매 broken windows theory.
|
||||
|
||||
### 매 1st vs 2nd vs 3rd generation
|
||||
| 세대 | 강조 |
|
||||
|---|---|
|
||||
| 1st | 매 physical (Jeffery, Newman) |
|
||||
| 2nd | 매 social cohesion (community) |
|
||||
| 3rd | 매 sustainability + tech |
|
||||
|
||||
### 매 application 예
|
||||
- **Park**: 매 sightline + lighting + 매 wide path.
|
||||
- **Apartment**: 매 lobby visibility + 매 single entry + 매 maintained.
|
||||
- **Parking lot**: 매 lighting + 매 emergency phone + 매 cctv.
|
||||
- **School**: 매 layered security + 매 visibility + 매 community.
|
||||
- **ATM**: 매 lighting + 매 visibility + 매 mirror.
|
||||
- **Transit station**: 매 sightline + 매 staff presence.
|
||||
|
||||
### 매 modern (smart city)
|
||||
- **AI surveillance**: 매 abnormal pattern detection.
|
||||
- **Adaptive lighting**: 매 motion-triggered.
|
||||
- **Crowd flow analytics**: 매 design feedback.
|
||||
- **Predictive crime mapping**: 매 high-risk area focus.
|
||||
- **Citizen reporting app**: 매 311 / SeeClickFix.
|
||||
|
||||
### 매 limitation / critique
|
||||
- **Displacement**: 매 crime 의 다른 area 의 move.
|
||||
- **Surveillance**: 매 privacy concern.
|
||||
- **Equity**: 매 wealthy area 의 over-invest.
|
||||
- **False sense**: 매 design 의 omnipotent X.
|
||||
- **Broken windows critique**: 매 racial bias.
|
||||
|
||||
### 매 Korea CPTED
|
||||
- 매 2014 의 시범 도시.
|
||||
- 매 경찰청 의 cooperation.
|
||||
- 매 Salt Path / 안심 귀가 길.
|
||||
- 매 mural / lighting / mirror.
|
||||
|
||||
### 매 design checklist
|
||||
1. 매 sightline 의 unobstructed?
|
||||
2. 매 lighting 의 0.5+ lux 의 every spot?
|
||||
3. 매 access route 의 single + clear?
|
||||
4. 매 dead-end / hidden alcove?
|
||||
5. 매 maintenance 의 < 24h response?
|
||||
6. 매 territoriality (sign, paint, fence)?
|
||||
7. 매 activity (cafe, store) 의 generator?
|
||||
|
||||
## 💻 패턴 (응용 — design checklist + sim)
|
||||
|
||||
### CPTED audit checklist (programmatic)
|
||||
```python
|
||||
def cpted_audit(location):
|
||||
return {
|
||||
'natural_surveillance': {
|
||||
'sightline_coverage': measure_sightlines(location), # 매 % visible
|
||||
'avg_lux_at_night': measure_lighting(location),
|
||||
'window_facing_ratio': building_facade_ratio(location),
|
||||
},
|
||||
'access_control': {
|
||||
'entry_count': count_entries(location),
|
||||
'pathway_clarity': measure_path_clarity(location),
|
||||
},
|
||||
'territoriality': {
|
||||
'boundary_markers': count_boundary_signs(location),
|
||||
'private_public_clarity': assess_boundary(location),
|
||||
},
|
||||
'activity': {
|
||||
'foot_traffic_per_hour': pedestrian_count(location),
|
||||
'commercial_density': commerce_per_sqm(location),
|
||||
},
|
||||
'maintenance': {
|
||||
'graffiti_density': count_graffiti(location),
|
||||
'broken_lighting_pct': pct_broken_lights(location),
|
||||
'litter_score': litter_density(location),
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
### Crime risk simulation
|
||||
```python
|
||||
def predict_crime_risk(area, design_params):
|
||||
"""매 simple model 의 risk score."""
|
||||
risk = 0
|
||||
risk -= design_params['lux_avg'] * 0.3
|
||||
risk -= design_params['sightline_pct'] * 0.5
|
||||
risk += design_params['hidden_alcoves'] * 2
|
||||
risk -= design_params['foot_traffic_per_hr'] * 0.01
|
||||
risk += design_params['litter_score'] * 0.5
|
||||
return max(0, risk)
|
||||
|
||||
# 매 design alternative 의 비교
|
||||
baseline = predict_crime_risk(area, current_design)
|
||||
improved = predict_crime_risk(area, {**current_design, 'lux_avg': 5, 'hidden_alcoves': 0})
|
||||
print(f'Risk reduction: {baseline - improved:.1f}')
|
||||
```
|
||||
|
||||
### Adaptive lighting (smart city)
|
||||
```python
|
||||
class AdaptiveStreetlight:
|
||||
def __init__(self, motion_sensor, schedule):
|
||||
self.sensor = motion_sensor
|
||||
self.schedule = schedule
|
||||
|
||||
def update(self):
|
||||
time = datetime.now().time()
|
||||
# 매 base level
|
||||
base_level = self.schedule.level_for(time)
|
||||
|
||||
# 매 motion 시 의 brighten
|
||||
if self.sensor.motion_detected_recently(seconds=30):
|
||||
self.set_brightness(min(100, base_level + 50))
|
||||
else:
|
||||
self.set_brightness(base_level)
|
||||
```
|
||||
|
||||
### 311 / citizen report integration
|
||||
```python
|
||||
def cpted_response_pipeline(report):
|
||||
"""매 citizen report → 매 prioritize."""
|
||||
if report.type == 'broken_streetlight':
|
||||
priority = 'high' if report.area.crime_rate > MEDIAN else 'medium'
|
||||
target_response = 24 if priority == 'high' else 72 # hours
|
||||
elif report.type == 'graffiti':
|
||||
priority = 'medium'
|
||||
target_response = 48
|
||||
elif report.type == 'overgrown_bush':
|
||||
priority = 'medium' # 매 sightline 의 obstruct
|
||||
target_response = 72
|
||||
|
||||
return dispatch(report, priority, target_response)
|
||||
```
|
||||
|
||||
### Design alternative scorer
|
||||
```python
|
||||
def score_design_options(options):
|
||||
scored = []
|
||||
for opt in options:
|
||||
score = (
|
||||
opt.surveillance_score * 0.3 +
|
||||
opt.access_control_score * 0.2 +
|
||||
opt.territoriality_score * 0.2 +
|
||||
opt.activity_score * 0.2 +
|
||||
opt.maintenance_score * 0.1
|
||||
)
|
||||
cost = opt.estimated_cost
|
||||
scored.append((opt, score, score / cost)) # 매 cost-effectiveness
|
||||
return sorted(scored, key=lambda x: -x[2])
|
||||
```
|
||||
|
||||
### Predictive crime mapping (caution)
|
||||
```python
|
||||
# 매 ProPublica / Gender Shades 의 lesson:
|
||||
# 매 historical crime data 의 bias.
|
||||
# 매 over-policing 의 reinforce.
|
||||
|
||||
def predict_with_bias_check(features, model, bias_audit):
|
||||
pred = model.predict(features)
|
||||
|
||||
# 매 demographic 의 audit
|
||||
by_demo = bias_audit.check(pred)
|
||||
if by_demo['disparity'] > 0.2:
|
||||
flag('Disparate impact detected — review required')
|
||||
|
||||
return pred
|
||||
```
|
||||
|
||||
## 🤔 결정 기준
|
||||
| 상황 | Strategy |
|
||||
|---|---|
|
||||
| Park redesign | Sightline + lighting + activity |
|
||||
| Apartment | Single entry + lobby visibility |
|
||||
| Parking | Lighting + emergency call + visibility |
|
||||
| Transit | Sightline + staff + cctv |
|
||||
| Smart city | Adaptive lighting + crowd analytics |
|
||||
| Tight budget | Lighting + maintenance |
|
||||
|
||||
**기본값**: 매 surveillance + lighting + maintenance + activity 의 first investment.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Security]]
|
||||
- 변형: [[Defensible-Space]] · [[Broken-Windows]]
|
||||
- 사상가: [[Oscar-Newman]]
|
||||
- Adjacent: [[Atmospheric-Intelligence]] · [[Algorithmic Fairness]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 urban planning. 매 building design. 매 smart city. 매 community safety initiative.
|
||||
**언제 X**: 매 systemic root cause (poverty 의 substitute). 매 surveillance state justification.
|
||||
|
||||
## ❌ 안티패턴
|
||||
- **Surveillance 의 only**: 매 design 의 ignore.
|
||||
- **Fortress design**: 매 community 의 disconnect.
|
||||
- **No maintenance**: 매 broken windows.
|
||||
- **No activity**: 매 dead street.
|
||||
- **Bias 의 ignore** (predictive crime): 매 over-policing.
|
||||
- **Rich neighborhoods 만 의 invest**: 매 inequity.
|
||||
|
||||
## 🧪 검증 / 중복
|
||||
- Verified (Jacobs 1961, Newman 1972, Wilson-Kelling 1982).
|
||||
- 신뢰도 A.
|
||||
- Related: [[Smart-City]] · [[Atmospheric-Intelligence]] · [[Surveillance-Capitalism]] · [[Algorithmic Fairness]].
|
||||
|
||||
## 🕓 Changelog
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | Manual cleanup — 5 strategy + history + smart-city + 매 audit / sim / adaptive code |
|
||||
Reference in New Issue
Block a user