Friday, October 31, 2014

Review Jurnal : "Analisa Dan Uji Kinerja PC Router Yang Menjalankan Protokol Routing Border Gateway Protocol (BGP) Menggunakan Zebra/Quagga"

BAB I : PENDAHULUAN
            Pada era teknologi ini, perkembangan teknologi sangat pesat. Semua lapisan masyarakat dapat mengakses internet dengan mudah dan murah. Sehingga dibutuhkan pula sebuah kendali atau kontrol agar dapat merutekan paket-paket data sehingga dapat diterima dengan kondisi baik dan benar. Namun ketika sebuah jaringan komputer semakin besar maka akan dibutuhkan pula teknik mengenai pemetaan routing secara dinamis agar dapat diandalkan pada jaringan yang kompleks. Contohnya adalah perusahaan penyedia jasa internet atau Internet Service Provider (ISP) yang membutuhkan sebuah protocol routing yang dinamis atau disebut Border Gateway Protocol (BGP).

BAB II : LANDASAN TEORI
Router
            Router adalah perlatan jaringan yang digunakan untuk memperluad atau memecah jaringan dengan melanjutkan pakret – paket dari satu jaringan logika ke jaringan lainnya. Router banyak digunakan di dalam internetwork yang besar menggunakan keluarga protocol transmission control protocol / internet protocol (TCP/IP) dan untuk menghubungkan host TCP/IP dan Local Area Network(LAN). Router bekerja pada layer jaringan(layer 3) dari medel OSI untuk memindahkan paket – paket antar jaringan menggunakan alamt logikanya.

IP Address
            IP atau internet protocol mendefinisikan bagaimana informasi dilewatkan antara satu system dengan system lain di Internet. IP address atau alamat IP adalah suatu deretan bilangan unik yang mengidentifikasikan suatu host atau komputer di Internet. Biilangan – bilangan tersebut biasanya ditampilkan dalam kelompok – kelompok yang ssipisahkan dengan titik seperti 201.145.34.56. Semua sumber daya di internet harus mempunyai IP address atau sama sekali tidak dapat hadir di internet. 

Protokol Jaringan
            OSI adaah layer yang diciptakan oleh International Standard Organization (ISO) yang menyediakan kerangka logika terstruktur bagaimana proses komunikasi data berinteraksi melalui jaringan. Standar ini dikembangkan untuk industry komputer agar komputer dapat berkomunikasi pada jaringan yang berbeda secara efisien. Terdapat tujuh layer pada model OSI, setiap layer bertanggung jawab secara khusus pada proyek komunikasi data. Misal, satu layer bertanggung jawab untuk membentuk koneksi antar perangkat, sementara layer lainnya bertanggung jawab untuk mengoreksi terjadinya “error” selama proses transfer data berlangsung.

Protokol dalam jaringan
    o Packet Exchange
    o NetBIOS Extended User Interface (NetBEUI)
    o TCP/IP

Prinsip Dasar Routing
            Router memiliki kemampuan melewatkan paket IP dari satu jaringan ke jaringan lain yang mungkin memiliki banyak jalur diantara keduanya. Routerrouter yang saling terhubung dalam jaringan internet turut serta dalam sebuah algoritma routing terdistribusi untuk menentukan jalur terbaik yang dilalui paket IP dari system ke system lain. Proses routing dilakukan secara hop by hop.

BAB III : TEORI DASAR ROUTING DINAMIS BORDER GATEWAY PROTOKOL (BGP)
Internet Routing
            Gateway merupakan device untuk internet. Gateway lebih mengacu pada peralatan yang menyelenggarakan translasi protokol layer aplikasi diantara berbagai device. Router-router di Internet pada dasarnya diatur secara hirarkis. Router yang digunakan untuk pertukaran informasi diantara Autonomous System dinamakan Router Interior. Router ini memakai Interior Gateway Protocol (IGP) untuk mewujudkan fungsinya. Contoh IGP adalah Routing Information Protocol (RIP). Disamping router diatas, kita juga mengenal gateway eksterior, yaitu gateway yang membentuk bermacam fungsi protokol diantara jaringan-jaringan independen. Router ini memakai Exterior Gateway Protocol (EGP) untuk bertukar informasi antar sistem. Contoh Exterior Gateway Protocol adalah Border Gateway Protocol (BGP).

Border Gateway Protocol (BGP)
            Border Gateway Protocol atau BGP merupakan salah satu jenis routing protokol yang ada di dunia komunikasi data. Sebagai sebuah routing protokol, BGP memiliki kemampuan melakukan pengumpulan rute, pertukaran rute dan menentukan rute terbaik menuju ke sebuah lokasi dalam jaringan. Routing protokol juga pasti dilengkapi dengan algoritma yang pintar dalam mencari jalan terbaik. Sesuai degan namanya, EGP memiliki kemampuan untuk melakukan pertukaran rute dari dan keluar jaringan lokal sebuah organisasi atau kelompok tertentu. Organisasi atau kelompok tertentu tetapi diluar organisasi pribadi sering disebut dengan Autonomous System (AS).
            Routing protokol ini memiliki tingkat skalabilitas yang tinggi karena beberapa organisasi dapat dilayaninya dalam melakukan pertukaran routing, sehingga luas sekali jangkauan BGP dalam melayani para pengguna jaringan

Autonomous System (AS)
            Autonomous System merupakan satu set router yang berada dibawah pengawasan administrasi tunggal. Sedangkan Autonomous System Number (ASN) merupakan nomor unik yang mengidentifikasikan AS. Nomor unik ini diatur oleh ARIN dan tidak bisa memilih secara sembarang atau mengkonfigurasi sendiri. 
            Nomor-nomor AS terbatas karena sangat penting untuk memilah siapa saja yang benar-benar membutuhkan nomor-nomor AS dan siapa saja yang tidak membutuhkan. Dan bagi yang ingin memiliki ASN yang sifatnya tidak dikenal oleh Internet itu sendiri, dapat menggunakan nomor AS yang dicadangkan untuk penggunaan internal yang berada dalam range 64512-65535.

AS-PATH
            Setiap rute disebarkan melalui BGP dengan sebuah nomor AS (AS Number) dari router yang menyelenggarakannya. Rute ini bergerak dari satu Autonomous System (AS) ke Autonomous System (AS) lain sehingga membentuk sebuah alur atau path yang dinamakan AS-Path. Setiap rute akan bermula dari “null AS-Path”, direpresentasikan dengan ekspresi regular “^$”.

Karakteristik BGP
            Kecanggihan dan kerumitan BGP dapat diperjelas dengan beberapa karakteristik kunci. Karakteristik routing protocol BGP:
   * BGP adalah Path Vector routing protocol yang dalam proses menentukan rute-rute terbaiknya
      selalu mengacu kepada path yang terbaik dan terpilih yang didapatnya dari router BGP yang
      lainnya.
   * Tabel routing akan dikirim secara penuh pada awal dari sesi BGP, update selanjutnya hanya
      bersifat incremental atau menambahi dan mengurangi routing yang sudah ada.
   * Router BGP membangun dan menjaga koneksi antar peer menggunakan port TCP nomor 179.
   * Koneksi antar peer dijaga dengan menggunakan sinyal keepalive secara periodik.
   * Kegagalan menemukan sinyal keepalive, routing update, atau sinyal – sinyal notifikasi lainnya
      pada sebuah router BGP dapat memicu perubahan status BGP peer dengan router lain, sehingga
      mungkin saja akan memicu update – update baru ke router yang lain.
   * Metrik yang digunakan BGP untuk menentukan rute terbaik sangat kompleks dan dapat
      dimodifikasi dengan sangat fleksibel.
   * Penggunaan sistem pengalamatan hirarki dan kemampuannya untuk melakukan manipulasi aliran
      trafik membuat routing protokol BGP sangat skalabel untuk perkembangan jaringan di masa
      mendatang.
   * BGP memiliki routing table sendiri yng biasanya memuat informasi prefix – prefix routing yang
      diterimanya dri router BGP lain. Prefix – prefix ini juga disertai dengan informasi atributnya yang
      dicantumkan secara spesifik di dalamnya.
            BGP memungkinkan mamanipulasi trafik menggunakan atribut-atributnya yang cukup banyak. Atribut ini memiliki tingkat prioritas untuk dijadikan sebagai acuan.

Cara Kerja Router BGP
            Routing protocol BGP dapat dikatakan bekerja pada sebuah router jika sudah terbentuk sesi komunikasi denga router tetangganya yang juga menjalankan BGP. Setelah semuanya berjalan dengan baik, maka sebuah sesi BGP dapat bekerja dengan baik pada router. Pembentukan sesei BGP mengandalkan paket-paket pesan yang terdiri dari empat macam:
   * Open Message, merupakan paket pembuka sebuah sesi BGP.
   * Keepalive Message, bertugas untuk menjaga hubungan yang telah terbentuk antar kedua router
      BGP.
   * Notification Message, adalah paket yang bertugas menginformasikan error yang terjadi terhadap
      sebuah sesi BGP.
   * Update Message, merupakan paket pesan utama yang akan membawa informasi rute-rute yang
      ada.

Atribut-Atribut BGP
   * Ada 11 Macam atribut BGP
   * Origin 
   * AS-Path 
   * Next hop 
   * Multiple Exit Discriminator (MED) 
   * Local Preference 
   * Atomic Aggregate 
   * Aggregrator 
   * Community 
   * Originator ID 
   * Cluster List 
   * Weight

BAB IV : IMPLEMENTASI DAN PENGUJIAN
Struktur Jaringan
            Struktur jaringan pada ISP tempat penelitian dilakukan dengan membagi menjadi 2 yaitu border router PC yang mengarah ke Internasional Internet Exchange (IIX) dan mengarah ke Internasional. Kedua router ini dihubungkan dengan sebuah core router.
            Implementasi jaringan ISP ini menggunakan sistem operasi FreeBSD dan Linux Slackware serta aplikasi routing BGP Zebra dan Quagga.
Instalasi Aplikasi Routing BGP Quagga
            Intalasi ini dilakukan pada router yang sudah terinstal sistem operasi FreeBSD 6.1 stable dengan cara menginstal source code Quagga melalui port lalu diinstal. Kemudian aktifkan daemon zebra dan daemon bgpd lalu konfigurasi zebra.conf dan bgpd.conf sesuai jaringan yang dikehendaki.

Instalasi Aplikasi Routing BGP Zebra
            Instalasi aplikasi ini dilakukan pada sistem operasi Slackware v11.00 kernel 2.6.19.1 dengan cara mengkompilasi source code dari Zebra yang didapat dari situs resminya. Sama dengan Quagga, kemudian aktifkan daemon zebra dan daemon bgpd lalu konfigurasi zebra.conf dan bgpd.conf sesuai jaringan yang dikehendaki.
Skenario Pengujian
            Skenario pengujian kinerja PC Router:
* Pengujian dilakukan 5x24 jam berturut-turut.
* Dilakukan pada router IIX dan Internasional yang menjalankan routing BGP
* Pengujian menggunakan tool monitoring cacti untuk mengetahui kondisi lalu-lintas data / bandwith.
* Pengujian dilakukan dengan monitoring CPU Idle untuk mengetahui keperluan resource prosesor

Hasil Pengujian
* Hasil pengujian pada PC router IIX
      rata-rata ping time : 5,2 ms
      rata-rata CPU Idle : 99.28%
* Hasil pengujian pada PC router Internasional
     rata-rata ping time : 740,4 ms
     rata-rata CPU Idle : 96.82%

DAFTAR PUSTAKA
Kodar, Achmad. 2010. "Analisa Dan Uji Kinerja PC Router Yang Menjalankan Protokol Routing Border Gateway Protocol (BGP) Menggunakan Zebra/Quagga". Universitas Mercu Buana, Jakarta

Tuesday, October 28, 2014

KUMPULAN PERINTAH DASAR YANG ADA DI LINUX - NEW

Sebagai permulaan, berikut ini adalah beberapa perintah-perintah dasar yang biasa digunakan di Linux, antara lain:

man
Perintah ini biasa digunakan untuk menampilkan halaman manual atau help dari suatu perintah. Format penulisannya man , perintah man sangat menolong kita untuk berjalan-jalan di teminal linux ini. Contoh man man akan menampilkan halaman manual dari man.

pwd
Merupakan kependekan dari present working direktori, digunakan untuk melihat path lengkap dari direktori yang sedang aktif saat ini.

ls
Perintah ini digunakan untuk melihat isi suatu direktori. Penggunannya ls /path, path bisa berupa alamat mutlak atau relatif, jika digunakan tanpa argumen /path akan menampilkan isi direktori saat ini.

mkdir
Sesuai dengan namanya yang merupakan kependekan dari make directory, perintah ini digunakan untuk membuat direktori. Biasa dijalankan dengan menuliskan mkdir /path, jika argumen /path bukan merupakan alamat mutlak maka direktori yang dibuat akan relatif terhadap direktori saat ini. Contoh mkdir /home/userkamu/coba akan menghasilkan direktori coba di direktori home user userkamu.

cd
Namanya terinspirasi dari change directory, digunakan untuk berpindah dari satu direktori ke direktori lainnya. Argumen yang biasa digunakan adalah alamat suatu direktori, baik relatif maupun mutlak. Jika digunakan tanpa argumen ia akan memanggil direktori $HOME. Contoh cd /etc/X11 akan memindahkan direktori yang aktif ke /etc/X11. Ada dua argumen istimewa untuk perintah ini yaitu . dan .. karena cd . akan memanggil direktori itu sendiri dan cd .. akan berpindah ke direktori di atasnya (naik satu tingkat).

rmdir
Nama aslinya adalah remove directory, digunakan untuk menghapus direktori. Namun ia hanya akan menghapus direktori yang kosong. Seperti saudaranya yang lain ia bisa digunakan dengan format rmdir /path.

mv
mv /path/asal /path/tujuan akan memindahkan suatu berkas atau direktori dari path asal ke tujuan. Bisa juga digunakan untuk mengganti nama suatu berkas, dengan syarat /path harus sama.

cp
Untuk menyalin suatu berkas dari path asal ke path tujuan jalankan perintah cp /path/asal /path/tujuan. Berbeda dengan mv yang akan memusnahkan asalnya, cp akan mempertahankannya sehingga akan dihasilkan dua berkas yang sama.

rm
Berasal dari kata remove, digunakan untuk menghapus suatu berkas dengan perintah rm /nama/berkas, bisa juga digunakan untuk menghapus direktori yang tidak kosong dengan menyertakan opsi -rf.

du
Diambil dari disk usage, digunakan untuk mengestimasi pemakaian ruang disk, data akan ditampilkan per berkas. Jika digunakan tanpa argumen akan menampilkan pemakaian ruang disk pada direktori aktif. Format penulisannya du /path/target. Gunakan opsi -h untuk menampilkan hasil yang lebih mudah dibaca.

df
Disk free, digunakan untuk melihat kapasitas disk yang masih kosong/bebas. Gunakan opsi -h jika ingin hasil yang lebih enak dipandang. clear  Self titled, digunakan untuk membersihkan terminal (layar).

ps
Menampilkan informasi tentang proses yang sedang aktif/berjalan di sistem. Ada banyak opsi yang bisa diberikan pada perintah ini, salau satunya adalah aux yang akan menampilkan seluruh proses dalam sistem.

top
Hampir sama dengan ps hanya saja top akan menampilkan informasi yang selalu up to date dan bersifat dinamis.

cat
Berasal dari kata concatenate, digunakan untuk menampilkan isi dari suatu berkas ke keluaran standar (biasanya layar monitor). Dijalankan dengan mengetikkan cat /nama/berkas.

echo
Biasa digunakan untuk menampilkan string/karakter di layar monitor, namun bisa juga digunakan untuk membuat file dengan memanfaatkan output redirection.

