Arsitektur Software Agent
Pada bagian ini akan dijelaskan tentang arsitektur umum yang terdapat pada software agent. Bagaimanapun juga, karena banyak sekali peneliti yang mengemukakan arsitektur untuk masing-masing agent yang mereka kembangkan, kami tidak bisa menjelaskan seluruh arsitektur yang ada di dunia. Tetapi kita coba dengan mencoba menjelaskan arsitektur software agent secara fundamental dan umum.
Software agent dalam konsepsi black-box bisa divisualisasikan sebagai berikut. Pertama agent mendapatkan input atau perceptionterhadap suatu masalah, kemudian bagian intelligent processing mengolah input tersebut sehingga bisa menghasilkan output berupa action (Gambar).
Gambar Software AgentSecara Black-Box
Dalam konsepsi black-box, arsitektur software agent bisa diterima oleh semua peneliti, karena arsitektur tersebut bersifat sangat umum dan memungkinkan mencakup semua jenis software agent.
Gambar Proses Kerja Software Agent
Software agent memiliki module interaksi (interaction module) yang berguna untuk melakukan komunikasi (communication), koordinasi (coordination) dan kooperasi (cooperation) dengan lingkungannya.
Lingkungan (environment) dari agent bisa berwujud agent lain, user atau pengguna, ataupun berupa sumber-sumber informasi (information sources). Agentmenggunakan module interaksi untuk mendapatkan informasi dari lingkungan dan juga untuk melakukan aksi. Oleh karena itu module interaksi disediakan dalam level input (perception) dan output (action) (Gambar ).
Informasi-informasi yang didapat dari proses interaksi dikumpulkan dalam suatu tahapan klasifikasi (ontology) yang tepat dalam knowledge-base. Misalnya informasi hasil interaksi dengan agent lain, tentu mempunyai karakteristik dan format yang lain dengan informasi yang didapat dari user (pengguna). Disinilah perlu dikembangkan strategi dan ontologi yang tepat untuk menyusun informasi yang masuk. Tahapan ini disebut dengan information fusion (Gambar ).
Kemudian tahapan berikutnya adalah tahapan pengolahan informasi (information processing). Seperti dijelaskan sebelumnya, agent mempunyai tujuan (goal) berhubungan dengan tugas yang dibebankan kepadanya. Tujuan pengolahan informasi disini adalah untuk membuat interpretasi terhadap informasi yang ada supaya dengan itu agent bisa berorientasi ke tujuan (goal-oriented) yang dibebankan kepadanya. Meskipun tentu saja untuk mencapai tujuan yang ingin dicapai, harus melewati tahapan-tahapan proses seperti planning, scedulling, dsb.
Tahapan berikutnya adalah melakukan aksi (action) berdasarkan kepada tujuan (goal), planning, dan scedulling yang ada pada agent. Seperti sudah dijelaskan diatas, agent melakukan aksi dalam lingkungannya, sehingga bagaimanapun juga dia harus tetap memanfaatkan module interaksi (interaction module) dalam aksinya.
Beberapa konsep arsitektur lain yang lebih mewakili karakteristik software agent diungkapkan oleh beberapa peneliti. Misalnya seperti kita ketahui bersama bahwa Rao [Rao et al., 1990] menyajikan konsep struktur BDI (Beliefs Desires Intention) agent, yang memiliki elemen-elemen seperti tampak pada gambar.
Gambar Struktur BDI Agent
Berdasar pada konsep dan struktur ini, dikembangakn arsitektur untuk BDI dan deliberative agent (Gambar ).
Gambar Arsitektur BDI dan Deliberative Agent
Kemudian Brooks [Brooks, 1991] mengembangkan arsitektur untuk reactive agent, yang pada hakekatnya bisa divisualisasikan seperti Gambar .
Gambar Arsitektur Reactive Agent