JACK Intelligent 에이전트

JACK Intelligent Agents
JACK Intelligent 에이전트
안정적 해제
5.6 / 2015년 7월 1일(2015-07-01)
기록 위치자바
운영 체제크로스 플랫폼
유형멀티 에이전트 시스템
면허증소유권
웹사이트www.agent-software.com.au/products/jack/

JACK Intelligent AgentJava의 멀티 에이전트 시스템 개발을 위한 프레임워크다. JACK Intelligent Agent는 에이전트 지향 소프트웨어 Pty에 의해 구축되었다. Ltd. (AOS)는 절차적 추론 시스템(PRS)과 분산적 다중 에이전트 추론 시스템(dMARS)의 경험을 바탕으로 한 3세대 에이전트 플랫폼 빌딩으로, JACK은 BDI 소프트웨어 모델을 사용하는 몇 안 되는 멀티 에이전트 시스템 중 하나로 자바 기반의 계획 언어와 그래픽 계획 도구를 제공한다.

역사

JACK Intelligent Agent는 SRI International 및/또는 AII dMARS의 설계, 구현 및 적용에 관여했던 호주 인공지능 연구소(AAI 또는22 AI)의 전 회원들이 1997년에 처음 개발했다. JACK 플랫폼은 복합적인 문제해결에 멀티 에이전트 패러다임(COTS 제품)을 상업적으로 적용하기 위해 작성된 것으로, 주력제품으로 남아 있는 에이전트 지향 소프트웨어(AOS)를 창업하는 기반이 되었다.

특징들

JACK Intelligent Agent는 10년 이상 활발한 연구, 개발 및 도메인별 응용을 진행해온 성숙한 상용 멀티 에이전트 플랫폼이다. 다음은 플랫폼의 주요 차별화 기능의 목록을 제공한다.

  • 에이전트 실행 시간: 플랫폼의 핵심은 확장 가능한 다중 에이전트 런타임이다. 도메인별 에이전트, 계획, 이벤트, 기능 등이 지정되면, JACK 커널은 메시지 전달, 추론, 메타 합리화 등의 시스템 실행을 관리한다.
  • JACK Plan Language(JPL): JACK는 JACK 계획 작성(에이전트에 의해 실행된 이산 추론)을 위한 에이전트별 계획 언어를 제공한다. 계획 언어는 자바에 대한 확장이며, 에이전트 간 메시징을 위한 @send, @post 등의 명령과 더불어 조치 관리, 하위 작업 및 조건 유지 등을 제공한다. 계획은 JACK 런타임에서 실행하기 위해 Java 클래스로 컴파일되어 있으며, 실행 속도와 정확성을 제공한다.
  • 신념-욕망-의도 모델: 기존의 (비-BDI) 에이전트 모델 외에도, 플랫폼은 BDI 소프트웨어 모델을 실현하는데, 여기서 믿음은 에이전트 내에 캡슐화된 신념 집합에 의해 관리되고, 욕망은 에이전트가 성취하고자 하는 목표 상태이며, 의도는 JACK 에이전트가 현재 목표를 달성하기 위해 사용하는 메타 합리화 및 계획 기반 추론이다.
  • 기능: 이 플랫폼은 계획과 이벤트의 복합체로 나타나는 일반적인 행동의 추상화 기능을 제공한다. 기능은 공통적인 행동과 행동을 개념적으로 결합하여 에이전트 간에 재사용하는 방법을 제공한다.[1]
  • JACK 개발 환경(JDE): 플랫폼이 Jack Development Environment 또는 JDE라고 하는 에이전트 중심 IDE를 제공하지만, 다중 에이전트 시스템은 자바 코드와 표준 IDE로 작성될 수 있다. JDE는 계획 작성, 에이전트에 계획 연결, 에이전트 간 통신 관리, 컴파일 및 실행 등을 위한 그래픽 도구를 제공한다. JDE는 또한 계획 및 에이전트 간 메시지 전달의 디버깅 및 추적을 위한 그래픽 도구를 제공한다.[2]
  • 그래픽 계획: JDE의 주요 특징은 그래픽 계획을 작성하고 관리하는 시설이다. 이것들은 흐름도로서 그래픽으로 표현된 에이전트에 의해 수행되는 이산 추론으로서, 프로그래머가 추론 그래프의 각 단계에서 수행되는 코드를 관리할 수 있도록 하고, 주제별 전문가는 각 노드의 사람이 읽을 수 있는 문서에 근거하여 추론의 논리적 흐름을 관리할 수 있게 한다.[3]
  • JACOB 객체 모듈러: JACK 런타임에서 객체 초기화 및 프로세스 간 통신에 사용하는 객체 직렬화 기술. Java 객체는 YAMLXML과 크게 다르지 않은 사람이 읽을 수 있는 ASCII 텍스트로 직렬화된다.[4]
  • 플랫폼 독립성: JACK 플랫폼은 JAK Multi-에이전트 시스템을 Java Virtual Machine을 지원하는 광범위한 플랫폼에 배포할 수 있도록 JACK Multi-에이전트 시스템을 JAK로 작성하였다. 현재 JACK은 32비트 Java Virtual Machine을 사용하는 마이크로소프트 윈도우즈 운영 체제에만 설치할 수 있지만 64비트 Java Virtual Machine에서도 작동한다. 최신 버전의 Mac OS X 운영 체제(Mac OS X Lion에서 시작)에서는 콘솔 설치 프로그램을 통해서만 JACK을 설치할 수 있다.

