ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 인공지능 Agent
    인공지능 2020. 10. 15. 12:44
    728x90

    에이전트(Agents)

    AI의 정의 : Acting rationally 이성적으로 행동하는 인공지능

    센서를 통해 AI가 처한 환경(environment)에 대해 인지하고, 동작기관(actuator)를 통해 주어진 환경에서 행동합니다.

     

    Agent의 예 : 사람, 로봇, 온도조절기(thermostats) 등

    • Percept : Agent 입장에서의 지각
    • Percept sequence : 그러한 지각들의 연속
    • Agent function(percept sequence) -> action : 에이전트 함수는 percept sequence 를 입력으로 받아 action을 리턴합니다.
    • Agent program : Agent function의 구체적인 구현입니다. Agent function은 단지 추상적인 개념에 불과합니다.

     

    Vacuum-cleaner world : 진공 청소기 세상

    진공청소기 세상을 정의하는 방법은 다음과 같습니다.

    Percept : Location(청소기가 방 A에 있는지 B에 있는지), dirt(자신의 방에 먼지가 있는지 없는지)

    Action: Left, right(방을 옮겨다니는 행동), suck up(먼지를 빨아들이는 행동), do nothing(아무것도 하지 않는 행동)

     

    Percept sequence가 Agent function의 입력으로 들어오면 Action이 결과로 나오게 됩니다.

    즉 위 표에 따르면 [A, Clean] (방 A에 있는데 그 방이 깨끗하면) -> Right(방 B로 이동해라) 라고 정의될 수 있습니다.

    이 같이 표를 통해 Agent function을 정의하게 되면 모든 가능한 percept sequence에 대해 정의해주어야 하며 그랬을 때 비로소 Deterministic(결정적) 하다고 합니다.

     

    결정적이라는 것은 Agent가 어떤 state에 있을 때 다음에 취해야할 행동이 100% 결정되어있다는 것을 의미합니다.

    반대로 확률적으로 결정되는 모델을 Stochastic model 이라 합니다.

     

    다시 Rational agent에 대한 이야기로 돌아오자면

    Rational agent는 옳은 일(right thing)을 행합니다.   ->   옳은 일에 대한 정의가 필요

     

    옳은 일이란?

    • Agent의 행동의 결과(consequences)

    • Agent의 행동은 환경의 상태(state)를 변화시키기 때문

    • Performance measure(성능 평가 지표) : 환경 상태(environment state)의 연속(sequence)을 평가하며, 이 지표에 따라 옳은 일의 정의가 달라짐

     

    Vacuum-cleaner agent의 평가 기준 정의

    • 먼지를 빨아들인 양 : 진공 청소기가 빨아들이고 내뱉고 하는 행위를 반복하는 경우 문제가 발생

    • 깨끗한 방의 개수 ( 깨끗한 방의 개수를 측정하는 방법도 정의해야함 )

      • 매 time step 마다 빈 방의 개수를 세는 방법

      • 최종적인 빈 방의 수만 세는 방법

     

    Rationality 의 정의

    사전 지식(built-in knowledge)과 percept sequence가 주어졌을 때 성능 기준(performance measure)을 최대화 시키는 Agent의 행동을 선택하는 것입니다.



    그렇다면 Agent의 방이 더럽다면 청소 후 움직이고, 깨끗하다면 그냥 옆 방으로 이동하는 vacuum 모델은 rational 할까?

    가정 :

    • 환경에 대한 지도 정보가 있다.

    • 먼지의 분포와 Agent의 시작위치를 모른다.

     

    Percept sequence : agent의 location과 dirt 정보를 매 time step 마다 수집

    위와 같은 경우 rational 합니다. 하지만 평가 지표에서 움직일때마다 감점한다면 이는 rational 하지 않습니다.

     

    관련된 컨셉

    • Omniscience(전지적) : 일어날 일의 모든 경우를 알고 있는 것을 가정하는 논리
      길가다가 새 똥 맞는 것처럼 매우 낮은 확률의 사건도 알고 있음
      이런 경우 성능(performance)를 최대화시킬 수 있음 -> 결과가 확률적으로 결정되는 경우에는 기대값을 최대화 하는 방식임

    • Learning : 학습
      agent가 스스로 겪은 경험을 통해 학습해나가는 이론

    • Autonomy : 자율성
      적응적인(adaptive) 프로그램을 만듦
      Learning 과 autonomy는 rationality 와 관련된 내용입니다.

     

    Task environment : Agent가 해결해야 하는 문제

    정의법

    • Performance measure

    • Environment

    • Actuators

    • Sensors

     

    자율 주행 차 Task environment 정의

     

    Task environment의 속성

    • Fully observable vs partially observable
      action을 선택하는데 있어서 필요한 모든 정보를 센서가 수집가능하다면 이는 Fully observable
      예를 들어 바둑은 Fully observable, 스타크래프트는 partially observable
      Vacuum 도 partially observable 입니다. 왜냐하면 옆 방의 정보는 모르기 때문입니다.

    • Single agent vs multi agent
      Competitive(경쟁적인) 관계일 수도 Cooperative(협력적인) 관계일 수도 있음
      체스 : multi agent + competitive
      Crossword puzzle : single agent
      자율주행차 : multi agent + Cooperative

    • Deterministic vs stochastic
      Environment의 다음 상태가 현재 상태와 action으로 완전히 결정된다면 Deterministic 합니다.
      부루마블 같은 주사위 게임은 현재 위치와 주사위를 굴린다. 라는 행위만으로는 다음 상태를 결정할 수 없기에 stochastric입니다. (주사위에서 숫자가 몇이 나올지 알 수 없기 때문입니다)

    • Episodic vs sequential
      Task environment를 몇 개의 에피소드로 나누고, 이들간의 연관성이 전혀 없을때 Episodic하다고 합니다.
      반대로 이 전의 Action이 미래의 Action에 영향을 줄 때 Sequential 하다고 합니다.

    • Static vs dynamic
      Agent가 생각할 때 기다려주는 task environment이면 static, 기다려주지 않거나 시간 제한이 있는 경우 dynamic

    • Discrete vs continuous
      시간이 step 단위로 구분될 경우 discrete, 구분되지 않고 연속적인 경우 continuous

    • Known vs Unknown
      Agent가 environment에 대해 알고 있는 경우 known 입니다.
      vacuum cleaner agent의 경우 knwon 입니다.

    '인공지능' 카테고리의 다른 글

    AI Problem-solving agent와 Search 알고리즘  (0) 2020.10.16
    AI Agent Program  (0) 2020.10.15
    인공지능의 간략한 역사  (0) 2020.10.14
    인공지능 연구 분야  (0) 2020.10.14
    인공지능 시작  (0) 2020.10.13

    댓글

Designed by Tistory.