## PENCARIAN JALUR TERPENDEK PENGIRIMA N BARANG MENGGUNAKAN ALGORITMA A*  STUDI KASUS KANTOR POS BESAR MEDAN)

## Wahyudinur Alfarisi
Mahasiswa Program Studi Teknik Informatika, STMIK Budidarma Medan Jl. Sisingamangaraja No.338 Simpang Limun Medan www.stmik-budidarma.ac.id // E-mail : wahyudinuralfarisi@ymail.com

## ABSTRAK
Petugas  pengiriman  barang  yang  ada  dikantor  pos  melakukan  pengiriman  barang  dari  kantor  pos pusat  ke  kantor  pos  cabang  yang  ada  di  kota  medan  dengan  melewati  atau  melintasi  jalan  yang  sama, untuk meminimalkan jarak dan tujuan  yang akan dituju maka diperlukan pencarian jalur terpendek dari kantor pos pusat medan ke kantor pos- kantor pos cabang yang ada dikota medan. Pencarian jalur terpendek adalah solusi yang tepat untuk  mengirimkan  barang  ke  Kantor  Pos- Kantor  Pos  cabang yang  ada dikota  medan,  pencarian jalur terpendek adalah yaitu dapat menentukan jalur mana yang paling cepat untuk dilalui atau dilintasi. Algoritma  A*  adalah  salah  satu  metode  yang  bisa  digunakan  untuk  pencarian  jalur  terpendek,  dengan menggunakan metode ini dihararapkan petugas pengiriman barang yang ada dikantor pos pusat medan dapat lebih cepat menemukan jalur mana yang paling singkat dan lebih cepat untuk menemukan goal pada pencarian jalur terpendek pengiriman barang kekantor pos-kantor pos cabang medan dengan menggunakan algoritma A*
Kata Kunci: Petugas Pengiriman Barang, Pencarian Jalur, Kantor Pos, Algoritma A*
1. Pendahuluan
1.1. Latar Belakang Masalah
Pencarian jalur terpendek adalah salah satu solusi yang  tepat  untuk  pengiriman  barang.  Jalur  terpendek yaitu  menemukan  lintasan  terpendek  antara  dua  atau beberapa  lebih  jalur  yang  saling  berhubungan. Persoalan  mencari  lintasan  terpendek  di  dalam  graf merupakan  salah  satu  persoalan  optimasi.  Persoalan ini biasanya direpresentasikan dalam bentuk graf atau pun gambar. Graf atau gambar yang digunakan dalam pencarian  lintasan  terpendek,  yaitu graf yang  setiap sisinya  diberikan  suatu  nilai  atau  bobot.  Bobot  pada sisi graf atau  gambar  dapat  menyatakan  jarak  antar kota.
Pengiriman  barang  adalah  suatu  perusahaan yang segala upaya nya diselenggarakan secara sendiri atau  bersama-sama  dalam  suatu  organisasi  untuk memberikan  pelayanan  jasa  berupa  pengiriman barang.
Algoritma A* ( A - Star ) merupakan salah satu algoritma  teknik  pencarian  terbimbing  (teknik heuristik). Algoritma ini dipelajari untuk menyelesaikan permasalahan yang menggunakan graf atau gambar untuk perluasan ruang statusnya. Dengan kata lain digunakan untuk menyelesaikan permasalahan  yang  bisa  direpresentasikan  dengan graf ,  ada  banyak  algoritma  yang  digunakan  dalam pencarian  jalur  terpendek  salah  satu  nya A* . Algoritma A* menggunakan  estimasi  jarak  terdekat untuk  mencapai  tujuan  ( Goal )  dan  memiliki  nilai heuristik yang digunakan sebagai dasar pertimbangan 1.2. Perumusan Masalah
Dari uraian di atas maka perumusan maslah nya adalah sebagai berikut :
1. Bagaimana  proses  penentuan  jalur  dalam pengiriman barang mengunakan algoritma A*(A- Star) ?
2. Bagaimana  menerapkan  algoritma A* ( A - Star ) untuk pencarian jalur  pengiriman barang?
3. Bagaimana merancang aplikasi untuk menentukan jalur terpendek?
1.3. Batasan Masalah
Adapun  batasan  masalah  dari  sebuah penelitian ini adalah sebagai berikut:
1. Pencarian jalur diperoleh dari Google Earth
2. Penentuan  jalur  yang  menjadi  objek  didalam penelitian  ini  adalah  beberapa  Kantor  Pos  yang ada di kota medan.
3. Penentuan  jarak  antara  titik  awal  ke  titik  tujuan diperorel dari Rule aplikasi Google Earth
4. Penentuan  jalur  yang  dicari  dimulai  dari  Kantor Pos pusat menuju Kantor Pos yang dituju
5. Pegiriman barang menggunakan mobil atau roda 4 (Empat)
6. Penyelesaian  masalah  pencarian  jalur  terpendek menggunakan algoritma A* ( A-Star ).
7. Tools  atau  alat  bantu  yang  digunakan  dalam merancang pencarian jalur terpendek menggunakan Visual  Studio  .  Net  2008 dan Database Microsoft Office Access.
8. Jalur  atau Output yang  dihasilkan  dalam  bentuk gambar dan disertai dengan keterangan- keterangan berupa teks.
9. Tidak menghiraukan jalan rusak dan juga lampu merah yang ada dikota medan
1.4. Tujuan dan Manfaat Penelitian 1.4.1. Tujuan Penelitian
Adapun  tujuan  dari  sebuah  penelitian  ini adalah  sebagai berikut:
1. Dapat  membantu  para  supir  atau  kurir  dalam menentukan  jalur  mana  yang  terpendek  untuk mengantarkan barang nya.
2. Dapat menerapkan algoritma A* dalam menyelesaikan  permasalahan  pencarian  jalur
teroptimal dalam mengirimkan barang.
3. Aplikasi yang dibuat nanti nya diharapkan dapat membantu  supir  dalam  mencari  jalur  terpendek untuk mengirimkan barang.
1.4.2. Manfaat Penelitian
Adapun  manfaat  dari  sebuah  penelitian  ini adalah sebagai berikut:
1. Dapat  membantu  supir  atau  kurir  dalam  proses pengiriman barang yang akan dikirim.
2. Dapat  memahami  Algoritma A* ( A-Star )  dalam permasalahan pencarian jalur terpendek dan juga dapat menghemat biaya, waktu, dan juga tenaga. Aplikasi  yang  dibuat  agar  lebih  mempermudah lagi  supir  atau  kurir  dalam  proses  pengiriman barang.
2.  Landasan Teori
2.1.  Pencarian ( Searching )
Pada  dasarnya  teknik Searching (Pencarian) dapat  dibagi  menjadi  2  (dua)  kelompoh  yaitu: Pencarian  buta  ( Blind  Search )  dan  Pencarian terbimbing  ( Heuristic  Search ).  Untuk  mengukur peforma  mentode  pecarian,  terdapat  empat  criteria yang dapat dilakukan.
1. Completeness : Apakah metode tersebut menjamin  penemuan  solusi  jika  solusinya memang ada?
2. Time  Cmplexity :  Berapa  lama  waktu  yang diperlukan?
3. Space  Complexity :  berapa  banyak  memori  yang diperlukan?
4. Otimality :  Apakah  metode  tersebut  menjain menemukan  solusi  yang  terbaik  jika  terdapat beberapa solusi yang berbeda?
2.2.  Pencarian Heuristik Kata Heuristic berasal  dari  sebuah  kata  kerja bahasa  Yunani, heuriskein, yang  berarti  “Mencari atau  Menemukan”.  Dalam  dunia  pemrograman, sebagian  orang  menggunakan  kata heuristic sebagai lawan  kata  dari  algoritmi,  dimana  kata heuristic ini diartikan  sebagai  suatu  proses  yang  mungkin  dapat menyelesaikan suatu masalah tetapi tidak ada jaminan bahwa  solusi  yang  dicari  selalu  dapat  ditentukan. Didalam  mempelajari  metode-metode  pencarian  ini, kata heuristic diartikan  sebagai  suatu  fungsi  yang memberikan  suatu  nilai  berupa  biaya  perkiraan (estimasi) dari suatu solusi.
Teknik pencarian heuristic ( heuristic searching) merupakan  suatu  strategi  untuk  melalukan proses  pencarian  secara  selektif  dan  dapat  memandu proses  pencarian  yang  memiliki  kemungkinan  sukses paling besar, namun dengan kemungkinan mengorbankan kelengkapan ( completeness ). Untuk menerapkan pencarian heuristik diperlukan  suatu  fungsi  heuristik.  Fungsi  heuristik adalah aturan-aturan yang digunakan untuk mendapatkan solusi yang diinginkan.
2.3. A* (A Bintang) Algoritma ini pertama kali diperkenalkan pada tahun 1968 oleh Peter Hart , Nils Nilsson , dan Bertram Raphael .  Dalam    ilmu  komputer, A *  ( A -star) merupakan  salah  satu  algoritma  pencarian graph terbaik  yang  mampu  menemukan  jalur  dengan  biaya
pengeluaran  paling  sedikit  dari  titik  permulaan  yang diberikan  sampai  ke  titik  tujuan  yang  diharapkan. (Junal  Variasi  Penggunaan  Fungsi  Heuristik  Dalam Pengaplikasian Algoritma A* Mohammad Riftadi)
Algoritma A* merupakan  algoritma Best  Fist Search yang  menggabungkan Uniform  Cost  Search dan Greedy Best-First Search. Biaya yang diperhitungkan didapat dari biaya sebenarnya ditambah  dengan  biaya  perkiraan.  Dalam  notasi matematika dituliskan sebagai:
Dimana: f(n) = Biaya evaluasi g(n) = Biaya yang sudah dikeluarkan dari keadaan awal sampai keadaan n h(n) =  Estimasi  biaya  untuk  sampai  pada  suatu tujuan mulai dari n
Sama  dengan  algoritma  dasar Best  First Search, algoritma A* ini  juga  menggunakan  dua senari OPEN dan CLOSED. Terdapat tiga kondisi bagi setiap  suksesor  yang  dibangkitkan,  yaitu:  sudah berada di OPEN, sudah berada di CLOSED, dan tidak berada  di OPEN maupun CLOSED. Pada  ketiga kondisi  tersebut  diberikan  penganan  yang  berbeda- beda.
Jika susektor sudah pernah berada di OPEN, maka dilakukan pengecekan apakah perlu pengubahan parent atau tidak  tergantung  pada nilai g- nya  melalui parent lama  atau parent baru.  Jika  melalui parent. Baru  memberikan  nilai  g  yang  lebih  kecil,  maka dilakukan  pengubahan parent. Jika  mengubah parent dilakukan,  maka  dilakukann  pula  perbaruan  ( update ) nilai  g  dan  f  pada  susektor  tersebut.  Dengan perbaharuan ini, susektor tersebut memiliki kesempatan  yang  lebih  besar  untuk  terpilih  sebagai simpul terbaik ( best node ).
Jika  susektor  sudah  pernah  berada  di CLOSED, maka  dilakukan  pengecekan  apakah  perlu pengubaha parent atau  tidak.  Jikaya,  maka  dilakukan perbaharuan  nilai g dan f padasusektor  tersebut  serta pada  semua  “anak  cucunya”  yang  sudah  pernah berada  di OPEN. Dengan  perbaharuan  ini,  maka semua  anak  cucunya  tersebut  memiliki  kesempatan lebih besar untuk terpilih sebagai simpul terbaik ( best node ).
Jika susektor tidak berada di OPEN maupun CLOSED, maka  susektor  tersebut  dimasukkan  ke dalam OPEN.
3. Pembahasan
3.1. Sistem Yang Sedang Berjalan
Dalam melakukan  pelayan  pengiriman  barang,
PT. Kantor Pos Inonesia (Persero) medan mengunakan sistem antrian manual:
1. Kantor Pos cabang mengiriman barang kekantor pusat
2. Barang  yang  dikirim  dari  Kantor  Pos  cabang kemudian  sampai  ke  kantor  pusat  yang  ada dimedan
3. Kemudian  Kantor  Pos  pusat  merekapitulasi barang  yang  akan  dikirim  ketujuan nya  masing- masing
f ( n ) =g ( n ) +h ( n )
4. Kemudian  Kantor  Pos  pusat  membuta  tanda bukti pengirim barang yang akan dikirim
5. Barang yang akan dikirim, kemudian dikirimkan ke  tujuan  nya  dan  petugas  pengirim  barang memberikan  barang  dan  juga  menberikan  tanda bukti pengiriman
6. Kentor  Pos  kemudian  melihat  tanda  bukti pengiriman dan kemudian tanda bukti pengiriman  kemudian  diarsibkan  di  Kantor  Pos pusat medan dan juga Kantor Pos cabang
3.2. Analisa dan Logika Algoritma A* Algoritma A* merupakan  penggabungan  dari algoritma Best First Search, Uniform Cost Search dan Greedy  Best-First  Search yang  dibunakan  untuk mencari  lintasan  terpendek  pada  suatu  graf,  sama seperti hal nya best fist searh, uniform cost search dan greedy best-fist searh algoritma A* juga menggunakan fungsi- fungsi hiuristik dan biaya yang diperhitungkan didapat dari biaya sebenar nya ditambah dengan biaya perkiraan lintasan.
Gambar: 1. Peta Kota Medan Keterangan:
1. Titik Koordinat A Kantor Pos Pusat Medan
2. Titik  Koordinat  B  Komplek  Bandar  Selamat Permai
3. Titik Koordinat C Kantor Pos Bakaran Batu
4. Titik Koordinat D Kantor Pos Laksamana
5. Titik Koordinat E Kantor Pos Menteng
6. Titik Koordinat F Kantor Pos SM. Raja Medan
7. Tirik Koordinat G Kantor Pos Alfalah
8. Titik  Koordinat  H  Kantor  Pos  Medan  Baru (Iskandar muda)
9. Titik Koordinat I Kantor Pos Gatot Subroto
10. Titik  Koordinat  J  Kantor  Pos  Tengku  Amir
Hamza
Tabel: 1. Biaya Perkiraan (Jarak Garis Lurus) Dari Masing- Masing Vertex Terhadap Titik Awal A Menuju
Vertex Akhir F N A B C D E F G H I J h ( n ) 2500 2000 1500 1000 2000 0 500 6000 2000 2800

## Langkah ke-1:
Karena  pada  list  OPEN  hanya  terdapat  satu vertex, yaitu A, maka A terpilih sebagai bestnode dan dipindahkan ke list CLOSED, kemudian dibangkitkan semua  suksesor  A,  yaitu:  B,  C,  H,  dan  J.  karena  ke empat  suksesor  tidak  ada  pada  open  maupun  list CLOSED, maka ketiganya dimasukkan ke list OPEN. Langkah pertama ini menghasilkan list OPEN= [B, C, H,dan J] dan CLOSED A Evaluasi : F(B) = g(A)+g(A ke B) + h(B) = 0+4.157 + 2.000 = 6.157 F(C) = g(A) + g(A ke C) + h(C) = 0 + 3.072 + 1500 = 4.572 F(H) = g(A) + g(A ke H) + h(H) = 0 + 3.015 + 6.000 = 9.015 F(J) = g(A) + g(A ke J) + h(J) = 0 + 3.040 + 2800 = 5.840
Gambar: 2. Langkah ke-1

## Langkah ke-2
Selanjut  nya,  C  dengan  jarak  terkecil,  yaitu 4.572 terpilih bestnode dan dipindahkan ke CLOSED. Lalu,  semua  suksesor  C  dibangkitkan,  yaitu:  A,  B, dan D karena A dan B sudah pernah di OPEN maka
A,  B  di  CLOSED  dan  D  belum  pernah  ada  di  list OPEN maupun list CLOSED, maka D dimasukkan ke list  OPEN,  dan  langkah  ke-2  ini  menghasilkan OPEN= [D] dan CLOSED= [A,B,H,J].
Evaluasi: f(D)= g(C) + g(C ke D) + h(D) = 4.572 + 1.538 + 1.000 = 7.110
Gambar: 3. Langkah ke-2