확장

JACK 플랫폼은 창사 이래 여러 번 연장되었다. JACK Teams와 CoJACK과 같은 대부분의 확장자는 AOS에 의해 또는 AOS와 협력하여 개발되었다.

  • JACK Teams: BDI 소프트웨어 모델에 대한 확장 기능으로, 에이전트들이 팀으로 협업하여 목표를 달성할 수 있도록 지원.[5] JACK처럼 JACK Teams는 AOS가 말하는 팀 지향 프로그래밍에서 자체적인 계획 언어를 지원한다. JACK Teams는 JACK Intelligent Agent 플랫폼의 일부로 통합되어 제공된다.[6]
  • CoJACK: 가상 환경에서 보다 현실적인(인간다운)[7] 행동을 이끌어내기 위해 에이전트에게 인지 아키텍처를 추가하는 JACK 플랫폼의 확장.
  • FIPA JACK: FIPA 에이전트 통신 언어를 지원하기 위한 JACK 플랫폼의 확장.[8]
  • 프로메테우스: 다중 에이전트 기반 시스템의 SDLC 관리를 위한 에이전트 중심 소프트웨어 엔지니어링 방법론. JACK은 방법론 조사, 비교 및 테스트의 기초로 사용되었다. 프로메테우스는 이 과정에서 설계 문제를 관리하기 위한 GUI 기반 도구인 PDT(Prometheus Design Tool)를 개발하였다.[9]
  • JACK Eclipse Plug-in: Eclipse IDE에서 JACK 기반 시스템의 개발을 용이하게 하는 플러그인. 특히, 이 플러그인은 JACK 계획 언어에 대한 지원뿐만 아니라 JACK 파일 유형(.plan, .에이전트 등)을 지원하는 기능을 Eclipse에 추가한다.
  • JACK WebBot: Apache Tomcat 웹 서버에 JACK 커널을 내장하여 지능형 에이전트와 상호 작용하고 (Java Servlet API를 통해) 응답 HTTP 요청을 공식화하는 확장.[10]

참고 항목

메모들

  1. ^ Busetta, Paolosdada; Nicholas Howden; Ralph Ronnquist; Andrew Hodgson (2000). "Structuring BDI Agents in Functional Clusters". Intelligent Agents VI. Agent Theories Architectures, and Languages. Lecture Notes in Computer Science. Springer. 1757: 277–289. doi:10.1007/10719619_21. ISBN 978-3-540-67200-5.
  2. ^ [1][데드링크]
  3. ^ [2][데드링크]
  4. ^ [3][데드링크]
  5. ^ Jarvis, Bevan; Jarvis, Dennis; Jain, Lakhmi (2007). "Teams in Multi-Agent Systems". Intelligent Information Processing III. IFIP International Federation for Information Processing. Springer. 228: 1–10. doi:10.1007/978-0-387-44641-7_1. ISBN 978-0-387-44639-4.
  6. ^ [4][데드링크]
  7. ^ Evertsz, R.; Busetta, P.; Pedrotti, M.; Ritter, F. E.; Bittner, J. L. (2008). "CoJACK—Achieving principled behaviour variation in a moderated cognitive architecture" (PDF). Proceedings of the 17th Conference on Behavior Representation in Modeling and Simulation (08-BRIMS-025).
  8. ^ de Silva, Lavindra (2001). Building FIPA Compliancy into JACK (PDF). Technical Report / Research Project (RMIT). RMIT. Archived from the original (PDF) on 2009-10-03. Retrieved 2009-06-04.
  9. ^ Padgham, Lin; Winikoff, Michael (2002). "Prometheus: A Pragmatic Methodology for Engineering Intelligent Agents" (PDF). Proceedings of the workshop on Agent-oriented methodologies (at OOPSLA).[영구적 데드링크]
  10. ^ [5][데드링크]

참조

외부 링크