- AI 수업 내용 정리


1. Intelligent Software Agent

 1) 용어 정리

   - Agent : 특정 할 일을 대신 해주는 대행자

   - Intelligent Software Agent : 인공지능 소프트웨어가 할 일을 대신해 주는 것

 2) Intelligent Software Agent란?

   - Environment에서 다양한 Sensor를 통해 들어온 정보를 percept 한다.

   - percept된 정보를 토대로 정의된 State를 찾는다.

   - State에서 가능한 Action 중 Goal에 가까워 질 수 있는 Action을 Actuators로 실행.

   - Goal 도달!!

 3) 예시

   - 의료 진단 시스템( 암 진단 등... )

   - 웹 쇼핑 프로그램( 필요한 상품 추천 등... )


2. Particular Problem

 1) 문제를 정확히 정의한다

 2) 문제를 분석한다

 3) 문제를 풀기 위해 필요한 정보를 분리해낸다.

 4) 최적의 풀이기법을 정한뒤 Particular Problem에 적용시킨다


3. State space Search로 Problem을 정의하는 법

 - state를 정의

 - 가능한 모든 state set(state space)을 정의

 - 시작 state와 목표 state 정의

 - state의 전이 정의


4. water jug problem

 1) 문제 정의

   - 2개의 눈금 없는 주전자가 있고, 하나의 주전자는 4gallon, 하나의 주전자는 3gallon을 담을 수 있다.
     이 떄, 한 주전자에 4gallon 주전자에 2gallon의 물을 담을 방법은?

 2) State 정의

   - S(x, y)

   - x = 0, 1, 2, 3, 4 (4 gallon 주전자)

   - y = 0, 1, 2, 3    (3 gallon 주전자)

   - start state : S(0, 0)

   - goal state : S(2, y)

 3) production Rule

   - (x, y) if x < 4 then (4, y) : fill the 4-gallon jug

   - (x, y) if x < 3 then (x, 3) : fill the 3-gallon jug

   - .... etc 이런식으로 정의

   - 상태 전이의 룰을 정의, 순서가 없다


5. MC problem

 1) 문제 정의

   - 3명의 식인종과 3명의 선교사가 강변에 있다. 모두 다 배를 타고 반대편 강변에 도착해야한다.
     하지만, 배의 승선 가능 인수는 2명이고, 만약 식인종이 선교사보다 수가 많다면 선교사는 죽임을 당할 수 있다. 
     이 경우, 모두 다 살아서 강을 건너는  방법은?

 2) State 정의

   - S(Can_Left, Miss_Left, BoatPos, Can_Right, Miss_Right)

   - Can_Left = 0, 1, 2, 3 ( 왼쪽 강변의 식인종 수 )

   - Miss_Left = 0, 1, 2, 3 ( 왼쪽 강변의 선교사 수)

   - Boat_Pos = Left, Right ( 현재 배 위치 )

   - Can_Right = 0, 1, 2, 3 ( 오른쪽 강변의 식인종 수)

   - Miss_Right = 0, 1, 2, 3 ( 오른쪽 강변의 선교사 수)

 3) Production Rule

   - (Can_Left, Miss_Left, Left, Can_Right, Miss_Right)
     : if Can_Left > 0 && Miss_Left > 0 then (Can_Left-1, Miss_Left-1, Right, Can_Right+1, Miss_Right+1) - Move-1m1c-lr

   - (Can_Left, Miss_Left, Right, Can_Right, Miss_Right)
     : if Can_Right > 0 && Miss_Right > 0 then (Can_Left-1, Miss_Left-1, Left, Can_Right-1, Miss_Right-1) - Move-1m1c-rl


6. Production systems

 1) 정의해야 할 것들

   - global databases 정의 = state space를 정의한다.

   - production rule을 정의

   - control strategy를 정의( 탐색 방법을 정한다 )

 2) control strategy

   - 가장 첫번쨰를 적용한다

   - 랜덤으로 룰을 적용한다

   - dfs를 이용한다

   - bfs를 이용한다

  3) heuristic search

   - 효율적으로 search를 하게 해주는 방법 ( 탐색을 줄여준다 )

   - heuristic evaluation function을 이용해 탐색의 조건을 추가해준다.

'AI' 카테고리의 다른 글

[AI] Knowledge Representation  (0) 2017.06.07
[AI] Constraint Satisfaction Problems  (0) 2017.06.07
[AI] Game Playing  (0) 2017.04.17
[AI] Genetic Algorithm  (0) 2017.04.17
[AI]3장 Heuristic Search Tech.  (0) 2017.04.13

+ Recent posts