Perintah-perintah di atas hanyalah beberapa diantara perintah yang sangat kompleks yang terdapat di dunia Linux. Begitu pula penjelasan, argumen, dan opsi yang dijelaskan hanyalah sekelumit dari puluhan bahkan sampai ratusan argumen dan opsi untuk setiap perintah. Cara termudah untuk mendapatkan penjelasan tentang suatu perintah adalah membuka halaman manualnya.

Referensi:
http://fauzinge.com/ubuntu/perintah-dasar-di-terminal-linux-1/c_3/

Tuesday, October 21, 2014

INSTALASI DEBIAN - NEW

        Debian merupakan salah satu varian linux yang user friendly. Untuk memasangnya di komputer Anda pun caranya tidak terlalu sulit. Berikut yang harus Anda siapkan untuk memasang Debian. Adapun langkah-langkah yang harus dilakukan dalam melakukan instalasi debian, diantaranya:
* Buat boot Debian di FD atau CD terlebih dahulu, untuk aplikasinya bebas tapi disini saya akan mencontohkan dengan menggunakan rufus.
* Setelah pembuatan bootable siap, selanjutnya siapkan partisi untuk instalasi Debian. Karena saya berniat untuk segala keperluan di Debian (seperti coding, dll), maka untuk Debian saya alokasikan sebesar 80GB. Tapi itu kembali kepada pengguna.
* Silahkan restart komputer dan pastikan FD atau CD sudah kebaca oleh komputer. Dalam proses restart, pastikan komputer anda masuk ke boot FD atau CD yang sudah kita buat. Pilih boot FD atau CD nya.
* Jika berhasil, maka akan muncul tampilan sebagai berikut dimana pada langkah ini, anda hanya perlu memilih install.
* Langkah selanjutnya, anda akan diminta ingin menggunakan bahasa apa. Ya karena saya ingin menggunakan bahasa Inggris, jadi saya pilih English. Tapi itu gimana selera teman-teman aja.
* Setelah memilih bahasa yang ingin digunakan, anda akan ditanyai juga tentang lokasi anda sekarang. Karena saya lupa tinggal di Indonesia, jadi saya memilih United States.
* Setiap komputer kan memiliki keyboard. Nah di langkah ini, anda akan mengatur configurasi keyboard. Seperti yang kita tahu bahwa standard keyboard itu adalah American English, maka pilihlah American English.
* Setelah mengatur konfigurasi keyboard, anda tinggal menunggu sampai tampilan dibawah ini. Pada tampilan ini, anda akan mengatur konfigurasi network. Karena saya kurang begitu paham dengan tahap ini, maka saya memilih yang paling atas aja.
* Jika tiba-tiba muncul failed, pilih continue saja.
* Dalam mengatur metode konfigurasi network, pilih saja Do Not Configure The Network At This Time.
* Dalam hostname, anda bebas saja mau apa tapi jangan sampai lupa. Untuk itu saya membuat hostname nya itu debian, agar tidak lupa.

