논리 말로 표현된 문장들에 대한 타당한 추론을 위해, 기호를 사용하여 문장들을 표현하고 기호의 조작을 통해 문장들의 참 또는 거짓을 판정하는 분야 명제 논리(propositional logic) 명제(proposition) 참, 거짓을 분명하게 판정할 수 있는 문장 명제를 P, Q등과 같은 기호로 표현 명제 기호의 진리값(truth value)을 사용하여 명제들에 의해 표현 문장 자체의 내용에 대해서는 무관심, 문장의 진리값에만 관심 기본 명제(primitive proposition) 하나의 진술(statement)로 이루어진 최소 단위의 명제 복합 명제(compound proposition) 기본 명제들이 결합되어 만들어진 명제 논리식(logical expression) 명제를 기호로 표현한 형식 명제..
프레임(frame) 민스키가 제안한 지식표현 방법 특정 객체 또는 개념에 대한 전형적인 지식을 슬롯(slot)의 집합으로 표현하는 것 프레임의 구성 요소 슬롯(slot) 객체의 속성(attribute)을 기술하는 것 슬롯 이름(slot name)과 슬롯 값(slot value)으로 구성됨 슬롯 값(slot value) 복수 개의 패싯(facet)과 데몬(demon)으로 구성됨 패싯(facet) '측면' 또는 '양상'을 의미 속성에 대한 부가적인 정보를 지정하기 위해 사용 패싯 이름과 패싯 값의 쌍으로 구성 패싯 이름 value = 속성값(수, 문자열, 다른 프레임의 포인터 등) data-type = 속성값의 자료형 default = 디폴트값(속성값이 주어지지 않을 때 사용되는 초기값) require = ..
지식 표현 데이터(data) 특정 분야에서 관측된 아직 가공되지 않은 것 사실인 것처럼 관측되지만 오류나 잡을을 포함할 수 있다. 정보(information) 데이터를 가공하여 어떤 목적이나 의미를 갖도록 한 것 지식(knowledge) 정보를 취합하고 분석하여 얻은 대상에 대해 사람이 이해한 것 지혜(wisdom) 경험과 학습을 통해서 얻은 지식보다 높은 수준의 통찰 지식 경험이나 교육을 통해 얻어진 전문적인 이해와 체계화된 문제 해결 능력 어떤 주제나 분야에 대한 이론적 또는 실제적인 이해, 또는 현재 알려진 사실과 정보의 모음 암묵지(tacit knowledge) 형식을 갖추어 표현하기 어려운, 학습과 경험을 통해 쌓은 지식 형식지(explicit knowledge) 비교적 쉽게 형식을 갖추어 표현..
제약조건 만족 문제(constraint satisfaction problem) 주어진 제약조건을 만족하는 조합 해(combinatorial solution)를 찾는 문제 ex) N Queen problem 탐색 기반의 해결 방법 backtracking search(백트래킹 탐색) DFS를 하는 것처럼 변수에 허용되는 값을 하나씩 대입 모든 가능한 값을 대입해서 해가 없으면 이전 단계로 돌아가서 이전 단계의 변수에 다른 값을 대입 constraint propagation(제약조건 전파) 인접 변수 간의 제약 조건에 따라 각 변수에 허용될 수 없는 값들을 제거하는 방식 최적화(optimization) 여러 가지 허용되는 값들 중에서 주어진 기준을 가장 잘 만족하는 것을 선택하는 것 목적 함수(objectiv..
게임 트리(game tree) 상대가 있는 게임에서 자신과 상대방의 가능한 게임 상태를 나타낸 트리 (tic-tac-toe, 바둑, 장기, 체스 등) 게임의 결과는 마지막에 결정 많은 수(lookahead)를 볼 수록 유리 mini-max 게임 트리 MAX 노드 = 자신에 해당하는 노드. 자기에게 유리한 최댓값 선택 MIN 노드 = 상대방에 해당하는 노드. 최소값 선택 단말 노드부터 위로 올라가면서 최소(minimum)-최대(maximum)연산을 반복하여 자신이 선택할 수 있는 방법 중 가장 좋은 값을 결정. 일반적으로 게임이 끝나는 시점까지 수를 보기 어렵기 때문에, 어느 정도 깊이의 수까지 본 다음에 해당 상태에서 유리한 정도를 판정(휴리스틱 이용)하여 이를 바탕으로 최선의 방법을 선택. α-β 가지..
정보이용 탐색(Informed search) 상태 공간에 대한 정보를 이용하여 탐색 효율을 높이는 탐색 휴리스틱 탐색(heuristic search)이라고도 한다. 휴리스틱(heuristic) = 시간이나 정보가 불충분하여 합리적인 판단을 할 수 없거나 굳이 체계적이고 합리적인 판단을 할 필요가 없는 상황에서 신속하게 어림짐작하는 것을 의미. 휴리스틱을 사용하는 탐색 방법으로 언덕 오르기 방법, 최상 우선 탐색, 빔 탐색, A* 알고리즘 등이 있다. 검색 효율은 좋으나 일반적으로 최적해를 찾는다는 보장은 하지 못한다. 어떤 휴리스틱을 사용하는가에 따라 성능 차이가 크게 나타날 수 있다. 언덕 오르기 방법(hill climbing method) 현재 노드에서 확장 가능한 이웃 노드들 중에서 휴리스틱에 의한..
탐색(Search) = 문제의 해(Solution)가 될 수 있는 것들의 집합을 공간(Space)으로 간주하고 문제의 최적해를 찾기 위해 공간을 체계적으로 찾는 것. 상태(State) = 특정 시점에 문제의 세계가 처해있는 모습. 세계(World) = 문제에 포함된 대상들과 이들의 상황을 포괄적으로 지칭하는 말. 해(Solution) = 문제의 요구조건을 최적으로 만족하는 것. 상태 공간(State space) = '문제의 초기 상태로부터 도달할 수 있는 모든 상태의 집합', '문제의 해가 될 가능성이 있는 상태들의 집합' 초기 상태(Initial state) = 문제가 주어진 시점의 시작 상태 목표 상태 = 문제에서 원하는 최종 상태 상태 공간 그래프(State space graph) = 상태 공간에서..
- Total
- Today
- Yesterday
- 플로이드 와셜
- 컨트리뷰톤
- 알고리즘
- c++
- 카카오
- BFS
- 코딩
- 브루트포스
- 오픈소스
- 백트래킹
- LG
- webOS
- 파이썬
- 한화큐셀
- 구현
- DP
- 프로그래머스
- 백준
- Dynamic Programming
- 동적 계획법
- 인공지능
- c
- 이분탐색
- 완전탐색
- BaekJoon
- PyPy3
- 1932
- 피보나치
- DFS
- 정렬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |