4. Knowledge and Logic (1)
์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ(Knowledge-Based Agents)
- ์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ(Knowledge-based agents): ์ง์์ ๋ด๋ถ ํํ(internal representation of knowledge)์ ๋ํ ์ถ๋ก (reasoning) ๊ณผ์ ์ ํตํด ์ทจํ ํ๋์ ๊ฒฐ์
- ๊ธฐ์กด์ ๋ฌธ์ ํด๊ฒฐ ์์ด์ ํธ(problem-solving agents in Search): ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋(actions)๊ณผ ํน์ ์ํ(specific state)์์ ํน์ ํ๋์ ๊ฒฐ๊ณผ๋ฅผ ์์ง๋ง, ์ผ๋ฐ์ ์ธ ์ฌ์ค(general facts)์ ์์ง ๋ชปํจ.
- ์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ ์ง์์ ์ํด ๋
ผ๋ฆฌ(logic)๋ฅผ ์ผ๋ฐ์ ์ธ ํํ ํด๋์ค๋ก ๊ฐ๋ฐ
- ๋ค์ํ ๋ชฉ์ ์ ๋ง๊ฒ ์ ๋ณด ๊ฒฐํฉ ๊ฐ๋ฅ
- ๋ช ์์ ์ผ๋ก ๊ธฐ์ ๋ ๋ชฉํ(explicitly described goals) ํํ๋ก ์๋ก์ด ์์ ์์ฉ
- ํ๊ฒฝ์ ๋ํ ์๋ก์ด ์ง์์ ๋ฃ๊ฑฐ๋(told) ํ์ตํ์ฌ(learning) ๋น ๋ฅด๊ฒ ๋ฅ๋ ฅ ํ๋ณด
- ๊ด๋ จ ์ง์ ์ ๋ฐ์ดํธ๋ฅผ ํตํด ํ๊ฒฝ ๋ณํ์ ์ ์
์ง์ ๋ฒ ์ด์ค(Knowledge Base)
- ์ง์ ๋ฒ ์ด์ค(KB): ๋ฌธ์ฅ(sentences)๋ค์ ์งํฉ
- ๊ฐ ๋ฌธ์ฅ์ ์ง์ ํํ ์ธ์ด(knowledge representation langauge)๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ธ์ด๋ก ํํ๋๋ฉฐ, ์ธ์์ ๋ํ ์ด๋ค ์ฃผ์ฅ(assertion)์ ๋ํ๋.
- ๋ค๋ฅธ ๋ฌธ์ฅ์ผ๋ก๋ถํฐ ๋์ถ๋์ง ์๊ณ ์ฃผ์ด์ง ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ ๋ฌธ์ฅ์ ๊ณต๋ฆฌ(axiom)๋ผ๊ณ ๋ถ๋ฆ.
- ์ง์ ๋ฒ ์ด์ค์ ์ ๋ฌธ์ฅ์ ์ถ๊ฐ(add new sentences)ํ๊ฑฐ๋ ์๋ ค์ง ๊ฒ์ ์ง์(query what is known)ํ๋ ๋ฐฉ๋ฒ ํ์
- ํ์ค ๋ช
์นญ:
TELL(์ถ๊ฐ) ๋ฐASK(์ง์) - ๋ ์์ ๋ชจ๋ ์ถ๋ก (inference), ์ฆ ์ค๋๋ ๋ฌธ์ฅ์ผ๋ก๋ถํฐ ์๋ก์ด ๋ฌธ์ฅ์ ๋์ถํ๋ ๊ฒ์ ํฌํจํ ์ ์์.
- ํ์ค ๋ช
์นญ:
์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ์ ๊ฐ์(Outline of a Knowledge-Based Agent)
function KB-AGENT(percept) returns an action
persistent: KB, a knowledge base
t, a counter, initially 0, indicating time
TELL(KB, MAKE-PERCEPT-SENTENCE(percept,t))
action <- ASK(KB, MAKE-ACTION-QUERY(t))
TELL(KB, MAKE-ACTION-SENTENCE(action,t))
t <- t + 1
return action
A generic knowledge-based agent (์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ)
Given a percept (์ง๊ฐ), the agent adds the percept to its knowledge base, asks the knowledge base for the best action, and tells the knowledge base that it has in fact taken that action.
A Wumpus World
๊ตฌ์ฑ ์์(Components)
- Wumpus(The wumpus): ๋ฐฉ์ ๋ค์ด์ค๋ ์ฌ๋์ ๋๊ตฌ๋ ์ก์๋จน๋ ์ง์น
- ์์ด์ ํธ(An agent): ํ์ด(arrow)์ด ํ๋๋ง ์์.
- ๋ฐ๋ฅ ์๋ ๊ตฌ๋ฉ์ด(Bottomless pits): ์ด ๋ฐฉ์ ๋ค์ด์ค๋ ์ฌ๋์ ๊ฐ๋ (Wumpus๋ ์ ์ธ)
- ๊ธ(A heap of gold)
๊ณผ์ ์ ์(The precise definition of the task)
- ์ฑ๊ณผ ์ธก์ (Performance measure)
- ๊ธ์ ๊ฐ์ง๊ณ ๋๊ตด ๋ฐ์ผ๋ก ๋๊ฐ๋ ๊ฒฝ์ฐ: ์
- ๊ตฌ๋ฉ์ด์ ๋น ์ง๊ฑฐ๋ Wumpus์๊ฒ ์ก์๋จนํ๋ ๊ฒฝ์ฐ: ์
- ์ทจํ ํ๋ ํ๋๋น: ์
- ํ์ด ์ฌ์ฉ์: ์
- ์์ด์ ํธ๊ฐ ์ฃฝ๊ฑฐ๋ ๋๊ตด ๋ฐ์ผ๋ก ๋๊ฐ ๋ ๊ฒ์ ์ข ๋ฃ
- ํ๊ฒฝ(Environment)
- ๊ฒฉ์ํ ๋ฐฉ
- ์์ด์ ํธ๋ ํญ์
[1, 1]์์ ๋์ชฝ์ ๋ฐ๋ผ๋ณด๊ณ ์์ - ๊ธ๊ณผ Wumpus์ ์์น๋ ๋ฌด์์๋ก ์ ํ(์์ ์ง์ ์ ์ธ)
- ๊ตฌ๋๊ธฐ(Actuators)
- ํ๋:
Forward(์์ผ๋ก ์ด๋),TurnLeft(์ข๋ก ํ์ ),TurnRight(์ฐ๋ก ํ์ ) - ๊ตฌ๋ฉ์ด๋ ์ด์์๋ Wumpus๊ฐ ์๋ ์นธ์ ์ง์ ํ๋ฉด ์ฌ๋ง(์ฃฝ์ Wumpus๊ฐ ์๋ ์นธ์ ์์ )
Grab: ์์ด์ ํธ์ ๊ฐ์ ์นธ์ ๊ธ์ด ์์ ๊ฒฝ์ฐ ์ง์.Shoot: ์์ด์ ํธ๊ฐ ํฅํ๋ ๋ฐฉํฅ์ผ๋ก ํ์ด ๋ฐ์ฌ. Wumpus๋ฅผ ๋ง์ถ๊ฑฐ๋ ๋ฒฝ์ ๋ถ๋ชํ ๋๊น์ง ์ง์ง. ํ์ด์ ํ๋๋ฟ์ด๋ฏ๋ก ์ฒซ ๋ฒ์งธShootํ๋๋ง ํจ๊ณผClimb:[1, 1]์์๋ง ๋๊ตด ๋ฐ์ผ๋ก ๋๊ฐ ์ ์์.
- ํ๋:
- ๊ฐ๊ฐ๊ธฐ(Sensors): ๊ฐ๊ฐ ๋จ์ผ ๋นํธ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ 5๊ฐ์ง ๊ฐ๊ฐ๊ธฐ
- Wumpus ๋ฐ๋ก ์ธ์ ์นธ: Stench(์ ์ทจ) ์ธ์ง
- ๊ตฌ๋ฉ์ด ๋ฐ๋ก ์ธ์ ์นธ: Breeze(์ฐ๋ค๋ฐ๋) ์ธ์ง
- ๊ธ์ด ์๋ ์นธ: Glitter(๋ฐ์ง์) ์ธ์ง
- ๋ฒฝ์ ๋ถ๋ชํ ๋: Bump(์ถฉ๋) ์ธ์ง
- Wumpus๊ฐ ์ฃฝ์ ๋: ๋๊ตด ์ด๋์๋ ์ธ์ง ๊ฐ๋ฅํ ๋นํตํ Scream(๋น๋ช ) ๋ฐฉ์ถ
- ์ง๊ฐ(percepts): ๋ค์ฏ ๊ฐ์ ๊ธฐํธ ๋ชฉ๋ก ํํ๋ก ์์ด์ ํธ์๊ฒ ์ ๊ณต
- ์: ์
์ทจ์ ์ฐ๋ค๋ฐ๋์ ์์ผ๋, ๋ฐ์ง์, ์ถฉ๋, ๋น๋ช
์ด ์์ผ๋ฉด
[Stench, Breeze, None, None, None]์์
- ์: ์
์ทจ์ ์ฐ๋ค๋ฐ๋์ ์์ผ๋, ๋ฐ์ง์, ์ถฉ๋, ๋น๋ช
์ด ์์ผ๋ฉด
Wumpus ์ธ๊ณ์์์ ์ง์ ๊ธฐ๋ฐ ์์ด์ ํธ
- ๋น๊ณต์์ ์ง์ ํํ ์ธ์ด(informal knowledge representation language) ์ฌ์ฉ: ๊ฒฉ์์ ๊ธฐํธ ๊ธฐ๋ก.
- ์์ด์ ํธ์ ์ด๊ธฐ ์ง์ ๋ฒ ์ด์ค: ํ๊ฒฝ์ ๊ท์น ํฌํจ
[1, 1]์ ์์ผ๋ฉฐ ์์ ํจ์ ์.A(Agent),OK(Safe)๋ก ํ์
- ์ฒซ ์ง๊ฐ
[None, None, None, None, None][1, 2]์[2, 1]์ด ์์ ํจ์ ์ถ๋ก (OK) - ์ ์คํ ์์ด์ ํธ: ์์ ํ๋ค๊ณ ์๋ ค์ง(OK) ์นธ์ผ๋ก๋ง ์ด๋
[2, 1]๋ก ์ด๋ ํBreeze("B") ์ง๊ฐ ์ธ์ ์นธ์ ๊ตฌ๋ฉ์ด(Pit) ๊ฐ๋ฅ์ฑ("P?") ํ์[1, 1]๋ก ๋์๊ฐ[1, 2]๋ก ์ด๋[1, 2]์์Stench์ง๊ฐ ์ผ๋ จ์ ์ถ๋ก ์ ํตํด Wumpus๊ฐ[1, 3]์ ์์(W!)๊ณผ[2, 2]๊ฐ ์์ ํจ(OK)์ ๋์ถ- ์์ด์ ํธ๋
[2, 3]์ผ๋ก ์ด๋Glitter๊ฐ์ง ๊ธ์ ์ก๊ณ ์ง์ผ๋ก ๋์๊ฐ์ผ ํจ. - ์์ด์ ํธ๊ฐ ์ฌ์ฉ ๊ฐ๋ฅํ ์ ๋ณด๋ก๋ถํฐ ๊ฒฐ๋ก ์ ๋์ถํ๋ ๋ชจ๋ ๊ฒฝ์ฐ: ๊ฐ์ฉํ ์ ๋ณด๊ฐ ์ ํํ๋ค๋ฉด, ๊ทธ ๊ฒฐ๋ก ์ ๋ฐ๋์(guaranteed) ์ ํ. ๋ ผ๋ฆฌ์ ์ถ๋ก ์ ๊ทผ๋ณธ์ ์ธ ์์ฑ(fundamental property)
๋ ผ๋ฆฌ์ ๊ฐ๋ (Concepts of Logical Representations)
- ๊ตฌ๋ฌธ(syntax): ํํ ์ธ์ด(representation language)์ ๋ฌธ๋ฒ. ์ ๊ตฌ์ฑ๋(well formed) ๋ชจ๋ ๋ฌธ์ฅ์ ์ง์
- ์: ""๋ ์ ๊ตฌ์ฑ๋ ๋ฌธ์ฅ, ""๋ ์๋.
- ์๋ฏธ๋ก (semantics): ๋ฌธ์ฅ์ ์๋ฏธ(meaning) ์ ์
- ๊ฐ ๊ฐ๋ฅํ ์ธ๊ณ(possible world)์ ๋ํ ๊ฐ ๋ฌธ์ฅ์ ์ฐธ(truth)์ ์ ์
- ํ์ค ๋ ผ๋ฆฌ: ๋ชจ๋ ๋ฌธ์ฅ์ ์ฐธ ๋๋ ๊ฑฐ์ง(๋ ์ค ํ๋)
- ๋ชจ๋ธ(model): "๊ฐ๋ฅํ ์ธ๊ณ" ๋์ ์ฌ์ฉํ๋ ์ฉ์ด
- ๋ฌธ์ฅ ๊ฐ ๋ชจ๋ธ ์์ ์ฐธ์ด๋ฉด, ์ด ๋ฅผ ๋ง์กฑ(satisfies)์ํค๊ฑฐ๋ ์ด ์ ๋ชจ๋ธ์ด๋ผ๊ณ ํจ.
- : ์ ๋ชจ๋ ๋ชจ๋ธ ์งํฉ
๋ ผ๋ฆฌ์ ์๋ฐ(Logical Entailment)
- ๋
ผ๋ฆฌ์ ์๋ฐ(): ๋ฌธ์ฅ์ด ๋ค๋ฅธ ๋ฌธ์ฅ์ผ๋ก๋ถํฐ ๋
ผ๋ฆฌ์ ์ผ๋ก ๋์ถ๋จ(follows logically)
- ๊ณต์์ ์ ์: ๋ ๊ฐ ์ฐธ์ธ ๋ชจ๋ ๋ชจ๋ธ์์ ๋ ์ฐธ์ธ ๊ฒฝ์ฐ์๋ง ์ฑ๋ฆฝ
- ๊ธฐํธ ํํ: if and only if .
- ์ด๋ฉด, ๋ ๋ณด๋ค ๋ ๊ฐํ ์ฃผ์ฅ(stronger assertion)(๋ ๋ง์ ๊ฐ๋ฅํ ์ธ๊ณ๋ฅผ ๋ฐฐ์ ํจ)
- ์: ""์ ""์ ์๋ฐ
Wumpus ์ธ๊ณ์ ๋ ผ๋ฆฌ์ ์ฌ๊ณ ์ ์ฉ
[1, 1]์์ ์๋ฌด๊ฒ๋ ๊ฐ์ง ๋ชปํ๊ณ[2, 1]์์ ์ฐ๋ค๋ฐ๋(Breeze)์ ๊ฐ์งํ ์ํฉ ๊ณ ๋ ค- ์ด ์ง๊ฐ(percepts)๊ณผ Wumpus ์ธ๊ณ ๊ท์น ์ง์(KB)์ด ๊ฒฐํฉ๋จ.
- ์์ด์ ํธ์ ๊ด์ฌ์ฌ: ์ธ์ ํ ์นธ(
[1, 2],[2, 2], [3, 1])์ ๊ตฌ๋ฉ์ด๊ฐ ์๋์ง ์ฌ๋ถ - ๊ตฌ๋ฉ์ด ์ฌ๋ถ 3๊ฐ ์นธ์ ๋ํ ๊ฐ๋ฅํ ๋ชจ๋ธ์ ๊ฐ
- KB๋ ์์ด์ ํธ๊ฐ ์๋ ๊ฒ๊ณผ ๋ชจ์๋๋ ๋ชจ๋ธ์์๋ ๊ฑฐ์ง
- ์:
[1, 1]์ ์ฐ๋ค๋ฐ๋์ด ์์ผ๋ฏ๋ก,[1, 2]์ ๊ตฌ๋ฉ์ด๊ฐ ์๋ ๋ชจ๋ธ์์๋ KB๊ฐ ๊ฑฐ์ง - KB๊ฐ ์ฐธ์ธ ๋ชจ๋ธ์ 3๊ฐ ์กด์ฌ(solid line)
- ์:
- ๋ ๊ฐ์ง ๊ฐ๋ฅํ ๊ฒฐ๋ก (๋ฌธ์ฅ) ๊ณ ๋ ค:
- $\alpha_1 = $"There is no pit in
[1, 2]." - $\alpha_2 = $"There is no pit in
[2, 2]." - KB๊ฐ ์ฐธ์ธ ๋ชจ๋ ๋ชจ๋ธ์์ ๋ ์ฐธ .(
[1, 2]์ ๊ตฌ๋ฉ์ด๊ฐ ์์์ ํ์ ) - KB๊ฐ ์ฐธ์ธ ์ผ๋ถ ๋ชจ๋ธ์์ ๋ ๊ฑฐ์ง .(
[2, 2]์ ๊ตฌ๋ฉ์ด๊ฐ ์์์ ํ์ ํ ์ ์์.)
- $\alpha_1 = $"There is no pit in
- ๋ชจ๋ธ ๊ฒ์ฌ(model checking): ๋
ผ๋ฆฌ์ ์ถ๋ก (logical inference)์ ์ํํ๋ ํน์ ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ
- ์ธ์ง ํ์ธํ๊ธฐ ์ํด ๋ชจ๋ ๊ฐ๋ฅํ ๋ชจ๋ธ์ ์ด๊ฑฐ(enumerate)
์ถ๋ก ์ ๊ณต์ ์ ์(Formal Definition of Inference)
- ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ ๊ฐ KB๋ก๋ถํฐ ๋ฅผ ๋์ถ(derive)ํ ์ ์๋ค๋ฉด, ๋ก ํ๊ธฐ
- ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ์ ์์ฑ(Properties of an inference algorithm)
- ๊ฑด์ ์ฑ(sound, truth-preserving): ์ค์ง ์๋ฐ๋(entailed) ๋ฌธ์ฅ๋ง์ ๋์ถํ๋ ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ
- KB๊ฐ ์ค์ ์ธ๊ณ์์ ์ฐธ์ด๋ผ๋ฉด, ๊ฑด์ ํ ์ถ๋ก ์ ์ฐจ๋ก KB์์ ๋์ถ๋ ๋ ์ค์ ์ธ๊ณ์์๋ ์ฐธ
- ์์ ์ฑ(complete): ์๋ฐ๋ ๋ชจ๋ ๋ฌธ์ฅ์ ๋์ถํ ์ ์๋ ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ
- ๊ธฐ๋ฐ ๋ค์ง๊ธฐ(Grounding): ๋ ผ๋ฆฌ์ ์ถ๋ก ๊ณผ์ ๊ณผ ์์ด์ ํธ๊ฐ ์กด์ฌํ๋ ์ค์ ํ๊ฒฝ ์ฌ์ด์ ์ฐ๊ฒฐ
- KB์ ์ผ๋ฐ ๊ท์น์ ์ผ๋ฐ์ ์ผ๋ก ํ์ต(learning)์ด๋ผ๋ ๋ฌธ์ฅ ๊ตฌ์ฑ ๊ณผ์ ์ ์ํด ์์ฑ(cf., ์ง์ ๊ณตํ(knowledge engineering))
- ๊ฑด์ ์ฑ(sound, truth-preserving): ์ค์ง ์๋ฐ๋(entailed) ๋ฌธ์ฅ๋ง์ ๋์ถํ๋ ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ
๋ช ์ ๋ ผ๋ฆฌ(Propositional logic)
- ๋ฌธ์ฅ์ ๊ตฌ์กฐ(syntax)์ ๋ฌธ์ฅ์ ์ฐธ์ด ๊ฒฐ์ ๋๋ ๋ฐฉ์(semantics) ์ ์
- ์๋ฏธ๋ก ์ ์๋ฐ(semantic notion of entailment)์ ๊ตฌํํ๋ ๋จ์ํ ๋ ผ๋ฆฌ์ ์ถ๋ก ์๊ณ ๋ฆฌ์ฆ ๋์ถ
๋ช ์ ๋ ผ๋ฆฌ์ ๊ตฌ๋ฌธ(Syntax of Propositional Logic)
- ๋ช ์ ๊ธฐํธ(Propositional symbol, variable)
- ๋
ผ๋ฆฌ์ ์ฐ๊ฒฐ์ฌ(Logical connectives)
- (not)
- (and)
- (or)
- (implies)
- (biconditional)
๋ช ์ ๋ ผ๋ฆฌ์ ์๋ฏธ๋ก (Semantics of Propositional Logic)
- ์๋ฏธ๋ก : ํน์ ๋ชจ๋ธ์ ๋ํ ๋ฌธ์ฅ์ ์ฐธ์ ๊ฒฐ์ ํ๋ ๊ท์น ์ ์
- ๋ช
์ ๋
ผ๋ฆฌ์์ ๋ชจ๋ธ: ๋จ์ํ ๋ชจ๋ ๋ช
์ ๊ธฐํธ์ ๋ํ ์ฐธ๊ฐ(
true๋๋false)์ ์ค์ - ๊ฐ์ ๊ธฐํธ๊ฐ ์๋ ๊ฒฝ์ฐ ๊ฐ์ ๊ฐ๋ฅํ ๋ชจ๋ธ
- ๋ชจ๋ธ์ ์์ ํ ์ํ์ ๊ฐ์ฒด(mathematical objects)
- ๋ณตํฉ ๋ฌธ์ฅ(Complex sentences):
- ๋ ์์ ๊ฐ ๊ฑฐ์ง์ผ ๋๋ง ์ฐธ(iff)
- ๋ ์์ ์ ๋ชจ๋ ์ฐธ์ผ ๋๋ง ์ฐธ
- ๋ ์์ ๋๋ ๋ ์ค ํ๋๊ฐ ์ฐธ์ผ ๋๋ง ์ฐธ
- ๋ ์์ ๋ ์ฐธ์ด๊ณ ๋ ๊ฑฐ์ง์ธ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ ์ฐธ
- ๋ ์์ ์ ๊ฐ ๋ชจ๋ ์ฐธ์ด๊ฑฐ๋ ๋ชจ๋ ๊ฑฐ์ง์ผ ๋๋ง ์ฐธ
- ์ง๋ฆฌํ(truth tables): ๊ท์น์ ํํ ๊ตฌ์ฑ ์์์ ๋ชจ๋ ๊ฐ๋ฅํ ์ฐธ๊ฐ ํ ๋น์ ๋ํ ๋ณตํฉ ๋ฌธ์ฅ์ ์ฐธ๊ฐ์ ์ง์
๋จ์ํ ์ง์ ๋ฒ ์ด์ค(A Simple Knowledge Base)
- Wumpus ์ธ๊ณ๋ฅผ ์ํ KB(๋ช
์ ๊ธฐํธ ์ ์):
- : [x, y]์ ๊ตฌ๋ฉ์ด(Pit) ์กด์ฌ
- : [x, y]์ Wumpus ์กด์ฌ
- : [x, y]์ ์ฐ๋ค๋ฐ๋(Breeze) ์กด์ฌ
- : [x, y]์ ์ ์ทจ(Stench) ์กด์ฌ
- : ์์ด์ ํธ๊ฐ ์์น [x, y]์ ์กด์ฌ
- ๊ฐ ๋ฌธ์ฅ์ ๋ก ํ๊ธฐ:
- :
[1, 1]์ ๊ตฌ๋ฉ์ด๊ฐ ์์. . - : ์ด์ ์นธ์ ๊ตฌ๋ฉ์ด๊ฐ ์์ ๋๋ง ์นธ์ ์ฐ๋ค๋ฐ๋์ด ์์(๊ด๋ จ ์นธ๋ง ํฌํจ) .
- : .
- ์ ๋ฌธ์ฅ๋ค์ ๋ชจ๋ Wumpus ์ธ๊ณ์์ ์ฐธ
- : ์์ด์ ํธ๊ฐ ๋ฐฉ๋ฌธํ ์ฒ์ ๋ ์นธ์ ๋ํ ์ฐ๋ค๋ฐ๋ ์ง๊ฐ ํฌํจ .
- : .
- :
๋จ์ํ ์ถ๋ก ์ ์ฐจ(A Simple Inference Procedure)
- ๋ชฉํ: ์ธ์ง ๊ฒฐ์ (KB๊ฐ ๋ฅผ ์๋ฐํ๋๊ฐ?)
- ๋ชจ๋ธ ๊ฒ์ฌ(Model checking):
- ๋ชจ๋ธ(๋ชจ๋ ๋ช ์ ๊ธฐํธ์ ๋ํ ์ฐธ/๊ฑฐ์ง ํ ๋น)์ ์ด๊ฑฐ
- KB๊ฐ ์ฐธ์ธ ๋ชจ๋ ๋ชจ๋ธ์์ ๊ฐ ์ฐธ์ธ์ง ํ์ธ
- ์์์ 7๊ฐ ๊ธฐํธ: ๋ฐ .
- ๊ฐ์ ๊ฐ๋ฅํ ๋ชจ๋ธ; ์ด ์ค KB๊ฐ ์ฐธ์ธ ๋ชจ๋ธ์ 3๊ฐ
- ์ด 3๊ฐ ๋ชจ๋ธ์์ ๊ฐ ์ฐธ์ด๋ฏ๋ก,
[1, 2]์ ๊ตฌ๋ฉ์ด๊ฐ ์์์ ๊ฒฐ๋ก
function TT-ENTAILS?(KB, ฮฑ) returns true or false
inputs: KB, the knowledge base, a sentence in propositional logic
ฮฑ, the query, a sentence in propositional logic
symbols <- a list of the proposition symbols in KB and ฮฑ
return TT-CHECK-ALL(KB, ฮฑ, symbols, {})
function TT-CHECK-ALL(KB, ฮฑ, symbols, model) returns true or false
if EMPTY?(symbols) then
if PL-TRUE?(KB, model) then return PL-TRUE?(ฮฑ, model)
else return true // when KB is false, always return true
else
P <- FIRST(symbols)
rest <- REST(symbols)
return (TT-CHECK-ALL(KB, ฮฑ, rest, model โช {P = true})
and
TT-CHECK-ALL(KB, ฮฑ, rest, model โช {P = false }))
๋ช ์ ์ ํจ์(propositional entailment)๋ฅผ ๊ฒฐ์ ํ๊ธฐ ์ํ ์ง๋ฆฌํ ์ด๊ฑฐ ์๊ณ ๋ฆฌ์ฆ(truth-table enumeration algorithm)
(๋ truth table (์ง๋ฆฌํ)๋ฅผ ์๋ฏธ)
PL-TRUE?๋ ์ด๋ค ๋ฌธ์ฅ(sentence)์ด ๋ชจ๋ธ(model) ๋ด์์ ์ฑ๋ฆฝํ๋ ๊ฒฝ์ฐtrue๋ฅผ ๋ฐํ- ๋ณ์ model์ ์ฌ๋ณผ(symbol)๋ค์ ์ผ๋ถ์ ๋ํ ํ ๋น(assignment)์ธ ๋ถ๋ถ ๋ชจ๋ธ(partial model)์ ๋ํ๋.
- ํค์๋
and๋ ์์ฌ ์ฝ๋(pseudocode) ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ค์ ํจ์ ์ฌ๋ณผ(infix function symbol)์ด๋ฉฐ ๋ช ์ ๋ ผ๋ฆฌ(propositional logic)์ ์ฐ์ฐ์(operator)๊ฐ ์๋. ๋ ๊ฐ์ ์ธ์๋ฅผ ์ทจํ๊ณtrue๋๋false๋ฅผ ๋ฐํ
