Simulasi Dari Pergerakan Mangsa Dan Pemangsa Antara 2 Tikus Dan 2 Kucing Menggunakan Pemrograman MATLAB

Share Embed


Deskripsi Singkat

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Simulasi Dari Pergerakan Mangsa Dan Pemangsa Antara 2 Tikus Dan 2 Kucing Menggunakan Pemrograman MATLAB Niska Shofia Teknik Informatika, Fakultas Teknik, Universitas Nusantara PGRI Kediri [email protected]

Abstrak – Teknologi agent dan Multi Agent System (MAS) saat ini sudah sampai pada tahap implementasi nyata. Alur pergerakan dari masing-masing agent diatur oleh sistem kontrol yang independent. Pada penelitian ini, multi agent sistem tersebut diterapkan dalam pergerakan mangsa dan pemangsanya antara dua kucing dan dua tikus. Tujuan dari sistem ini adalah mendapatkan energi minimum dengan waktu optimum yang dibutuhkan untuk mendapatkan mangsanya. Dengan menggunakan metode dari optimal control yaitu metode Pontryagin Maximum Principle dengan fungsi Hamilton diperoleh model matematika dari pergerakan tersebut yang selanjutnya disimulasikan menggunakan program MATLAB. Kata kunci: agent, optimal control, Hamiltonian, Pontryagain Maximum Principle, MATLAB

I.

PENDAHULUAN

Perkembangan teknologi menyebabkan teknologi agent dan multi agent system dengan mudah bisa diimplementasikan, sehingga saat ini bukan hanya bergerak dalam kerangka penelitian, tetapi juga telah sampai pada tahap implementasi nyata. Saat ini teknologi agent sudah diaplikasikan secara luas di berbagai bidang, antara lain: Air Traffic

Control, Transportation System, penerapan Ant Colony System (ACS) untuk mencari solusi optimal pada Traveling Salesman Problem (TPS). [1]. Kita sedang melakukan transisi dari AI (Artificial Intelegent) ke IA (Intelegent Agent), sehingga segala permasalahan nyata yang berkaitan dengan multi agent system sangat menarik untuk dibahas [1], salah satunya adalah tentang pergerakan hewan pemangsa yang dilakukan untuk mencari mangsanya. Optimal control system merupakan sebuah sistem yang terdiri atas satu atau beberapa peralatan yang berfungsi untuk mengendalikan sistem lain yang berhubungan dengan sebuah proses untuk mendapatkan hasil paling baik yang dapat dicapai dengan memperhatikan kondisi dan kendala pada sistem tersebut [6]. Dalam optimal control system, istilah optimal seringkali merujuk pada minimal. Misalnya meminimalkan energi, input, waktu, kesalahan dll. Supaya

sistem

tersebut

dapat

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

18

dikontrol, maka perlu dibuat model matematis yang menghubungkan antara input, proses, dan output. Pada optimal control system, model yang banyak digunakan adalah model persamaan keadaan. Pada artikel ini akan dianalisis mengenai simulasi model dari pergerakan mangsa dan pemangsa antara dua kucing dan dua tikus dengan beberapa batasan antara lain (1) Kucing 1 mengejar tikus 1 dan kucing 2 mengejar tikus 2, (2) dalam proses memburu mangsanya tersebut tidak menggunakan alat bantu, dan (3) metode optimal control yang digunakan adalah dengan metode Hamiltonian. Selanjutnya akan mensimulasikannya kedalam Program MATLAB

II.

METODE PENELITIAN

Analisa yang dibuat dalam penelitian ini meliputi bagian-bagian terurut berikut: 1. Membuat model dari salah satu aplikasi system multi agent. Tahap-tahap utama yang dilalui dapat digambarkan dalam diagram berikut:

Gambar 1 Diagram Pemodelan 2.

Membuat program untuk mensimulasikan pergerakan mangsa dan pemangsa. Pembuatan syntax program menggunakan bahasa pemrograman MATLAB yang selanjunya dapat digunakan untuk mengetahui dan menganalisa penentuan lintasan yang paling optimum yang dapat dilalui untuk meminimalkan energy yang digunakan III. HASIL DAN PEMBAHASAN Persamaan pergerakan mangsa dan pemangsa merupakan persamaan keadaan non-linier. Untuk mengoptimalkan energi geraknya maka dapat digunakan persamaan Hamilton Pontryagin. Persamaan Hamilton Pontryagin dapat digunakan untuk mengoptimalkan sistem proses yang bersifat kompleks dengan banyak kendala. Persamaan Hamilton Pontryagin juga dapat digunakan intuk mengoptimalkan sistem proses yang bersifat linier maupun nonlinier.

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

19

Pergerakan mangsa dan pemangsa antara 2 kucing mengejar 2 tikus dimana : 1. Kucing 1 mengejar tikus 1 dan kucing 2 mengejar tikus 2. Pada model pergerakan ini hanya terdapat 2 agent yang dapat dikontrol yaitu pergerakan 2 kucing tersebut. Karakteristik Kucing: a. Tikus akan lari menjauh dari kucing terdekat. b. Kucing lari mengejar ke arah tikus. c. Kucing akan saling menghindar jika bertemu dengan kucing yang lain. Misal : a adalah tikus 1 b adalah tikus 2 c adalah kucing 1 d adalah kucing 2 Dalam hal ini model sistem diasumsikan Terkontrol dan kita akan meminimumkan Fungsi Cost-nya untuk mendapatkan energi minimum dari pergerakZan (sejauh t menit) tersebut. Model sistem dari pergerakan 2 kucing 2 tikus:

Gambar 3 Arah pergerakan tikus dan kucing

Gambar 4. Pergerakan kucing 1 memangsa tikus 1 dan kucing 2 memangsa tikus 2

bahwa tikus tertangkap oleh kucing adalah: vtikus  vkucing dimana d d (tikus)  (kucing ) dt dt

Gambar 2 Posisi pergerakan 2 kucing dan 2 tikus

Karena jarak tikus 1 ke kucing 1 lebih dekat daripada jarak tikus 1 ke kucing 2 dan jarak tikus 2 ke kucing 2 lebih dekat daripada jarak tikus 2 ke kucing 1, maka modelnya bisa diubah ke dalam bentuk jarak, dimana s  v  t .

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Namun bentuk model yang diperoleh bukan merupakan bentuk kontrol. Karena model yang diperoleh adalah model kecepatan dari pergerakan masing-masing agent maka bentuk kontrol yang dibuat adalah kontrol dari kecepatan agent tersebut. Sehingga diperoleh bentuk model yang baru. Dalam sistem ini, kita hanya mengontrol pergerakan 2 kucing tersebut saja. Dengan mengadopsi bentuk Functional Cost pada model swarm yaitu 2 partikel di R 2 dengan syarat tidak boleh bertubrukan[2] dengan metode Hamiltonian dan Pontryagin Maximum Principle, diperoleh optimum trayektori-nya. Maka diperoleh Cost Function sebagai berikut: J

1   v12  v22  dt 2 2  2 t0 c1  d1  c2  d 2 t1

Fungsi Hamiltonian adalah:

dari

system

 (a  c )  (a  c )   (b  d )  (b  d )  2 2  2 2  H  p1u1  1 12 pu  1 1   a  c  a  c 2  2 2 b  d 2  b  d 2  1 1 2 2 1 1 2 2      (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3 v1   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p4 v2   (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2   p0  1 1 2 p0v12  p0v 22  2 2 2 2 c1  d1  c 2  d 2

20

 (a  c )  (a  c )   (b  d )  (b  d )  2 2  2 2  H  p1u1  1 12 pu  1 1   a  c  a  c 2  2 2 b  d 2  b  d 2  2 2  2 2   1 1  1 1  (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3 v1   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  2 2 1 1 2 2  p4 v2  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1  p0  1 1 2 p0v12  p0v 22  2 2 2 2 c1  d1  c 2  d 2

Sistem Hamiltonian: 

Persamaan State:

 (a  c )  (a  c )  H 2 2   u1  1 12  a  a c  a c 2  p1 2 2   1 1

 (b  d )  (b  d )  H 1 2 2   u2  1  b 2  b d  b d 2  p 2 1 2 2  1   {(a  c )  (a  c )} {(c  d )  (c  d )}  H    1 1 2 2 1 1 2 2  v1  c p3  {(a  c )  (a  c )} 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2    {(b  d )  (b  d )} {(c  d )  (c  d )}  H    1 1 2 2 1 1 2 2  v2  d p 4  {(b  d )  (b  d )} 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1 



Persamaan Stationer:

 (a  c )  (a  c )  H 2 2   p1  1 12 0  a c  a c 2  u1 2 2  1 1   (b  d )  (b  d )  H 1 2 2   p2  1 0 2 2   u 2  b1  d1  b2  d 2   (a  c )  (a  c )  {(c  d )  (c  d )}  H 1 1 2 2 1 1 2 2   p v  0  p3   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  0 1 v1 2 2 1 1 2 2  1 1   (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2     v1  p 0

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

 (b  d )  (b  d )  {(c  d )  (c  d )}  H 2 2 1 1 2 2   p v  0  p4  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  0 2 v 2 2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  2 2 1 1 2 2  p4  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2     v2  p 0



 a  c 2  a  c 2  2{(a  c )  (a  c )}(a  c ) H 1 1 2 2 1 1   p1u1 1 1 2 2  2 22 a1   a1  c1  a2  c2  







  H  a1  c1  a2  c2  2{(a1  c1 )  (a2  c2 )}(a 2  c2 )  p1 u 1  2 22 a2   a1  c1  a2  c2   2









 (a  c )  (a  c )  {(c  d )  (c  d )} 2  2(a  c )  (a  c ) {(c  d )  (c  d )} (a  c )  (a  c )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p3 v1   2 22   ( a  c )  ( a  c )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2   2 2  b  d  b  d  2{(b  d )  (b  d )}(b  d ) H  1 1 2 2 1 1 2 2 1 1   p2u2  2 22 b1   b  d  b  d 1 1 2 2   2













 (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  2(b  d )  (b  d ) {(c  d )  (c  d )} (b  d )  (b  d )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2   2 22   ( b  d )  ( b  d )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2  





2  2  H  b1  d1  b2  d 2  2{(b2  d 2 )  (b2  d 2 )}(b2  d 2 )  p2u2   2 22 b2   b1  d1  b2  d 2  









 (b  d )  (b  d )  {(c  d )  (c  d )} 2  2 (b  d )  (b  d ) {(c  d )  (c  d )} (b  d )  (b  d )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2   2 22   (b1  d1 )  (b2  d 2 )  {(c1  d1 )  (c2  d 2 )}   2





  a1  c1   a2  c2   (c1  d1)  (c2  d2 )    a  c 2  a  c 2  2{(a  c )  (a  c )}(a  c )  (2) a  c   a  c   (2) (c  d )  (c  d )  H  1 1 2 2 1 1 2 2 1 1  1 1 2 2 1 1 2 2  p1u1   p3v1 2 22 2 22  c1  a1  c1  a2  c2    (a1  c1)  (a2  c2 )  {(c1  d1)  (c2  d2 )}   

















 (b1  d1 )  (b2  d2 ) 2  {(c1  d1 )  (c2  d2 )} 2      2(b  d )  (b  d )}  {(c  d )  (c  d )}{(c  d )  (c  d )}   p  (c  d ) 1 1 2 2 1 1 2 2 1 1 2 2   0 2 1 1 2 p4v2 2 22   c1  d1  c2  d2 (b1  d1)  (b2  d2 )  {(c1  d1)  (c2  d2 )}      











  (a1  c1 )  (a 2  c 2 ) 2  {(c1  d 1 )  (c 2  d 2 )} 2      (a  c )  (a  c ) {(c  d )  (c  d )}(2 {(c  d )  (c  d )} )  1 1 2 2 1 1 2 2 1 1 2 2  p 3 v1  2 2 2   {(a1  c1 )  (a 2  c 2 )  {(c1  d 1 )  (c 2  d 2 )}      









 (2)  (b1  d 1 )  (b2  d 2 ) 2  {(c1  d 1 )  (c 2  d 2 )} 2      (b  d )  (b  d ) {(c  d )  (c  d )} 2(b  d )  (b  d )  2{(c  d )  (c  d )}  1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2  2 2 2   (b1  d 1 )  (b2  d 2 )  {(c1  d 1 )  (c 2  d 2 )}       p 0  (c1  d 1 ) 2







c1  d 1  c 2  d 2

 (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2(a  c )  (a  c ) {(c  d )  (c  d )}  (a  c )  (a  c )  1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p3v1 1 1 2 2  2 22  ( a  c )  ( a  c )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2   2



  b  d 2  b  d 2  2{(b  d )  (b  d )}(b  d ) H  1 1 2 2 1 1 2 2 1 1   p2u2   2 2 2 d 1   b1  d 1  b2  d 2  



Persamaan Costate:



21





2





  2 2    b  d  b2  d 2  2{(b1  d1)  (b2  d 2 )}(b2  d 2 )  H  p2u2  1 1  2   d 2 2 2  b  d  b2  d 2    1 1   





  (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2   1 1 2 2 1 1 2 2    (a  c )  (a  c )  {(c  d )  (c  d )}(2 {(c  d )  (c  d )} )  2 2 1 1 2 2 1 1 2 2  p3v1 1 1  2    (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2    2 2 1 1 2 2  1 1       (2 (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2   1 1 2 2 1 1 2 2    (b  d )  (b  d )  {(c  d )  (c  d )}(2(b  d )  (b  d )  2{(c  d )  (c  d )}   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2   p4v2 2    (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2    2 2 1 1 2 2   1 1       p0 (c2  d 2 )





2

c1  d1  c2  d 2





2

Program Matlab digunakan untuk membantu dalam memvisualisasikan keadaan yang diinginkan dari sistem pergerakan mangsa dan pemangsa untuk memperoleh tampilan lintasan yang optimum dari pergerakan tersebut Design awal tampilan simulasi ditentukan dengan menggunakan komponen GUI. Komponenkomponen GUI yang digunakan terdiri dari frame, static text, axea, push button, dll. Serta mengatur tampilan dengan property inspector.

  a1  c1   a2  c2   (c1  d1 )  (c2  d 2 )   2 2    H   a1  c1  a2  c2  2{(a1  c1 )  (a2  c2 )}(a2  c2 )  (2) a1  c1   a2  c2   (2) (c1  d1 )  (c2  d 2 )   p1u1   p3v1   2 2  2 2 c2    (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  a1  c1  a2  c2 1 1 2 2    1 1 2 2   

















 (b1  d1 )  (b2  d 2 ) 2  {(c1  d1 )  (c2  d 2 )} 2      2(b  d )  (b  d )  {(c  d )  (c  d )}{(c  d )  (c  d )}   p  (c  d ) 1 1 2 2 1 1 2 2 1 1 2 2  0 2 2 2 2 p4 v2  2 22   c1  d1  c2  d 2 (b1  d1 )  (b2  d 2 )  {(c1  d1 )  (c2  d 2 )}      





Gambar 5. Tampilan untuk memasukkan koordinat dan waktu pengejaran

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Gambar. 6 Tampilan untuk tempat lintasan yang dilalui M-File yang diperoleh dari design GUI diberi program atau syntaks dari persamaan differensial state dan costate. M-File yang berisi program tersebut kemudian di running untuk mendapatkan tampilan design awal GUI yang telah aktif. Syntaks yang digunakan adalah sebagai berikut:: Program persamaan differensial nonlinear dari persamaan state dan costate sistem pergerakan dua kucing dan dua tikus dalam bentuk M-File. %sistem 2 kucing dan 2 tikus %a1=y(1), a2=y(2), b1=y(3), b2=y(4), c1=y(5), c2=y(6), d1=y(7), d2=y(8) %dHda1=y(9), dHda2=y(10), dHdb1=y(11), dHdb2=y(12) %dHdc1=y(13),dHdc2=y(14), dHdd1=y(15), dHdd2=y(16) %input a1,a2,b1,b2,c1,c2,d1,d2 function dy = rig3(t,y) dy = zeros(16,1); % a column vector %Persamaan State tikus 1 dy(1)= y(2); dy(2)= ((y(1)-y(5))+(y(2)-y(6))) ./ ((y(1)-y(5)).^2+(y(2)-y(6)).^2); %Persamaan State tikus 2

22

dy(3)= y(4); dy(4)= ((y(3)-y(7))+(y(4)-y(8))) ./ ((y(3)-y(7)).^2+(y(4)-y(8)).^2); %Persamaan State kucing 1 dy(5)= y(6); dy(6)= ((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))).^2 ./100*(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2)); %Persamaan State kucing 1 dy(7)= y(8); dy(8)= ((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))).^2 ./100*(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2)); %Persamaan co-state tikus 1 dy(9) = y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(1)-y(5))+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2); dy(10) = y(9) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(1)-y(5))+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2); %Persamaan co-state tikus 2

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

dy(11)= y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(3)-y(7))+(y(4)y(8))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(3)-y(7))+(y(4)y(8)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(3)-y(7))+(y(4)-y(8))).^2+((y(5)y(7))+(y(6)-y(8))).^2).^2); dy(12)= y(11) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(3)-y(7))+(y(4)y(8))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(3)-y(7))+(y(4)y(8)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(3)-y(7))+(y(4)-y(8))).^2+((y(5)y(7))+(y(6)-y(8))).^2).^2); %Persamaan co-state kucing 1 dy(13)= y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*((2.*(((y(1)-y(5)+(y(2)y(6))).^2-((y(5)-y(7))+(y(6)y(8))).^2))) ./ ((((y(1)-y(5))+(y(2)y(6))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2).^2)) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* (((y(3)-y(7))+(y(4)- y(8))).^2 ((y(5)-y(7))+(y(6)-y(8))).^2(2.*(((y(3)-y(7))+(y(4)-y(8))) * (((y(5)-y(7))+(y(6)-y(8))))))./ (((y(3)y(7))+(y(4)-y(8))).^2 + ((y(5)-

23

y(7))+(y(6)-y(8))).^2).^2) - ((y(5)y(7)) ./(y(5)-y(7)).^2+(y(6)-y(8)).^2); dy(14)= y(13) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*((2.*(((y(1)-y(5)+(y(2)y(6))).^2-((y(5)-y(7))+(y(6)y(8))).^2))) ./ ((((y(1)-y(5))+(y(2)y(6))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2).^2)) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* (((y(3)-y(7))+(y(4)-y(8))).^2 ((y(5)-y(7))+(y(6)-y(8))).^2(2.*(((y(3)-y(7))+(y(4)-y(8))) * (((y(5)-y(7))+(y(6)-y(8))))))./ (((y(3)y(7))+(y(4)-y(8))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2) - ((y(6)y(8)) ./(y(5)-y(7)).^2+(y(6)-y(8)).^2); %Persamaan co-state kucing 2 dy(15)= y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*(((-(y(1)-y(5)+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2))+(2 .*((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ ((((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-2)*(((y(3)-y(7))+(y(4)y(8))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2)+2.*(((y(3)-y(7))+(y(4)-

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

y(8))) + ((y(5)-y(7))+(y(6)-y(8)))).^2) ./ (((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + ((y(5)-y(7)) ./ (y(5)-y(7)).^2+(y(6)y(8)).^2); dy(16)= y(15) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*(((-(y(1)-y(5)+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2))+(2 .*((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ ((((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-2)*(((y(3)-y(7))+(y(4)y(8))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2)+2.*(((y(3)-y(7))+(y(4)y(8))) + ((y(5)-y(7))+(y(6)-y(8)))).^2) ./ (((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + ((y(6)-y(8)) ./ (y(5)-y(7)).^2+(y(6)y(8)).^2); Simulasi pertama, keadaan awal masing-masing agent: masukkan kondisi awal untuk tikus 1 X1=3 Y1=4 masukkan kondisi awal untuk tikus 2 X1=4 Y1=4 masukkan kondisi awal untuk kucing 1 X1=2 Y1=3

24

masukkan kondisi awal untuk kucing 2 X1=4 Y1=2 masukkan lama waktu pengejaran=8 >>

Gambar. 7. Lintasan yang dilalui dari pergeran 2 kucing dan 2 tikus Pada gambar 7 merupakan bentuk 2 dimensi yaitu memuat posisi pada sumbu x dan sumbu y . Pembobot kontrol yang diberikan adalah p0  1,   100,   1 . IV. SIMPULAN DAN SARAN A. SIMPULAN

Simpulan yang dapat diperoleh dari Pemodelan dan simulasi pergerakan mangsa dan pemangsa adalah sebagai berikut. 1. Telah diperoleh model matematika dari pergerakan mangsa dan pemangsa antara dua kucing dan dua tikus.

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

2. Telah diperoleh trayektoti atau tampilan lintasan yang dilalui dari pergerakan mangsa dan pemangsa antara 2 kucing dan 2 tikus, dan simulasi yang dibuat telah mendekati dengan model yang diperoleh B. SARAN Perlu dikembangkan dengan jumlah agent yang berbeda dan tampilan yang lebih baik. DAFTAR PUSTAKA [1]

Wahono, Romi S, “Multi Agent System:Issues, Approaches and Challenges”, IECC Japan Reffresing Seminar, No.2, Vol.3, 2001, pp. 22-23.

[2]

Iwan, Pranoto,dkk, July 18-21, 2006, “Simulation of Swarm Modelling Through Optimal Control System”, The 6th Asian Control.

[3]

Gopal,M, 2003,Control System Principle and Design(second edition), Singapore: Mc. Grow Hill.

[4]

Naidu, Desineni Subbaram, 2003, Optimal Control System, Washington: CRC

[5]

Meyer,Walter.J, 1984, Concepts of Mathematical Modelling, New York: Mc. Graw-Hill.Inc.

[6]

Hasan. “Aplikasi Sistem Kontrol Optimum Dalam Reaktor Nuklir”. Elekro On Line, vol 12, 1998.

25



Deskripsi

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Simulasi Dari Pergerakan Mangsa Dan Pemangsa Antara 2 Tikus Dan 2 Kucing Menggunakan Pemrograman MATLAB Niska Shofia Teknik Informatika, Fakultas Teknik, Universitas Nusantara PGRI Kediri [email protected]

Abstrak – Teknologi agent dan Multi Agent System (MAS) saat ini sudah sampai pada tahap implementasi nyata. Alur pergerakan dari masing-masing agent diatur oleh sistem kontrol yang independent. Pada penelitian ini, multi agent sistem tersebut diterapkan dalam pergerakan mangsa dan pemangsanya antara dua kucing dan dua tikus. Tujuan dari sistem ini adalah mendapatkan energi minimum dengan waktu optimum yang dibutuhkan untuk mendapatkan mangsanya. Dengan menggunakan metode dari optimal control yaitu metode Pontryagin Maximum Principle dengan fungsi Hamilton diperoleh model matematika dari pergerakan tersebut yang selanjutnya disimulasikan menggunakan program MATLAB. Kata kunci: agent, optimal control, Hamiltonian, Pontryagain Maximum Principle, MATLAB

I.

PENDAHULUAN

Perkembangan teknologi menyebabkan teknologi agent dan multi agent system dengan mudah bisa diimplementasikan, sehingga saat ini bukan hanya bergerak dalam kerangka penelitian, tetapi juga telah sampai pada tahap implementasi nyata. Saat ini teknologi agent sudah diaplikasikan secara luas di berbagai bidang, antara lain: Air Traffic

Control, Transportation System, penerapan Ant Colony System (ACS) untuk mencari solusi optimal pada Traveling Salesman Problem (TPS). [1]. Kita sedang melakukan transisi dari AI (Artificial Intelegent) ke IA (Intelegent Agent), sehingga segala permasalahan nyata yang berkaitan dengan multi agent system sangat menarik untuk dibahas [1], salah satunya adalah tentang pergerakan hewan pemangsa yang dilakukan untuk mencari mangsanya. Optimal control system merupakan sebuah sistem yang terdiri atas satu atau beberapa peralatan yang berfungsi untuk mengendalikan sistem lain yang berhubungan dengan sebuah proses untuk mendapatkan hasil paling baik yang dapat dicapai dengan memperhatikan kondisi dan kendala pada sistem tersebut [6]. Dalam optimal control system, istilah optimal seringkali merujuk pada minimal. Misalnya meminimalkan energi, input, waktu, kesalahan dll. Supaya

sistem

tersebut

dapat

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

18

dikontrol, maka perlu dibuat model matematis yang menghubungkan antara input, proses, dan output. Pada optimal control system, model yang banyak digunakan adalah model persamaan keadaan. Pada artikel ini akan dianalisis mengenai simulasi model dari pergerakan mangsa dan pemangsa antara dua kucing dan dua tikus dengan beberapa batasan antara lain (1) Kucing 1 mengejar tikus 1 dan kucing 2 mengejar tikus 2, (2) dalam proses memburu mangsanya tersebut tidak menggunakan alat bantu, dan (3) metode optimal control yang digunakan adalah dengan metode Hamiltonian. Selanjutnya akan mensimulasikannya kedalam Program MATLAB

II.

METODE PENELITIAN

Analisa yang dibuat dalam penelitian ini meliputi bagian-bagian terurut berikut: 1. Membuat model dari salah satu aplikasi system multi agent. Tahap-tahap utama yang dilalui dapat digambarkan dalam diagram berikut:

Gambar 1 Diagram Pemodelan 2.

Membuat program untuk mensimulasikan pergerakan mangsa dan pemangsa. Pembuatan syntax program menggunakan bahasa pemrograman MATLAB yang selanjunya dapat digunakan untuk mengetahui dan menganalisa penentuan lintasan yang paling optimum yang dapat dilalui untuk meminimalkan energy yang digunakan III. HASIL DAN PEMBAHASAN Persamaan pergerakan mangsa dan pemangsa merupakan persamaan keadaan non-linier. Untuk mengoptimalkan energi geraknya maka dapat digunakan persamaan Hamilton Pontryagin. Persamaan Hamilton Pontryagin dapat digunakan untuk mengoptimalkan sistem proses yang bersifat kompleks dengan banyak kendala. Persamaan Hamilton Pontryagin juga dapat digunakan intuk mengoptimalkan sistem proses yang bersifat linier maupun nonlinier.

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

19

Pergerakan mangsa dan pemangsa antara 2 kucing mengejar 2 tikus dimana : 1. Kucing 1 mengejar tikus 1 dan kucing 2 mengejar tikus 2. Pada model pergerakan ini hanya terdapat 2 agent yang dapat dikontrol yaitu pergerakan 2 kucing tersebut. Karakteristik Kucing: a. Tikus akan lari menjauh dari kucing terdekat. b. Kucing lari mengejar ke arah tikus. c. Kucing akan saling menghindar jika bertemu dengan kucing yang lain. Misal : a adalah tikus 1 b adalah tikus 2 c adalah kucing 1 d adalah kucing 2 Dalam hal ini model sistem diasumsikan Terkontrol dan kita akan meminimumkan Fungsi Cost-nya untuk mendapatkan energi minimum dari pergerakZan (sejauh t menit) tersebut. Model sistem dari pergerakan 2 kucing 2 tikus:

Gambar 3 Arah pergerakan tikus dan kucing

Gambar 4. Pergerakan kucing 1 memangsa tikus 1 dan kucing 2 memangsa tikus 2

bahwa tikus tertangkap oleh kucing adalah: vtikus  vkucing dimana d d (tikus)  (kucing ) dt dt

Gambar 2 Posisi pergerakan 2 kucing dan 2 tikus

Karena jarak tikus 1 ke kucing 1 lebih dekat daripada jarak tikus 1 ke kucing 2 dan jarak tikus 2 ke kucing 2 lebih dekat daripada jarak tikus 2 ke kucing 1, maka modelnya bisa diubah ke dalam bentuk jarak, dimana s  v  t .

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Namun bentuk model yang diperoleh bukan merupakan bentuk kontrol. Karena model yang diperoleh adalah model kecepatan dari pergerakan masing-masing agent maka bentuk kontrol yang dibuat adalah kontrol dari kecepatan agent tersebut. Sehingga diperoleh bentuk model yang baru. Dalam sistem ini, kita hanya mengontrol pergerakan 2 kucing tersebut saja. Dengan mengadopsi bentuk Functional Cost pada model swarm yaitu 2 partikel di R 2 dengan syarat tidak boleh bertubrukan[2] dengan metode Hamiltonian dan Pontryagin Maximum Principle, diperoleh optimum trayektori-nya. Maka diperoleh Cost Function sebagai berikut: J

1   v12  v22  dt 2 2  2 t0 c1  d1  c2  d 2 t1

Fungsi Hamiltonian adalah:

dari

system

 (a  c )  (a  c )   (b  d )  (b  d )  2 2  2 2  H  p1u1  1 12 pu  1 1   a  c  a  c 2  2 2 b  d 2  b  d 2  1 1 2 2 1 1 2 2      (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3 v1   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p4 v2   (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2   p0  1 1 2 p0v12  p0v 22  2 2 2 2 c1  d1  c 2  d 2

20

 (a  c )  (a  c )   (b  d )  (b  d )  2 2  2 2  H  p1u1  1 12 pu  1 1   a  c  a  c 2  2 2 b  d 2  b  d 2  2 2  2 2   1 1  1 1  (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3 v1   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  2 2 1 1 2 2  p4 v2  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1  p0  1 1 2 p0v12  p0v 22  2 2 2 2 c1  d1  c 2  d 2

Sistem Hamiltonian: 

Persamaan State:

 (a  c )  (a  c )  H 2 2   u1  1 12  a  a c  a c 2  p1 2 2   1 1

 (b  d )  (b  d )  H 1 2 2   u2  1  b 2  b d  b d 2  p 2 1 2 2  1   {(a  c )  (a  c )} {(c  d )  (c  d )}  H    1 1 2 2 1 1 2 2  v1  c p3  {(a  c )  (a  c )} 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2    {(b  d )  (b  d )} {(c  d )  (c  d )}  H    1 1 2 2 1 1 2 2  v2  d p 4  {(b  d )  (b  d )} 2  {(c  d )  (c  d )} 2  2 2 1 1 2 2  1 1 



Persamaan Stationer:

 (a  c )  (a  c )  H 2 2   p1  1 12 0  a c  a c 2  u1 2 2  1 1   (b  d )  (b  d )  H 1 2 2   p2  1 0 2 2   u 2  b1  d1  b2  d 2   (a  c )  (a  c )  {(c  d )  (c  d )}  H 1 1 2 2 1 1 2 2   p v  0  p3   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  0 1 v1 2 2 1 1 2 2  1 1   (a  c )  (a  c )  {(c  d )  (c  d )}  1 1 2 2 1 1 2 2  p3   (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2     v1  p 0

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

 (b  d )  (b  d )  {(c  d )  (c  d )}  H 2 2 1 1 2 2   p v  0  p4  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  0 2 v 2 2 2 1 1 2 2  1 1   (b  d )  (b  d )  {(c  d )  (c  d )}  2 2 1 1 2 2  p4  1 1  (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  1 1 2 2 1 1 2 2     v2  p 0



 a  c 2  a  c 2  2{(a  c )  (a  c )}(a  c ) H 1 1 2 2 1 1   p1u1 1 1 2 2  2 22 a1   a1  c1  a2  c2  







  H  a1  c1  a2  c2  2{(a1  c1 )  (a2  c2 )}(a 2  c2 )  p1 u 1  2 22 a2   a1  c1  a2  c2   2









 (a  c )  (a  c )  {(c  d )  (c  d )} 2  2(a  c )  (a  c ) {(c  d )  (c  d )} (a  c )  (a  c )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p3 v1   2 22   ( a  c )  ( a  c )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2   2 2  b  d  b  d  2{(b  d )  (b  d )}(b  d ) H  1 1 2 2 1 1 2 2 1 1   p2u2  2 22 b1   b  d  b  d 1 1 2 2   2













 (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2  2(b  d )  (b  d ) {(c  d )  (c  d )} (b  d )  (b  d )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2   2 22   ( b  d )  ( b  d )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2  





2  2  H  b1  d1  b2  d 2  2{(b2  d 2 )  (b2  d 2 )}(b2  d 2 )  p2u2   2 22 b2   b1  d1  b2  d 2  









 (b  d )  (b  d )  {(c  d )  (c  d )} 2  2 (b  d )  (b  d ) {(c  d )  (c  d )} (b  d )  (b  d )   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2   2 22   (b1  d1 )  (b2  d 2 )  {(c1  d1 )  (c2  d 2 )}   2





  a1  c1   a2  c2   (c1  d1)  (c2  d2 )    a  c 2  a  c 2  2{(a  c )  (a  c )}(a  c )  (2) a  c   a  c   (2) (c  d )  (c  d )  H  1 1 2 2 1 1 2 2 1 1  1 1 2 2 1 1 2 2  p1u1   p3v1 2 22 2 22  c1  a1  c1  a2  c2    (a1  c1)  (a2  c2 )  {(c1  d1)  (c2  d2 )}   

















 (b1  d1 )  (b2  d2 ) 2  {(c1  d1 )  (c2  d2 )} 2      2(b  d )  (b  d )}  {(c  d )  (c  d )}{(c  d )  (c  d )}   p  (c  d ) 1 1 2 2 1 1 2 2 1 1 2 2   0 2 1 1 2 p4v2 2 22   c1  d1  c2  d2 (b1  d1)  (b2  d2 )  {(c1  d1)  (c2  d2 )}      











  (a1  c1 )  (a 2  c 2 ) 2  {(c1  d 1 )  (c 2  d 2 )} 2      (a  c )  (a  c ) {(c  d )  (c  d )}(2 {(c  d )  (c  d )} )  1 1 2 2 1 1 2 2 1 1 2 2  p 3 v1  2 2 2   {(a1  c1 )  (a 2  c 2 )  {(c1  d 1 )  (c 2  d 2 )}      









 (2)  (b1  d 1 )  (b2  d 2 ) 2  {(c1  d 1 )  (c 2  d 2 )} 2      (b  d )  (b  d ) {(c  d )  (c  d )} 2(b  d )  (b  d )  2{(c  d )  (c  d )}  1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p4 v2  2 2 2   (b1  d 1 )  (b2  d 2 )  {(c1  d 1 )  (c 2  d 2 )}       p 0  (c1  d 1 ) 2







c1  d 1  c 2  d 2

 (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  2(a  c )  (a  c ) {(c  d )  (c  d )}  (a  c )  (a  c )  1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2  p3v1 1 1 2 2  2 22  ( a  c )  ( a  c )  {( c  d )  ( c  d )} 1 1 2 2 1 1 2 2   2



  b  d 2  b  d 2  2{(b  d )  (b  d )}(b  d ) H  1 1 2 2 1 1 2 2 1 1   p2u2   2 2 2 d 1   b1  d 1  b2  d 2  



Persamaan Costate:



21





2





  2 2    b  d  b2  d 2  2{(b1  d1)  (b2  d 2 )}(b2  d 2 )  H  p2u2  1 1  2   d 2 2 2  b  d  b2  d 2    1 1   





  (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2   1 1 2 2 1 1 2 2    (a  c )  (a  c )  {(c  d )  (c  d )}(2 {(c  d )  (c  d )} )  2 2 1 1 2 2 1 1 2 2  p3v1 1 1  2    (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2    2 2 1 1 2 2  1 1       (2 (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2   1 1 2 2 1 1 2 2    (b  d )  (b  d )  {(c  d )  (c  d )}(2(b  d )  (b  d )  2{(c  d )  (c  d )}   1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2   p4v2 2    (b  d )  (b  d ) 2  {(c  d )  (c  d )} 2    2 2 1 1 2 2   1 1       p0 (c2  d 2 )





2

c1  d1  c2  d 2





2

Program Matlab digunakan untuk membantu dalam memvisualisasikan keadaan yang diinginkan dari sistem pergerakan mangsa dan pemangsa untuk memperoleh tampilan lintasan yang optimum dari pergerakan tersebut Design awal tampilan simulasi ditentukan dengan menggunakan komponen GUI. Komponenkomponen GUI yang digunakan terdiri dari frame, static text, axea, push button, dll. Serta mengatur tampilan dengan property inspector.

  a1  c1   a2  c2   (c1  d1 )  (c2  d 2 )   2 2    H   a1  c1  a2  c2  2{(a1  c1 )  (a2  c2 )}(a2  c2 )  (2) a1  c1   a2  c2   (2) (c1  d1 )  (c2  d 2 )   p1u1   p3v1   2 2  2 2 c2    (a  c )  (a  c ) 2  {(c  d )  (c  d )} 2  a1  c1  a2  c2 1 1 2 2    1 1 2 2   

















 (b1  d1 )  (b2  d 2 ) 2  {(c1  d1 )  (c2  d 2 )} 2      2(b  d )  (b  d )  {(c  d )  (c  d )}{(c  d )  (c  d )}   p  (c  d ) 1 1 2 2 1 1 2 2 1 1 2 2  0 2 2 2 2 p4 v2  2 22   c1  d1  c2  d 2 (b1  d1 )  (b2  d 2 )  {(c1  d1 )  (c2  d 2 )}      





Gambar 5. Tampilan untuk memasukkan koordinat dan waktu pengejaran

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

Gambar. 6 Tampilan untuk tempat lintasan yang dilalui M-File yang diperoleh dari design GUI diberi program atau syntaks dari persamaan differensial state dan costate. M-File yang berisi program tersebut kemudian di running untuk mendapatkan tampilan design awal GUI yang telah aktif. Syntaks yang digunakan adalah sebagai berikut:: Program persamaan differensial nonlinear dari persamaan state dan costate sistem pergerakan dua kucing dan dua tikus dalam bentuk M-File. %sistem 2 kucing dan 2 tikus %a1=y(1), a2=y(2), b1=y(3), b2=y(4), c1=y(5), c2=y(6), d1=y(7), d2=y(8) %dHda1=y(9), dHda2=y(10), dHdb1=y(11), dHdb2=y(12) %dHdc1=y(13),dHdc2=y(14), dHdd1=y(15), dHdd2=y(16) %input a1,a2,b1,b2,c1,c2,d1,d2 function dy = rig3(t,y) dy = zeros(16,1); % a column vector %Persamaan State tikus 1 dy(1)= y(2); dy(2)= ((y(1)-y(5))+(y(2)-y(6))) ./ ((y(1)-y(5)).^2+(y(2)-y(6)).^2); %Persamaan State tikus 2

22

dy(3)= y(4); dy(4)= ((y(3)-y(7))+(y(4)-y(8))) ./ ((y(3)-y(7)).^2+(y(4)-y(8)).^2); %Persamaan State kucing 1 dy(5)= y(6); dy(6)= ((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))).^2 ./100*(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2)); %Persamaan State kucing 1 dy(7)= y(8); dy(8)= ((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))).^2 ./100*(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2)); %Persamaan co-state tikus 1 dy(9) = y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(1)-y(5))+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2); dy(10) = y(9) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(1)-y(5))+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2); %Persamaan co-state tikus 2

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

dy(11)= y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(3)-y(7))+(y(4)y(8))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(3)-y(7))+(y(4)y(8)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(3)-y(7))+(y(4)-y(8))).^2+((y(5)y(7))+(y(6)-y(8))).^2).^2); dy(12)= y(11) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-((y(3)-y(7))+(y(4)y(8))).^2+((y(5)-y(7))+(y(6)y(8))).^2)-2.*(((y(3)-y(7))+(y(4)y(8)))*((y(5)-y(7))+(y(6)-y(8))))./ (((y(3)-y(7))+(y(4)-y(8))).^2+((y(5)y(7))+(y(6)-y(8))).^2).^2); %Persamaan co-state kucing 1 dy(13)= y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*((2.*(((y(1)-y(5)+(y(2)y(6))).^2-((y(5)-y(7))+(y(6)y(8))).^2))) ./ ((((y(1)-y(5))+(y(2)y(6))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2).^2)) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* (((y(3)-y(7))+(y(4)- y(8))).^2 ((y(5)-y(7))+(y(6)-y(8))).^2(2.*(((y(3)-y(7))+(y(4)-y(8))) * (((y(5)-y(7))+(y(6)-y(8))))))./ (((y(3)y(7))+(y(4)-y(8))).^2 + ((y(5)-

23

y(7))+(y(6)-y(8))).^2).^2) - ((y(5)y(7)) ./(y(5)-y(7)).^2+(y(6)-y(8)).^2); dy(14)= y(13) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*((2.*(((y(1)-y(5)+(y(2)y(6))).^2-((y(5)-y(7))+(y(6)y(8))).^2))) ./ ((((y(1)-y(5))+(y(2)y(6))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2).^2)) + y(16).*((((y(3)y(7))+(y(4)-y(8))+(y(5)-y(7))+(y(6)y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* (((y(3)-y(7))+(y(4)-y(8))).^2 ((y(5)-y(7))+(y(6)-y(8))).^2(2.*(((y(3)-y(7))+(y(4)-y(8))) * (((y(5)-y(7))+(y(6)-y(8))))))./ (((y(3)y(7))+(y(4)-y(8))).^2 + ((y(5)y(7))+(y(6)-y(8))).^2).^2) - ((y(6)y(8)) ./(y(5)-y(7)).^2+(y(6)-y(8)).^2); %Persamaan co-state kucing 2 dy(15)= y(14).*((((y(1)-y(5))+(y(2)y(6))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*(((-(y(1)-y(5)+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2))+(2 .*((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ ((((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-2)*(((y(3)-y(7))+(y(4)y(8))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2)+2.*(((y(3)-y(7))+(y(4)-

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

y(8))) + ((y(5)-y(7))+(y(6)-y(8)))).^2) ./ (((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + ((y(5)-y(7)) ./ (y(5)-y(7)).^2+(y(6)y(8)).^2); dy(16)= y(15) + y(14).*((((y(1)y(5))+(y(2)-y(6))+(y(5)-y(7))+(y(6)y(8))) ./(((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).*(((-(y(1)-y(5)+(y(2)y(6))).^2+((y(5)-y(7))+(y(6)y(8))).^2))+(2 .*((y(1)-y(5))+(y(2)y(6)))*((y(5)-y(7))+(y(6)-y(8))))./ ((((y(1)-y(5))+(y(2)-y(6))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + y(16).*((((y(3)-y(7))+(y(4)y(8))+(y(5)-y(7))+(y(6)-y(8))) ./(((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2)) ./ 100).* ((-2)*(((y(3)-y(7))+(y(4)y(8))).^2 + ((y(5)-y(7))+(y(6)y(8))).^2)+2.*(((y(3)-y(7))+(y(4)y(8))) + ((y(5)-y(7))+(y(6)-y(8)))).^2) ./ (((y(3)-y(7))+(y(4)-y(8))).^2 + ((y(5)-y(7))+(y(6)-y(8))).^2).^2) + ((y(6)-y(8)) ./ (y(5)-y(7)).^2+(y(6)y(8)).^2); Simulasi pertama, keadaan awal masing-masing agent: masukkan kondisi awal untuk tikus 1 X1=3 Y1=4 masukkan kondisi awal untuk tikus 2 X1=4 Y1=4 masukkan kondisi awal untuk kucing 1 X1=2 Y1=3

24

masukkan kondisi awal untuk kucing 2 X1=4 Y1=2 masukkan lama waktu pengejaran=8 >>

Gambar. 7. Lintasan yang dilalui dari pergeran 2 kucing dan 2 tikus Pada gambar 7 merupakan bentuk 2 dimensi yaitu memuat posisi pada sumbu x dan sumbu y . Pembobot kontrol yang diberikan adalah p0  1,   100,   1 . IV. SIMPULAN DAN SARAN A. SIMPULAN

Simpulan yang dapat diperoleh dari Pemodelan dan simulasi pergerakan mangsa dan pemangsa adalah sebagai berikut. 1. Telah diperoleh model matematika dari pergerakan mangsa dan pemangsa antara dua kucing dan dua tikus.

Nusantara of Engineering /Vol. 3 / No. 2 /ISSN: 2355-6684

2. Telah diperoleh trayektoti atau tampilan lintasan yang dilalui dari pergerakan mangsa dan pemangsa antara 2 kucing dan 2 tikus, dan simulasi yang dibuat telah mendekati dengan model yang diperoleh B. SARAN Perlu dikembangkan dengan jumlah agent yang berbeda dan tampilan yang lebih baik. DAFTAR PUSTAKA [1]

Wahono, Romi S, “Multi Agent System:Issues, Approaches and Challenges”, IECC Japan Reffresing Seminar, No.2, Vol.3, 2001, pp. 22-23.

[2]

Iwan, Pranoto,dkk, July 18-21, 2006, “Simulation of Swarm Modelling Through Optimal Control System”, The 6th Asian Control.

[3]

Gopal,M, 2003,Control System Principle and Design(second edition), Singapore: Mc. Grow Hill.

[4]

Naidu, Desineni Subbaram, 2003, Optimal Control System, Washington: CRC

[5]

Meyer,Walter.J, 1984, Concepts of Mathematical Modelling, New York: Mc. Graw-Hill.Inc.

[6]

Hasan. “Aplikasi Sistem Kontrol Optimum Dalam Reaktor Nuklir”. Elekro On Line, vol 12, 1998.

25

Lihat lebih banyak...

Komentar

Hak Cipta © 2017 CARIDOKUMEN Inc.