* Setelah menentukan hostname, sekarang tinggal memasukkan root password. Ini juga dibebaskan sesuai dengan keinginan anda. Tentu saja saya mengeset untuk root password nya disamakan dengan hostname, yaitu debian.
* Selanjutnya masukkan ulang password yang tadi, sebagai verifikasi password.
* Setelah membuat hostname, selanjutnya adalah membuat user. Masukkan nama user anda.
* Masukkan juga nama untuk akunnya.
* Setiap ada username disana juga ada password, masukkan password untuk usermu.
* Masukkan ulang password usernya sebagai verifikasi.
* Hostname dan user sudah kita buat, sekarang mari kita setting untuk jam. Karena saya tadi tinggal di Amerika, ya daerah yang muncul adalah daerah-daerah yang ada di Amerika. Saya pilih aja Pasific. Tapi kalau anda tinggal di Indonesia, pilih saja Jakarta.
* Pada bagian selanjutnya adalah tahap pembagian partisi untuk Debian. Jangan lupa pilih manual agar lebih enak ngatur partisinya.
* Maka muncullah partisi-partisi yang ada di komputer kita. Selanjutnya pilih partisi yang sudah kita buat untuk instalasi Debian.
* Partisi yang pertama kita buat adalah partisi untuk root dulu. Pilih create a new partition.
* Tentukan ukuran untuk root mauya berapa.
* Pilih begining.
* Setelah itu, pastikan bootable flag berstatus on agar booting nya bisa berjalan dan pastikan juga untuk mount point nya adalah /. Kemudian pilih done setting up the partition.
* Selanjutnya adalah membuat partisi untuk home nya. Langkahnya sama seperti dengan sebelumnya, bedanya hanya pada tampilan berikut. Pastikan bootable flagnya off dan mount pointnya adalah /home.
* Selanjutnya membuat partisi untuk user. Sebenarnya partisi ini mau dibuat atau juga tidak apa-apa. Karena saya ingin membuat, ya saya buat. Langkahnya sama saja dengan sebelumnya, bedanya hanya di mount point dan bootable flagnya.
* Yang terakhir adalah membuat partisi untuk swap area. Biasanya untuk ukuran swap area adalah setengah dari ukuran RAM komputer anda. Karena saya lupa, jadi alokasi untuk swap area hanya berukuran sekitar 500MB an. Berikut tampilan untuk partisi swap area.
* Setelah pembuatan partisi selesai, anda tinggal melakukan finish.
* Pilih yes untuk finalisasi pembuatan partisi.
* Kita tinggal menunggu proses saja, jika bosan menunggu silahkan untuk meminum kopi terlebih dahulu. Selanjutnya ada pertanyaan untuk apakah ingin menggunakan network mirror atau tidak. Karena saya kurang paham, maka saya pilih no.
* Pada tampilan ini pilih no saja lah.
* Untuk software yang dibutuhkan, pilih saja semuanya dengan menggunakan spasi untuk memilih. Karena saya butuh semua, maka saya pilih semuanya.
* Apakah ingin install grub boot loader? Ya iyalah pilih yes.
* Tinggal menunggu saja sampai installation complete.
* Dan apa yang terjadi? Debian sudah siap digunakan.
Gampang kan? Demikianlah tutorial instalasi Debian. Jangan takut salah dalam mencoba... Jika ingin mendownloadnya, klik link berikut ini: Instalasi Debian. Terima kasih!

Sunday, October 12, 2014

Pencarian BI-Directional

Bi-Directional A* (BDA*)


Pencarian Bi-Directional

Pencarian dua arah adalah algoritma yang menggunakan dua pencarian yang terjadi pada saat yang sama untuk mencapai tujuan. Pencarian dua arah umumnya tampaknya menjadi pencari grafik karena bukan pencarian melalui pohon besar, satu pencarian dilakukan mundur dari tujuan dan satu pencarian dilakukan ke depan dari awal. Alasan bahwa ini lebih cepat karena pohon-pohon tumbuh secara eksponensial dengan kedalaman mereka dan karena itu dua pohon kecil memiliki area yang lebih kecil dari satu pohon besar. Setelah kedua pencarian telah dilakukan, mereka akan berpotongan di tengah untuk menyelesaikan jalan. Bagian dari pencarian sebelum mereka bertemu disebut fase utama dan setelah persimpangan, hal itu disebut phase. Itu merupakan pengolahan pasca penting untuk dicatat bahwa sebagian besar banyak pencarian dua arah menggunakan heuristik yang berarti bahwa tidak ada cara untuk mengkonfirmasi apakah solusi yang ditemukan adalah solusi yang paling optimal.

Algoritma dari pencarian grafik melewati node dalam grafik secara sistematis sampai solusi optimal ditemukan sedangkan pencarian heuristik hanya akan mengkonfirmasi beberapa jenis solusi dalam waktu singkat. Jalur pencarian dua arah umumnya ditentukan berdasarkan beberapa jenis pencarian lainnya yang meliputi:

