Java 에이전트 개발 프레임워크
Java Agent Development Framework![]() |
안정적 해제 | 4.5.0 / 2017년 6월 8일; 전 |
---|---|
기록 위치 | 자바 |
플랫폼 | 자바 SE |
유형 | 멀티 에이전트 시스템, 소프트웨어 프레임워크 |
면허증 | GNU 약소 일반 공중 라이선스 |
웹사이트 | 옥프로젝트.gitlab![]() |
자바 에이전트 개발 프레임워크(Java Agent Development Framework, 또는 JADE)는 자바에서 구현된 지능형 에이전트 개발을 위한 소프트웨어 프레임워크다.JADE 시스템은 여러 대리점들간의 조정을 지원하고 통신 언어 FIPA-ACL의 표준 구현을 제공하며, 대리점들간의 커뮤니케이션을 촉진하고 시스템의 서비스 탐지를 가능하게 한다.JADE는 원래 텔레콤 이탈리아에 의해 개발되었으며 무료 소프트웨어로 배포된다.null
이력서
제이드(JADE)는 표준 FIPA에 따른 멀티 에이전트 시스템 개발을 촉진하는 미들웨어로, 에이전트용 컨테이너를 여러 개 만들 수 있으며, 각각 하나 이상의 시스템에서 실행할 수 있다.컨테이너 세트가 플랫폼을 구성하는 것으로 이해된다.null
JADE는 다음을 제공한다.
- JADE 에이전트가 실행되는 환경
- 클래스 라이브러리를 사용하여 기록 및 행동 재정의를 사용하여 에이전트 생성
- 지능형 에이전트 플랫폼 모니터링 및 관리를 위한 그래픽 툴킷
역사
JADE는 처음에 Telecom Italia Lab에 의해 개발되었다.이 부문은 기술혁신 추진을 담당하는 텔레콤 이탈리아 그룹 연구개발(R&D) 부문이다.Telecom Italia는 JADE를 2000년에 베이스로 구상하고 홍보했다.2017년 6월(버전 4.5)부터 사용 가능한 최신 날짜.무료 소프트웨어로 배포된 JADE의 첫 번째 버전은 2000년 2월부터 이용할 수 있다(version 1.3).null
2003년 3월, 모토로라와 텔레콤 이탈리아는 이동통신 산업에서 미들웨어 기반의 JADI의 개발과 채택을 촉진하기 위한 목적으로 JADE 이사회를 창설했다.JADE 이사회는 JADE의 개발과 홍보를 위해 JADE의 상업적 이용과 착취에 관심이 있는 모든 회사 및/또는 조직에 동의한다.null
2021년 JADE를 성공적으로 개발한 팀은 더 이상 작업을 계속할 수 없다고 발표했다.한 연구팀이 그것을 포기했고 현재 플랫폼 개발을 추구하고 있다.null
플랫폼
JADE는 분산 에이전트 플랫폼으로, 에이전트를 실행하는 각 호스트마다 컨테이너가 있다.또한, 플랫폼에는 다양한 디버깅 툴, 코드 및 콘텐츠 에이전트의 이동성, 에이전트 동작의 병렬 실행 가능성, 언어 및 온톨로지 정의 지원 등이 있다.각 플랫폼에는 AMS와 DF라는 두 개의 특수 에이전트가 있는 상위 컨테이너가 있어야 한다.
- DF(디렉토리 촉진자)는 플랫폼에서 사용 가능한 에이전트를 알려주는 디렉토리를 제공한다.
- AMS(에이전트 Management System)가 플랫폼을 제어한다.다른 요원을 만들어 파괴하고, 컨테이너를 파괴하고, 플랫폼을 멈출 수 있는 유일한 사람이다.
DF 에이전트
DF 에이전트에 액세스하려면 "jade.domain" 클래스를 사용하십시오.DFService"와 그 정적 방법을 사용한다: 등록, 등록 취소, 수정 및 검색.null
AMS 에이전트
AMS 서비스에 액세스하려면 새 에이전트에서 메서드 설정을 실행하기 전에 기본적으로 AMS의 레지스터 메서드를 자동으로 실행하는 에이전트가 생성된다.에이전트가 파괴되면 기본적으로 takeDown() 메서드를 실행하고 자동으로 AMS의 등록 취소 메서드를 호출한다.
에이전트 클래스
에이전트 클래스는 사용자가 JADE 에이전트를 만들 수 있는 슈퍼 클래스다.에이전트를 만들려면 에이전트에서 직접 상속해야 한다.일반적으로 각 에이전트는 하나 이상의 동작에 의해 구현되어야 하는 몇 가지 서비스를 기록한다.null
이 클래스는 에이전트의 기본 태스크를 수행하는 방법을 다음과 같이 제공한다.
- 패턴 일치를 사용하여 ACLMessage 개체별 메시지 전달
- 에이전트의 수명 주기 지원
- 동시에 여러 활동 계획 및 실행
JADE 에이전트
JADE 에이전트의 수명 주기는 FIPA가 제안한 주기를 따른다.이러한 에이전트는 다음과 같이 정의된 여러 상태를 거친다.
- 시작됨:에이전트가 생성되었지만 아직 AMS를 등록하지 않은 경우.
- 활성: 에이전트가 등록되었으며 이름이 있음이 상태에서는 다른 에이전트와 통신할 수 있다.
- 일시 중단됨:스레드가 일시 중단되어 에이전트가 중지됨.
- 대기:이벤트를 기다리는 에이전트가 차단됨.
- 삭제됨:요원은 끝났고 그의 스레드는 그의 실행을 끝냈으며 AMS에는 더 이상 없다.
- 운송:에이전트가 새 위치로 이동하고 있다.
에이전트 행동
동작은 주어진 이벤트에서 동작을 정의한다.에이전트의 이러한 동작은 addBehaviour 메서드를 이용한 메서드 설정에서 정의된다.에이전트가 채택할 여러 가지 행동은 추상 클래스 행동에서 정의된다.클래스 거동에는 다음과 같은 추상적인 방법이 포함되어 있다.
- 동작 (): 동작이 발생했을 때 실행한다.
- done (): 공연이 끝날 때 실행한다.
사용자는 시작() 및 종료() 속성에서 메서드를 재정의할 수 있다.또한 에이전트 행동을 수정하는 데 사용되는 블록()이나 재시작() 등의 다른 방법도 있다.에이전트가 잠기면 다른 방법으로 잠금을 해제할 수 있다.그렇지 않으면 사용자는 에이전트가 보유한 시작() 및 종료() 메서드를 무시할 수 있다.null
에이전트 잠금 해제
- 메시지 받기.
- 블록()과 관련된 시간 초과가 발생할 때.
- 다시 시작을 호출하는 중.
ACL 메시지
에이전트 통신 언어(에이전트 Communication Language)를 통과하는 메시지는 에이전트 간의 통신 기반이다.메시지 전송은 클래스 에이전트의 전송 메서드에 의해 수행된다.이 방법에서는 메시지의 수신인 정보, 언어, 코딩 및 내용을 포함하는 ACLMessage 형식의 오브젝트를 전달해야 한다.이러한 메시지는 비동기적으로 전송되며, 메시지가 수신되는 동안 메시지 대기열에 저장된다.ACL 메시지 수신에는 차단 또는 비차단 두 가지 유형이 있다.이를 위해 수신() 및 수신() 차단 방법을 각각 제공한다.두 방법 모두 다른 템플릿을 설정하여 큐에서 검색할 필터링 메시지를 만들 수 있다.null
확장
JADE는 WAID(Workflows and Agent Development Environment)라는 확장자를 가지고 있는데, 이는 WOLF라는 그래픽 편집자가 공정을 만들 수 있는 워크플로우 시스템이다.null
참고 항목
참조
- 제이드 뉴스 아카이브
- Wade 사용 설명서
- JADE, Volume 7 Wiley Series in Agent Technology, Fabio Luigi Bellifemine, Giovanni Caire, Dominic Greenwood와 함께 Multi-에이전트 시스템 개발 ISBN9780470058404
- 에이전트 지향 미들웨어, 6번째 국제, OTM 2003 워크샵의 보안 및 신뢰.OTM 2003.컴퓨터 과학 강의 노트, 2889.Springer, Berlin, A Poggi, M Tomaiuolo, G Vitaglione.ISBN 978-3-540-20494-7