FOR
FORRFOR(Forr the Right Reasons)는 허버트 A에 의해 영감을 받은 학습과 문제 해결을 위한 인지 아키텍처다. 한정된 합리성과 만족감에 대한 사이먼의 생각.그것은 1990년대 초 뉴욕 시립대학에서 처음 개발되었다.게임 플레이, 로봇 경로 찾기, 레크리에이션 파크 디자인, 음성 대화 시스템, NP-하드 제약 조건 만족도 문제 해결 등에 사용되어 왔으며, 많은 문제 해결 어플리케이션에 충분히 일반적이다.
배경
한정적 합리성
FOR는 문제를 해결하는 방법에 대한 완벽한 지식을 가지고 있지 않고 오히려 경험을 통해 배운다.인텔리전트 에이전트는 최적이지는 않지만, 가능한 모든 좋은 이유와 유용한 데이터 중 일부에 근거하여 결정을 내린다.이 요원들은 여전히 합리적이라고 여겨질 수 있다.이 한정적 합리성에 대한 생각은 Herbert A에 의해 소개되었다. 앨런 뉴웰과 함께 인지 아키텍처 연구의 초기 기초를 발전시켰고, 또한 Spris와 ACT-R과 같은 초기 아키텍처에 영감을 주었다.[1]
여러 가지 타당한 이유
FOR는 문제를 해결하는 동안 조치를 수행하는 데 여러 가지 이유나 합리성이 있다는 생각에 따라 달라진다.이러한 이유들은 항상 옳을 수도 있고(항상 상대를 체크메이트에 넣을 체스에서 움직이는 것이 옳을 수도 있다) 때로는 옳을 수도 있다.항상 옳은 이유는 소수다.때때로 옳은 이유는 서로에게 완성될 수 있다: 예를 들어, 게임 플레이에서, 한 가지 좋은 이유는 조각들을 캡처하기 위해서일 수 있고, 다른 이유는 보드의 어떤 영역을 제어하기 위해서일 수 있다.FOR에서는 이러한 경쟁적인 이유를 어드바이저라고 부른다.
계층형 어드바이저 시스템은 확률론적, 연역적 또는 지각적 등의 잠재적인 타당한 이유가 구현될 수 있을 만큼 충분히 일반적이다.
독립 에이전트 집합(어드바이저)에 대한 의존성 때문에, FOR은 연결론적 아키텍처로 간주될 수 있다.
건축
FOR 아키텍처에는 세 가지 구성 요소가 있다: 문제의 상태를 설명하는 설명 집합,[2] 수행할 작업을 결정하기 위해 참조되는 계층화된 어드바이저 집합, 어드바이저에게 질의하고 그들이 제안하는 액션을 수행하는 행동 스크립트.
어드바이저
어드바이저스는 의사결정을 위한 이성 또는 경험적 발견의 집합이다.그것들은 구조의 절차적 기억 요소로 간주될 수 있다.각각의 새로운 결정이 있을 때, 어드바이저는 어떤 행동을 수행할지 결정하기 위해 질의된다.조언자들은 서로 의사소통하거나 스스로 학습하는 일이 결코 없다: 그들은 단순히 서술자의 형태로 저장된 문제의 상태에 대한 정보를 요청하고, 그 정보를 바탕으로 제안을 한다.어드바이저는 3개 계층으로 나뉘며, 다음과 같은 순서로 쿼리된다.
- Tier 1: 이 조언자들은 항상 옳다.만약 이것들이 어떤 행동을 시사한다면, 그 행동은 즉시 수행되고 질의가 끝난다.만약 그들이 어떤 행동을 금지한다면, 그 행동은 고려 대상에서 제외된다.그렇지 않으면 다음 단계로 이동하십시오.
- 계층 2: 이들 어드바이저 중 하나가 트리거되면 하위 문제 또는 순서화된 일련의 조치를 제안하여 전체 문제를 해결하는 하위 목표를 달성한다(예: 미로에서 하나의 장애물을 이동하는 것).Tier 2 Advisor가 트리거되지 않은 경우 마지막 Tier로 이동하십시오.
- Tier 3: 이것들은 모두 다른 이성들이다.그들은 항상 옳은 것은 아니지만, 서로 경쟁한다.그들은 어떤 행동에 대해 투표하고, 가장 많이 투표된 제안이 수행된다.동일한 영역의 다른 문제 클래스는 동일한 어드바이저에 대해 다른 가중치를 가지며, 가중치는 경험에서 학습 알고리즘을 통해 개발된다.
설명자
아키텍처의 선언적 메모리 구성 요소인 설명서는 문제의 상태를 나타내며 모든 어드바이저가 사용할 수 있다.
행동 스크립트
행동 스크립트는 각 계층의 어드바이저에게 순차적으로 질의한다.Tier 1 Advisor가 작업을 제안할 경우 스크립트는 작업을 수행한다.그렇지 않은 경우, 계층 2 어드바이저가 트리거되면 하위 문제가 발생했음을 의미한다.Tier 1 Advisor는 언제든지 Tier 2 Advisor가 한 명만 활동하도록 보장한다.Tier 1 Advisor의 의견이 없고 Tier 2 Advisor가 트리거되지 않은 경우, 행동 스크립트는 모든 Tier 3 Advisor에게 제안이나 의견을 요청하여 투표하도록 한다.이 스크립트는 모든 Tier 3 어드바이저 중에서 가장 높은 투표로 작업을 수행한다.
FOR 아키텍처 구현
문제 영역은 문제 클래스라고 불리는 유사한 문제의 집합이다.문제 도메인이 단순한 보드게임을 하는 것이라면 틱택토(tic-tac-toe)는 문제 클래스, 틱택토(tic-tac-toe)의 한 특정 게임이 문제 인스턴스다.만약 미로를 항해하는 것이 문제 영역이라면, 특정한 미로는 클래스이고, 그 미로의 항해에 대한 한 번의 시도는 인스턴스다.일단 문제 도메인이 확인되면, 해당 도메인에 대한 FOR 아키텍처의 구현은 가능한 올바른 이유(어드바이저)를 찾는 것과 특정 클래스에 대한 가중치 학습의 두 가지 기본 단계를 갖는다.
FOR 아키텍처를 구축하는 방법
- 문제 영역을 결정하십시오.
- 도메인 지식, 문헌 조사, 직관 및 좋은 감각을 사용하여 도메인 내의 여러 계층에 대해 좋고 나쁜 결정을 내릴 수 있는 가능한 합리성의 목록을 열거하십시오.이 이성애자들은 어드바이저들이다.
- 어드바이저를 계층으로 분할:
- 항상 옳은 조언자들은 계층 1에 있다.예를 들어 보드게임에서 이기는 동작을 하는 것이 항상 옳다.
- 하위 문제를 식별하는 어드바이저스는 계층 2에 들어간다.예를 들어, 미로 속의 벽을 도는 것.
- 다른 모든 고문은 3등급이다.
- 어드바이저에게 코드를 부여하십시오.각 어드바이저는 제안된 각 액션에 대한 가중치와 함께 제안된 액션 세트를 반환한다.가중치는 처음에 0.05와 같은 균일한 값으로 설정된다.
- 모든 어드바이저가 필요로 하는 문제의 상태에 대한 모든 정보를 확인한다.이것들은 설명들이다.이것들을 코드화해라.
- 어드바이저를 쿼리하고 어드바이저가 제안하는 작업을 수행하는 동작 스크립트를 코드화하십시오.
- 강화 학습 알고리즘을 사용하여 학습 단계의 특정 문제 예제에 대한 어드바이저 가중치를 학습하십시오.
- 이전에 할당되지 않은 일련의 문제 인스턴스에서 아키텍처를 테스트하십시오.
학습 어드바이저 가중치
어드바이저는 도메인의 모든 문제 클래스에 대해 동일하지만 도메인 내의 각 클래스에 따라 가중치가 다를 수 있다.틱택토에 대한 중요한 휴리스틱스는 다른 보드 게임에 중요하지 않을 수 있다.FOR는 경험을 통해 Tier 3 Advisor의 가중치를 학습한다.실패를 초래하는 조치를 제안하는 조언자는 가중치에 불이익을 받고, 제안이 성공으로 이어지는 조언자는 가중치가 증가한다.학습 알고리즘은 구현마다 다르다.
적용들
FOR는 게임 플레이, 로봇 경로 찾기, 제약 조건 만족도 문제, 공원 설계 및 음성 대화 시스템에 사용되어 왔다.[3][4]
참고 항목
참조
- 메모들
- 엡스타인, S. L.(1994) 올바른 이유: 스킬 영역에서 학습을 위한 FOR 아키텍처
- Epstein, S. L. 및 Petrovic, S. (2008) 한정된 합리성과 자각을 갖춘 학습 전문지식
- Langley, P, Laird, J. E, & Rogers, S. (2009) 인지 아키텍처: 연구 문제 및 과제