1.    Breadth-first: Menambahkan node ke daftar setiap kali memeriksa node tujuan menggunakan struktur pohon sampai tercapai.
2.    Best-first: Akan memilih simpul berikutnya menggunakan skor node (sering merupakan nilai f) yang memperhitungkan biaya dan panjang.
3.    A *: mirip dengan pesawat-pertama, tetapi akan memperhitungkan biaya jalan dari awal ke node tertentu serta biaya dari simpul tersebut ke tujuan.

Contoh Pencarian & Pseudo Kode


Road Map:

Gambar 1: Jalur dari alamat awal dan alamat tujuan terhubung untuk menyelesaikan pencarian.

Yang paling efektif pencarian peta akan dua arah dikombinasikan dengan A *

POSA (x, y, f) dan POSB (x, y, f)

Buat posisi untuk demonstrasi di mana Anda berada pada saat itu di kedua pohon pencarian yang akan memiliki koordinat x, y koordinat dan nilai f untuk menjelaskan biaya jalan.

Startpoint (coordX, coordY)

Mulailah dengan node dimulai dengan pilihan untuk perjalanan lebih lanjut: Juga memiliki daftar koordinat dengan node menunjukkan pilihan gerakan menuju persimpangan tujuan.

Endpoint (coordX, coordY)

Mulailah dengan posisi akhir (node) dengan beberapa pilihan yang mengarah ke sana, juga memiliki daftar koordinat dengan node menunjukkan pilihan gerakan menuju start persimpangan.

jika POSA = POSB (x, y)

Ini berarti persimpangan sehingga pencarian akhir.

else bergerak POSA dari startpoint ke node berikutnya dengan terkecil f-valueA && bergerak POSB dari Endpoint ke node berikutnya dengan terkecil f-valueB sampai dua titik berpotongan

Catatan:
1.    Hijau node menunjukkan jalur yang harus diambil, simpul merah menunjukkan persimpangan berharap.
2.    Garis tebal menunjukkan biaya yang lebih tinggi, garis putus-putus menunjukkan pemisahan antara gerakan POSA dan POSB ini.
3.    f-valueA akan memperhitungkan biaya dari startpoint ke POSA dan biaya dari POSA ke POSB.
4.    f-valueB akan memperhitungkan biaya dari Endpoint ke POSB dan biaya dari POSB ke POSA.

Main problems with bidirectional search


1.    Informasi konrkit mengenai tujuan akhir
2.    Titik temu sulit untuk menjamin ketika ada banyak pilihan
3.    Penyimpanan komputasi

Spesifikasi Model / Solusi untuk Masalah


Meskipun pencarian dua arah tampaknya menjadi salah satu dari pencarian tercepat, ada banyak kasus yang tidak akan praktis. Misalnya, jika Anda mencoba untuk menemukan item yang hilang, tidak akan ada cara untuk memulai pencarian dari tempat Anda berada serta di mana item tersebut karena Anda tidak memiliki informasi lokasinya. Sebuah skenario yang bagaimanapun bisa menggunakan desain pencarian dua arah ditunjukkan dalam contoh di atas jika Anda mencoba untuk mendapatkan dari satu alamat ke lokasi lain yang dikenal.

Des Champeaux (1983) menciptakan algoritma untuk mengatasi masalah persimpangan. Solusinya pada dasarnya melakukan dua depan untuk pencarian depan yang idealnya bertujuan sama lain. Ini heuristik depan dua arah untuk algoritma depan (BHFFA) namun ternyata mengambil terlalu banyak ruang komputasi. Model lain, yang dirancang oleh Politowisky dan Pohl (1984), diciptakan untuk mengatasi masalah yang ditimbulkan oleh Champeaux. Algoritma ini, yang disebut d-Node retargeting, bisa menggunakan ruang kurang komputasi serta menemukan cara yang efektif untuk bertemu di tengah. Menggunakan ide yang disarankan dari model Champeaux ini, Politowisky dan Pohl menggunakan depan untuk desain depan di mana jalur awal node bertujuan node yang paling menjanjikan dari jalur tujuan dan sebaliknya. Sayangnya, lebih banyak masalah dengan membangkitkan algoritma ini karena hanya bisa digunakan untuk heuristik tidak dapat diterima, dan bahkan kemudian, solusinya tidak selalu cukup jelas. Ketika algoritma pencarian dapat diterima, itu berarti bahwa pencarian akan berakhir di cabang dengan biaya terendah.