## Langkah ke-3
Selanjutnya  D  dengan  jarak  terkecil,  yaitu 7.110  terpilih  sebagai  bestnode  dan  dipindahkan  ke list  CLOSED.  Lalu,  semua  suksesor  D  dibangkitkan, yaitu: C, E, dan H karena C dan H sudah pernah ada di list OPEN maka C dan H di CLOSED dan E belum pernah  ada  di  list  OPEN maupun  CLOSED, maka E dimasukkan  ke  list  OPEN  dan  langkah  ke-3  ini menghasilkan OPEN= [E] dan CLOSED =[D]
Evaluasi:
f(E)= g(D) + g(D ke E ) + h(E) = 7.110 + 1.921 + 2.000 = 11.031
Gambar: 4. Langkah ke-3

## Langkah ke-4
Selanjutnya  E  dengan  jarak  terkecil,  yaitu 11.031 terpilih  sebagai  bestnode  dan  dipindahkan  ke list  CLOSED.  Lalu,  semua  suksesor  E  dibangkitkan, yaitu: D, F, dan G karena D sudah pernah ada di list OPEN  maka  D  di  CLOSED  dan  F,  dan  G  belum pernah ada di list OPEN maupun CLOSED, maka F, dan G dimasukkan ke list OPEN dan langkah ke-4 ini menghasilkan OPEN= [F, G] dan CLOSED =[E]
Evaluasi: f(F)= g(E) + g(E ke F ) + h(F) = 11.031 + 2.082 + 0 = 13.113 f(G)= g(E) + g(E ke G ) + h(G) = 11.031 + 2.853 + 500 = 14.384
Gambar: 5. Gambar BestNode Pencarian
Selanjutnya,  F  dengan  biaya  terkecil,  yaitu 13.113  terpilih  sebagai BestNode karena BestNode sama dengan Goal , berarti solusi sudah ditemukan.
Rute dan total biaya  bisa ditelusuri balik dari F menuju A karena setiap simpul hanya memiliki satu parent dan  setiap  simpul  memiliki  informasi  biaya sebenar nya (g). Penelusuran balik menghasilkan rute Kantor  Pos  Pusat  Medan  [A] Kantor  Pos  Bakaran Batu  [C],  Kantor  Pos  Laksamana  [D],  Kantor  Pos Menteng  [E],  dan  Kantor  Pos  Alfalah  [F] dengan total jarak sama dengan 13.113 Meter rute ini adalah rute terpendek yang ada di graf tersebut . 5. Algoritma
5.1. Algoritma Function A* (masalah) returns solusi OPEN  S CLOSE  array kosong
Loop samapai goal ditemukan atau sampai tidak ada simpul di dalam OPEN If OPEN = kosong then Gagal else BestNode = simpul yang ada di OPEN dengan f minimal
Pindahkan ke simpul terbalik tersebut dari OPEN ke CLOSED if BesNode = goal then Sukses else Bangkitkan semua suksesor BestNode tapi jangan buat pointer Untuk setiap suksesor kerjakan: Hitung g(suksesor) = g ( BestNode ) + actual cost (dari BestNode ke suksesor) {Periksa suksesor} if suksesor ada di OPEN then {sudah pernah dibangkitkan tapi belum diproses}
OLD = simpul di OPEN yang sama dengan suksesor Bestnode Buat pointer dari OLD ke BestNode Bandingkan nilai g(OLD) dengan g
(suksesor)
if g(OLD) lebih baik then
Ubah parent OLD ke BestNode Ubah nilai g dan f yang ada pada OLD end else If suksesor ada di CLOSED then {sudah pernah dibangkitkan dan sudah diproses}
OLD = simpul di CLOSED yang sama dengan suksesor tersebut Tambahkan OLD sebagai suksesor BestNode Bandingkan nilai g (OLD) dengan g (suksesor)
If g (OLD) lebih baik then
Ubah parent OLD ke BestNode Ubah nilai g dan f yang sudah ada pada OLD Propagasi untuk semua suksesor OLD dengan penelusuran DFS dengan aturan :
Loop sampai simpul suksesor tidak ada di OPEN atau simpul tidak punya suksesor If suksesor ada di OPEN then Propogasi diteruskan else If nilai g via suksesor lebih baik then Propogassi diteruskan
else
Propogasi dihentikan end end end
else {suksesor tidak ada di OPEN maupun CLOSED } Masukkan suksesor ke OPEN Tambahkan suksesor tersebut sebagai suksesor nya BestNode Hitung f = g (suksesor) + h (suksesor)
End,        end,    end, end
4.2. Implementasi
Form  ini  digunakan  sebagai  tampilan  menu utama, yang gambar nya dapat dilihat seperti dibawah ini:
Gambar: 6. Form Menu Utama
Pada form ini digunakan sebagai untuk mencari jalur terpendek, yang gambar nya dapat dilihat seperti dibawah ini:
Gambar: 7 Form Cari Jalur
Pada form ini digunakan sebagai membuat nama jalan/objek baru serta jarak dari objek, yang gambar nya dapat dilihat seperti dibawah ini:
Gambar: 8 Form Jarak dan Tujuan Pada  form  ini  digunakan  untuk  membuat  dan mengubah  koordinat  dari  sebuah  jalur/peta,  yang gambar nya dapat dilihat seperti dibawah ini:
Gambar: 9. Form Koordiat Pada form ini digunakan untuk melihat peta atau lokasi pengiriman, yang gambar nya dapat dilihat seperti dibawah ini:
Gambar: 10  Form Maps. 5. Kesimpulan dan Saran
5.1. Kesimpulan Adapun kesimpulan yang dapat diambil dari hasil penelitian ini adalah sebagai beriku:
1. Menggunakan  algoritma  A*  dalam  pencarian jalur  terpendek  sangat  efisien,  karena  algoritma A*  membandingkan  nilai  dari  awal  sampai ketujuan  dengan  memilih  solusi  terbaik, sehingga dapat meminimalkan waktu dan biaya.
2. Algoritma A* menyelesaikan masalah Pencarian Jalur  Terpendek  Pengiriman  Barang  dengan menghitung  nilai  heuristik,  yaitu  dengan  cara menghitung nilai heuristik  terkecil  dari  masing- masing  simpul  untuk  menentukan goal atau solusi yang telah didapat dari hasil
3. Berdasarkan jumlah node yang sudah diinputkan dengan menggunakan algoritma A* maka dapat menemukan jalur  terpendek untuk dapat dilalui 4. Aplikasi  pencarian  jalur  terpendek    yang dirancang  mengunakan Microsof  Visual  Basic 2008 yang  terdiri  dari  menu  utama,  cari  jalur, jarak  dan  tujuan,  koordinat  jarak,  maps,  about dan  juga dibantu  dengan  perancangan use  case , diagram activity sehinnga  program  pencarian jalur terpendek dapat diselaikan. 5.2. Saran Adapun saran-saran yang akan penulis
sarankan untuk pembaca dalam meningkatkan kinerja dari pencarian jalur terpendek ini adalah sebagai berikut:
1. Untuk dapat memperlihatkan dan membuktikan, kelebihan,  keakuratan  dan  kelemahan  dari algoritma  A*,  maka  perlu  diadakan  sebuah penelitian  lebih  lanjut  dengan  tujuan  untuk membuktikan dan mengetahui seluruh algoritma pencarian  jalur  terpendek  yang  ada  pada berbagai  data  dengan  jumlah  titik  yang  lebih banyak dari saat ini yang penulis teliti.
2. Diharapkan  bagi  pembaca  agar  dapat  mecoba algoritma  lain  dalam  pencarian  jalur  terpendek sehingga  dapat mengetahi  algoritma mana  yang lebih  baik  dalam  proses  pencarian  jalur terpendek
3. Aplikasi yang dirancang masi banyak kekurangan,  sehingga  diharapkan  kepada  para pembaca untuk dapat mengembangkan nya lebih baik  lagi  dengan  menggunakan  fasilitas  seperti menggunakan web , dan juga android
4. Pengembangan  lebih  lanjut  sebaik  nyapenulis mengunakan  fasilitas Google  Maps ,  dan  juga
Google Earth DAFTAR PUSTAKA
1. Mesran,  S.Kom,  M.Kom, “Diklat  Perkuliahan Pemrograman Visual ” 2011
2. M.Fuad,  Cristine  H,  Nurlela,  Sugiarto,  Paulus, Y.E.F, “Pengantar Bisnis”, 2001
3. Nana  Suarna,  S.T. “Pedoman  Panduan Praktikum  Microsoft  Office  2007”, Penerbit
Yrama, Widya Bandung 2009
4. Rosa  A.S,  M.Shalahuddin  2011, “Modul Pembelarajan  Rekayasa  Perangkat  Lunak (Terstruktur dan Berorientasi Objek)” , Penerbit Modula Bandung Mei 2011
5. Suryanto, “Artificial  Intelligence  Searching Reasoning  Planning  Learning” , Penerbit Informatika Jogyakarta Repisi Kedua 2014
6. T.Sutojo,S.Si.,M.Kom,  Edy  Mulyanto,  S.SSi., M.Kom,  Dr.Vincent  Suhartono, “Kecerdasan Buatan” , Penerbit Andi Yogyakarta 2010
7. Tim  Prima  Pena  “ Kamus  Besar  Indonesia ” Penerbit Gitamedia Press
8. Wahana  Komputer “Shortcourse  SQL  Server 2008  Express ”,  Penerbit  Andi  Jl.Mt.Haryono
637 Semarang 2010
9. http://news.palcomtech.com/mengenal-dan- menjalankan-google-maps/