--- id: wiki-2026-0508-constraint-satisfaction-problems title: Constraint Satisfaction Problems category: 10_Wiki/Topics status: needs_review canonical_id: self aliases: [P-Reinforce-AUTO-CSP-001] duplicate_of: none source_trust_level: A confidence_score: 0.96 tags: [auto-reinforced, constraint-satisfaction, csp, backtracking, Search-algorithm, Logic, Optimization] raw_sources: [] last_reinforced: 2026-04-20 github_commit: pending inferred_by: Claude Opus 4.7 (auto-normalize 2026-05-08) tech_stack: language: unspecified framework: unspecified --- # [[Constraint-Satisfaction-Problems]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) > "ν•œκ³„ λ‚΄μ—μ„œμ˜ 졜적: '이 쑰건은 λ§Œμ‘±ν•΄μ•Ό ν•˜κ³  μ € 쑰건은 ν”Όν•΄μ•Ό ν•œλ‹€'λŠ” μˆ˜λ§Žμ€ μ œμ•½ 사항을 λͺ¨λ‘ μΆ©μ‘±ν•˜λŠ” 단 ν•˜λ‚˜μ˜ μ •λ‹΅(λ˜λŠ” μ΅œμ ν•΄)을 μ°Ύμ•„λ‚΄λŠ” μˆ˜ν•™μ  수수께끼 풀이 μ—”μ§„." ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) μ œμ•½ μΆ©μ‘± 문제(Constraint-Satisfaction-Problems, CSP)λŠ” λ³€μˆ˜ μ„ΈνŠΈμ˜ 값이 일련의 μ œμ•½ 쑰건을 λ§Œμ‘±ν•΄μ•Ό ν•˜λŠ” μˆ˜ν•™μ  λ¬Έμ œμž…λ‹ˆλ‹€. 1. **3λŒ€ ꡬ성 μš”μ†Œ**: * **Variables (V)**: 값을 ν• λ‹Ήλ°›μ•„μ•Ό ν•˜λŠ” λŒ€μƒ. * **Domains (D)**: 각 λ³€μˆ˜κ°€ κ°€μ§ˆ 수 μžˆλŠ” κ°’μ˜ λ²”μœ„. * **Constraints (C)**: λ³€μˆ˜ 간에 μ§€μΌœμ•Ό ν•  κ·œμΉ™ (예: 같은 색은 이웃할 수 μ—†μŒ). 2. **핡심 μ•Œκ³ λ¦¬μ¦˜**: * **Backtracking Search**: 값을 ν•˜λ‚˜μ”© 넣어보닀 μ œμ•½μ— 걸리면 λ’€λ‘œ λŒμ•„κ°€ λ‹€λ₯Έ μ‹œλ„. * **Constraint Propagation (AC-3)**: 미리 λΆˆκ°€λŠ₯ν•œ 후보ꡰ을 μž˜λΌλ‚΄λŠ” 기술. ([[Efficiency]]와 μ—°κ²°) * **[[Heuristics]]**: MRV(μ΅œμ†Œ μž”μ—¬ κ°’), Degree Heuristic 등을 톡해 탐색 속도 κ·ΉλŒ€ν™”. ([[Search-Strategy]]와 μ—°κ²°) ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (Contradictions & Updates) - **κ³Όκ±° λ°μ΄ν„°μ™€μ˜ 좩돌**: κ³Όκ±°μ—λŠ” λ‹¨μˆœνžˆ '닡을 μ°ΎλŠλƒ λ§ˆλŠλƒ'의 μ •μ±…(Satisfiability)에 μ§‘μ€‘ν–ˆμœΌλ‚˜, ν˜„λŒ€ 정책은 μ œμ•½μ„ λΆ€λΆ„μ μœΌλ‘œ μœ„λ°˜ν•˜λ”λΌλ„ μ΅œμƒμ˜ κ²°κ³Όλ₯Ό λ‚΄λŠ” 'μ—°μ„± μ œμ•½ μ •μ±…(Soft Constraints)'κ³Ό μ΅œμ ν™” 정책을 결합함(RL Update). - **μ •μ±… λ³€ν™”(RL Update)**: 졜근의 AI μŠ€μΌ€μ€„λ§ μ •μ±…μ΄λ‚˜ μΉ© 섀계 μ •μ±…(EDA) 등은 수쑰 개의 λ³€μˆ˜μ™€ μ œμ•½ 정책이 μ–½νžŒ κ±°λŒ€ CSP 문제둜 μ§„ν™”ν–ˆμœΌλ©°, 이λ₯Ό AI κ°€ κ°•ν™”ν•™μŠ΅ μ •μ±…μœΌλ‘œ ν•΄κ²°ν•˜λ €λŠ” μ‹œλ‚˜λ¦¬μ˜€κ°€ μ£Όλ₯˜μž„. ## πŸ”— 지식 μ—°κ²° (Graph) - [[Efficiency]], [[Search-Strategy]], [[Logic]], [[Complexity-Theory]], [[Optimization]] - **Key Examples**: Map coloring, Sudoku, Scheduling, Protein folding. --- ## πŸ€– LLM ν™œμš© 힌트 (How to Use This Knowledge) **μ–Έμ œ 이 지식을 μ“°λŠ”κ°€:** - *(TODO)* **μ–Έμ œ μ“°λ©΄ μ•ˆ λ˜λŠ”κ°€:** - *(TODO)* ## πŸ§ͺ 검증 μƒνƒœ (Validation) - **정보 μƒνƒœ:** needs_review - **좜처 신뒰도:** A - **κ²€ν†  이유:** *(P-Reinforce Phase 1 μžλ™ μ •κ·œν™”. λ³Έλ¬Έ 검증 ν•„μš”.)* ## 🧬 쀑볡 검사 (Duplicate Check) - **κΈ°μ‘΄ μœ μ‚¬ λ¬Έμ„œ:** *(TODO: μΈλ±μ„œ ν΄λŸ¬μŠ€ν„° 리포트 μ°Έμ‘°)* - **처리 방식:** UPDATE (μžλ™ μ •κ·œν™”) - **처리 이유:** Phase 1 μ •κ·œν™” β€” μ˜› ν…œν”Œλ¦Ώ/λˆ„λ½ ν•„λ“œ 보강. ## πŸ•“ λ³€κ²½ 이λ ₯ (Changelog) | λ‚ μ§œ | λ³€κ²½ λ‚΄μš© | 처리 방식 | 신뒰도 | |------|-----------|-----------|--------| | 2026-05-08 | P-Reinforce Phase 1 μ •κ·œν™” (frontmatter + 헀더 ν‘œμ€€ν™”) | UPDATE | A | ## πŸ’» μ½”λ“œ νŒ¨ν„΄ (Code Patterns) **νŒ¨ν„΄ 1:** *(TODO: 이 ν”„λ‘œμ νŠΈ μ»¨λ²€μ…˜ λ°˜μ˜ν•œ ꡬ쑰 μŠ€μΌˆλ ˆν†€)* ```text # TODO ``` ## πŸ€” μ˜μ‚¬κ²°μ • κΈ°μ€€ (Decision Criteria) **선택 Aλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **선택 Bλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **κΈ°λ³Έκ°’:** > *(TODO)* ## ❌ μ•ˆν‹°νŒ¨ν„΄ (Anti-Patterns) - **[μ•ˆν‹°νŒ¨ν„΄]:** *(TODO: 무엇을 ν•˜λ©΄ μ•ˆ λ˜λŠ”κ°€ + 이유 + λŒ€μ‹  무엇을)*