Ghosh dan Mehanti (1991) kemudian mencoba untuk memecahkan masalah ini dengan saran yang belum depan lain untuk algoritma heuristik depan bi-directional pencarian. Algoritma ini digunakan parameter standar yang mengurangi penyimpanan komputer. Algoritma mereka adalah kombinasi dari luas-pertama dan paling pertama pencarian. 15-puzzle dipilih untuk menguji algoritma mereka. 15-puzzle terdiri dari dewan ubin dengan nomor acak ditempatkan pada mereka dan sistem pencarian harus melalui dan menempatkan ubin dalam rangka. Hasil penelitian menunjukkan bahwa algoritma mereka adalah yang paling sukses dari algoritma yang telah disebutkan sebelumnya ketika menilai kualitas solusi.

Sumber:
http://en.wikibooks.org/wiki/Artificial_Intelligence/Search/Heuristic_search/Bidirectional_Search

Thursday, October 9, 2014

Kunjungan IBM Dalam Rangka Memperkenalkan IBM Bluemix


      Pada hari Kamis, 9 Oktober 2014, Program Studi Ilmu Komputer Universitas Pendidikan Indonesia mendapat kunjungan IBM yang diwakilkan oleh IBM Indonesia. Selain itu juga, ada komunitas Codepolitan yang merupakan komunitas dimana kita bisa belajar ataupun bertanya mengenai berbagai macam pemrograman. Tujuan dari kunjungan IBM adalah ingin mensosialisasikan mengenai layanan terbaru yaitu IBM Bluemix. Pembicaranya adalah Marisa atau panggilan nama akrabnya adalah Icha yang baru bekerja di IBM pada tahun 2012.
      IBM Bluemix merupakan layanan Cloud - Platform as a Service, yang berfungsi sama seperti Google App Engine (Google), Microsoft Azure (Microsoft), Heroku (Salesforce), dan Amazon Web Service (Amazon). Bluemix dapat menjalankan berbagai aplikasi seperti website, mobilebig data, dan smart devices. Bluemix telah ada sejak Februari lalu, dan pada bulan April tahun ini ada update yang masif. IBM menambahkan banyak services (lebih dari 30 services). Engine dari Bluemix sendiri berbasis Cloud Foundry, yaitu open source project untuk membangun layanan Cloud PaAS.
      Marisa menjelaskan Cloud Computing akan menggantikan Convensional Computing karena berbagai faktor, diantaranya mahalnya biaya penyediaan perangkat, yang terdiri dari server, middleware, networking, OS, data, kode, dll. Cloud Computing terdiri dari 3 bagian besar menurut layanan yang diberikan. Yang pertama IaAS yaitu Infrastructure as A Servic, dimana penyedia layanan menyediakan infrastruktur yang kita perlukan untuk membangun sebuah sistem, seperti server, jaringan, dll. Selanjutnya adalah PaAS, yaitu Platform as A Service. Selain menyediakan infrastruktur, PaAS menyediakan juga sistem operasi untuk mendukung pembuatan sistem yang diinginkan. Yang terakhir adalah SaAS yaitu Software as A Service, yaitu layanan yang menyediakan infrastruktur, platform, dan perangkat lunak yang bisa langsung digunakan sesuai kebutuhan.
      Secara default, platform Bluemix dapat menjalankan beberapa runtime seperti Java, Ruby, dan Node Js. Selain runtime, Bluemix juga menyediakan template code, atau biasa disebut dengan Boilerplate. Hal ini tentunya dapat mempercepat proses development atau sekedar hanya ingin mengulik. Bluemix juga menyediakan layanan Mobile Backend as a Service untuk teman-teman developer mobile app. Juga tidak lupa dengan service database yang beragam.