본 문서는 2023년 2학기 세종대학교 인공지능(김용국 교수) 수업에서 진행한 수업 내용 및 자료(Artifical Intelligence A Morden Approach 5th Edition)를 기반으로 정리한 내용입니다. Chat GPT 3.5 기반의 추가 자료
Systems that think like humans (인간처럼 생각하는 시스템)Systems that act like humans (인간처럼 행동하는 시스템)Systems that think rationally (합리적으로 생각하는 시스템)Systems that a
튜링 테스트(Turing Test) 는 인공지능과 인간의 지능을 구분하는 방법을 평가하기 위한 개념적인 실험.테스트 수행자인간 A: 테스트를 실시하는 인간으로 테스트 수행자 중 하나.인간 B: 다른 인간으로 테스트 수행자 중 하나.기계 C: 인간과 컴퓨터 중 하나로,
"Thinking Humanly" 는 인공 지능 분야에서 인공지능 시스템을 개발하거나 설명할 때 인간의 사고 및 지능적 능력을 모방하려는 관점이다. Cognitive Science(인지 과학)는 인간의 사고와 지능을 이해하고 모델링하는 학문적인 분야로서 "Thinkin
합리적으로 사고하는 것은 논리와 추론에 기반하여 문제를 해결하는 것을 의미한다. 이 관점은 논리학적 규칙과 사고의 법칙을 사용하여 올바른 결론에 도달하려는 것을 강조한다.Normative (or prescriptive) rather than descriptive (지시
합리적 행동이란 주어진 정보와 조건 하에서 최선의 선택을 하는 행동 또는 의사 결정을 의미하며, 주어진 목표나 제약 조건을 만족 시키는 행동이다.최선의 선택이란 주어진 상황에서 가장 이상적이거나 유리한 선택 또는 결정이다.일반적으로 목표를 달성하거나 원하는 결과를 얻기

"에이전트(Agent)는 " 컴퓨터 과학, 인공지능(AI), 인공 생명체학, 로봇 공학, 게임 이론 및 다양한 다른 분야에서 사용되는 개념으로 특정 환경에서 목표를 달성하기 위해 행동하고 결정을 내리는 시스템 또는 개체를 가리킨다. Agents.png에이전트는 Perc

에이전트는 \[Percepts(인식)]과 \[Actions(행동)] 과정으로 작동한다.아래와 같이 청소기 Agents의 경우 가지게 되는 Percepts와 Actions은 다음과 같다.Percepts and Actions.png해당 Percepts를 통해 연결되는 Ac
"Percetps" 는 에이전트가 환경으로부터 수집한 정보나 관찰된 데이터를 나타낸다. 이것은 에이전트가 주어진 시간에 센서를 통해 어떠한 상태를 감지하거나 측정한 것을 의미한다.Percepts는 에이전트가 환경과 상호작용하면서 수집한 정보의 집합으로, 센서나 센서 시
"Action"은 에이전트가 환경에 대한 반응 또는 변화를 일으키는 행위를 나타낸다. 이것은 에이전트가 환경에서 움직이거나 변화를 가하는 것을 의미한다.에이전트의 행동은 Percepts와 관련이 있으며, 수집한 정보와 목표에 따라 결정된다. 에이전트가 받은 Percep
인공지능 에이전트의 합리성(Rationality)은 에이전트가 주어진 정보와 목표에 따라 최적의 결정을 내리고 행동하는 정도를 나타낸다. 이것은 에이전트가 주어진 상황에서 가장 효과적인 방법으로 목표를 달성하려는 논리적인 사고 및 행동을 의미한다.사전 지식(Built-
PEAS는 에이전트의 동작과 행동을 이해하고 모델링하는데 사용되며, 에이전트의 목적과 목표를 멍확하게 정의하는데 도움이 된다.PEAS는 에이전트의 시스템 구성을 명확히 정의하고, 에이전트의 목적, 동작 및 평가 척도를 이해하는데 도움을 주는 중요한 도구이다. PEAS를

"환경(Environment) 유형"은 에이전트가 상호작용하는 환경의 특성을 나타내며, 에이전트 시스템을 이해하고 모델링하는데 중요한 개념이다.에이전트의 환경 유형은 에이전트 시스템을 설계하고 문제를 해결할 때 고려해야 할 중요한 요소 중 하나 이다. 각 유형은 에이전
에이전트 유형은 인공지능 및 컴퓨터 과학 분야에서 에이전트의 특성과 작동 방식에 따라 분류하는데 사용되는 여러 유형을 의미한다. 에이전트는 환경과 상호작용하고 목표를 달성하기 위해 다양한 방식으로 프로그래밍될 수 있다.각 에이전트 유형은 특정 문제, 환경 및 목표에 대

Simple Reflex Agents (단순 반사 에이전트)는 현재 상태를 기반으로 특정 규칙 또는 조건-행동 매핑을 사용하여 행동을 선택한다. 이러한 에이전트는 주로 간단한 환경에서 작동하며, 현재 상태에 따라 반사적으로 반응한다. 따라서 완전한 지능이 필요하지 않은

Reflex Agents with State (상태를 가진 반사 에이전트)는 현재 상태 뿐만 아니라 환경의 이력을 고려하여 행동을 선택한다. 에이전트의 "상태"는 환경에서 수집한 정보와 이전 상태를 나타낸다. 상태를 고려함으로써 에이전트는 조금 더 복잡한 환경에서 효과

Goal-Based Agents (목표 기반 에이전트)는 특정 목표를 달성하기 위해 계획을 세우고 실행하는 더 복잡한 에이전트이다. 이러한 에이전트는 환경을 모델링하고 목표를 달성하기 위한 계획을 수립하며, 계획을 조율하고 수정하여 목표를 달성하려고 노력한다.Goal-

Utilit-Based Agents (효용 기반 에이전트)는 목표를 달성하는 것 뿐만 아니라 목표를 어떤 방식으로 달성할지를 평가하는 "효용 함수"를 사용한다. "효용 함수"는 특정 행동이나 결정의 가치를 측정하고, 에이전트는 효용을 극대화하기 위해 행동을 선택한다.

Learning Agents (학습 에이전트)는 환경과의 상호작용을 통해 경험을 쌓고 지식을 획득하며, 이를 토대로 향후 결정을 내린다. 이러한 에이전트는 기계 학습 및 강화 학습과 같은 기술을 사용하여 지능적 행동을 개선하고 목표를 달성하려고 한다.Learning A

문제 해결 에이전트 (Problem-Solving Agents)는 주어진 문제를 해결하기 위해 상태 공간을 탐색하는 에이전트이다.문제의 상태 공간(State Space), 관측 가능성(Observable), 결정론성(Determinisitic)에 따라 다른 유형의 문제

문제 해결 에이전트 (Problem-Solving Agent)는 인공지능 분야에서 사용되는 에이전트로, 주어진 문제나 작업을 해결하고 최적의 해결책을 찾는데 특화된 컴퓨터 프로그램 또는 시스템을 나타낸다. 이러한 에이전트는 다양한 작업을 수행하고, 주어진 문제를 분석하

문제의 유형 (Problem Types)은 문제의 상태 공간(State Space), 관측 가능성(Observable), 확정성(Determinisitic)에 따라 다양한 유형으로 구분할 수 있다.각 문제 유형은 다른 문제 해결 전략과 기술을 필요로 하며, 에이전트가

Single-State Problem (단일 상태 문제)는 에이전트가 초기 상태에서 시작하여 목표 상태에 도달하기 위한 문제를 해결하는 유형이다. 단일 상태 문제 에서 에이전트는 어떤 상태에 있을 것인지 정확히 알 수 있다. (Fully Observable, 완전

State Space (상태 공간)은 문제 해결에서 중요한 개념으로, 문제에 대한 가능한 모든 상태의 집합을 나타낸다. 각 상태는 문제의 특정 순간 또는 상황을 대표하며, 상태 공간은 이러한 상태들 간의 관계와 전이를 정의한다.상태 공간 모델은 문제의 초기 상태에서 시
상태 공간의 추상화는 복잡한 문제를 해결하기 위해 원래 상태 공간을 단순화하거나 일반화하는 프로세스를 나타낸다. 이는 실제 상태 공간의 모든 세부사항을 다루기 어려운 경우나 문제 해결을 효율적으로 수행하기 위해 필요한 단계이다.상태 공간 추상화의 주요 목표 중 하나는

Tree Search Algorithms (트리 탐색 알고리즘)은 그래프 또는 트리 구조에서 목표 상태를 찾거나 원하는 상태로 이동하기 위해 사용되는 알고리즘이다. 이러한 알고리즘은 인공 지능, 문제 해결, 경로 계획, 게임 트리 탐색 등 다양한 응용 분야에서 사용된다
Search Strategies (탐색 전략)은 인공 지능 및 문제 해결 분야에서 사용되는 알고리즘으로, 상태 공간에서 목표 상태를 찾거나 원하는 상태로 이동하기 위한 방법을 정의한다. 다양한 탐색 전략이 존재하며, 이러한 전략은 다음과 같은 주요 특성에 따라 구분된다

UnInformed Search (무지한 탐색)는 문제 해결을 위해 상태 공간을 탐색할 때 추가적인 정보 없이 기본적인 탐색 전략을 사용하는 알고리즘이다. 주어진 상태 공간에서 가능한 모든 경로를 균등하게 탐색하며, 상태 간의 연결 관계만을 고려한다.UnInformed

Bredth-First Search (너비 우선 탐색, BFS)은 상태 공간에서 목표 상대를 찾기 위한 탐색 알고리즘 중 하나로, 탐색 시작 지점에서부터 인접한 상태를 우선적으로 탐색하며, 목표 상태를 찾을 때까지 점진적으로 넓게 확장하는 전략을 따른다. 이 알고리즘은

Uniform-Cost Search (일정량 탐색, UCS)는 상태 공간에서 최소 비용 경로를 찾기 위한 탐색 알고리즘 중 하나 이다. 이 알고리즘은 경로의 비용을 고려하여 탐색을 수행하며, 시작 상태에서 목표 상태로 이르는 최소 비용 경로를 찾기 위해 사용된다.UCS

Depth-First Search (깊이 우선 탐색, DFS)는 그래프 또는 트리 구조에서 사용되는 탐색 알고리즘 중 하나로, 특히 그래프의 깊이 방향으로 탐색을 수행하는 알고리즘이다.DFS는 주로 미로 찾기, 그래프 순회, 깊이 방향으로 트리를 탐색하는 등의 문제에

Depth-Limited Search (깊이 제한 탐색, DLS)은 \[Depth-First Search (깊이 우선 탐색)]의 한 변형으로, 깊이 제한을 설정하여 상태 공간을 탐색하는 알고리즘이다. 깊이 제한은 탐색이 진행되는 깊이의 한도를 나타내며, 이 한도 내에서

Iterative Deepending Search (점차적 깊이 제한 탐색, IDS)는 깊이 우선 탐색(DFS)과 깊이 제한 탐색(DLS)을 결합한 탐색 알고리즘으로, 주로 트리 또는 그래프의 상태 공간을 탐색하고 목표 상태를 찾는데 사용된다.IDS는 깊이 제한을 점진

Informed Search (정보를 활용한 탐색, 혹은 Heuristic Search)는 목표를 향해 효과적으로 탐색하기 위해 추가적인 정보나 휴리스틱(heuristic)을 활용하여 탐색을 더 효율적으로 수행하는 알고리즘이다. 이 알고리즘은 목표에 도달하기 위한 가능

Heuristic (휴리스틱)은 결정 문제나 최적화 문제의 해결에 사용되는 규칙 또는 방법으로, 일반적으로 문제의 복잡성을 감소시키기 위해 사용된다. 휴리스틱은 문제 해결에 관련된 추가 정보나 경험을 기반으로 작성되며, 주어진 문제에 대한 효율적이고 가장 가능성 있는
Best-First Search (최선 우선 탐색)은 Informed Search 알고리즘 중 하나로, 휴리스틱 함수를 사용하여 상태 공간을 탐색하는 방법이다. 이 알고리즘은 각 상태를 평가하고, 가장 유망한 상태를 먼저 확장하는데 사용된다.Best-First Sear

Greedy Search (탐욕 알고리즘)은 휴리스틱 함수를 사용하여 각 노드(상태)의 "탐욕스러운" 선택을 수행하는 탐색 알고리즘이다. 이 알고리즘은 목표에 가능한 한 빨리 도달하려는 데 중점을 둔다.탐욕 알고리즘은 말 그대로 선택의 순간마다 당장 눈앞에 보이는 최적

A Search는 그래프 탐색 알고리즘 중 하나로, 최단 경로 문제와 같은 최적화 문제를 푸는 데 사용된다. A Search는 목표에서 가장 가까운 상태를 탐색하는 방식으로 동작한다.A Search의 핵심 아이디어는 이미 비용이 높은 경로를 확장하는 것을 피하는 것이다

최단 경로를 구할 때는 가중치 그래프를 사용한다. 가중치 그래프(Weight Graph)는 각 간선 $e$에 연관되는 숫자 레이블(예를 들어 정수)을 $w(e)$로 갖는 그래프이다. 여기서 $w(e)$는 간선 $e$의 가중치(weight)라고 한다.$G$ 를 가중치 그