TUGAS PENDAHULUAN
PRAKTIKUM
TEKNOLOGI INFORMATIKA
IMPLEMENTASI
ALGORITMA DALAM MENCARI LOKASI PARKIR TERBAIK
Disusun Oleh :
1.
Caesar
Hergi (21070114120035)
2.
DindaAyuR. (21070114120015)
3.
MutiaraAfie
A. (21070114120053)
4.
RestyFauzie
A. (21070114120043)
PROGRAM STUDI TEKNIK INDUSTRI
FAKULTAS TEKNIK UNIVERSITAS
DIPONEGORO
SEMARANG
2014
MOTTO
1.
Hidup adalah sebuah
buku. Setiap hari memiliki lembaran baru. Dengan petualangan untuk diceritakan,
hal untuk dipelajari dan talenta untuk diingat. (Life is a book. Everyday has a new page. With adventures to tells,
things to learn and tales to remember).
(Penulis)
2.
Kita tidak dapat
menyelesaikan permasalahan dengan menggunakan cara berpikir yang sama yang kita
gunakan ketika menciptakannya. (We can’t
solve problems by using the same kind of thinking we used when we create them).
(Albert Einstein)
3.
Pengetahuan
tidaklah cukup, kita harus mengamalkannya. Niat tidaklah cukup, kita harus
melakukannya.
(Johann Wolfgang von Goethe)
4.
Menidakmungkinkan
sesuatu berarti menidakmungkinkan Tuhan.
(Penulis)
PERSEMBAHAN
Karya
tulis yang berjudul “Implementasi Algoritma dalam Mencari Lokasi Parkir Terbaik”
ini, penulis persembahkan kepada :
1.
Mama dan Papa
tercinta.
2.
Koordinator
laboratorium Decision Support System
3.
Koordinator asisten
laboatorium Decision Support System
4.
Asisten laboatorium
Decision Support System
5.
Para sahabat yang
penulis kagumi.
6.
Semua orang yang
sedang mencari ilmu.
7.
Keluarga teknik
industri 2014
8.
Pembaca yang
budiman.
KATA PENGANTAR
Alhamdulillah,
puji syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan rahmat
dan karunia-Nya sehingga penulis dapat menyelesaikan makalah yang berjudul
“Implementasi Algoritma dalam Pemrograman” tanpa ada suatu halangan apapun.
Penulis
membuat makalah ini bertujuan untuk mempelajari algoritma dan penerapannya yang
digunakan dalam kehidupan sehari-hari manusia serta untuk menyelesaikan tugas
pendahuluan teknologi informatika yang di ampuh oleh para asisten laboratorium
Decision Suport System. Tak lupa penulis ucapkan terimakasih kepada pihak-pihak
yang telah membantu dalam proses penyelesaian makalah ini sehingga penulis
dapat menyelesaikan tepat pada waktunya.
Dalam
makalah ini membahas mengenai pengertian algoritma dan pemrograman, jenis algoritma,
dan implementasi dari algoritma. Materi tersebut kita ambil dari beberapa
referansi yaitu diantaranya jurnal implementasi algoritma dalam pemrograman.
Namun
dalam pembuatan makalah ini penulis merasa masih banyak yang kurang dari
makalah yang sudah jadi sehingga penulis membutuhkan saran dan kritik yang
sangat membangun, sehingga untuk kedepannya dapat lebih baik dalam pembuatan
makalah.
Semarang,
9 November 2014
Penulis
DAFTAR
ISI
Motto................................................................................................................ ii
Persembahan .................................................................................................... iii
Kata Pengantar
................................................................................................ iv
Daftar Isi .......................................................................................................... v
Bab I
Pendahuluan........................................................................................... 1
1.1 Latar Belakang Masalah..................................................................... 1
1.2 Rumusan Masalah.............................................................................. 1
1.3 Tujuan Penulisan................................................................................ 1
Bab II Pembahasan
.......................................................................................... 2
2.1 Pengertian
Algoritma ...................................................................... 3
2.2 Pengertian
Pemrograman ................................................................. 5
2.3 Flowchart ......................................................................................... 6
2.4 Implementasi
Algoritma....................................................................7
BAB IIIPENUTUP.......................................................................................... 9
3.1 Simpulan............................................................................................
9
3.2 Saran..................................................................................................
9
DAFTAR PUSTAKA...................................................................................... vi
BAB
I
PENDAHULUAN
I.
Latar belakang
Pesatnya
perkembangan teknologi khususnya pada bidang informatika menimbulkan masalah
baru pada umat manusia. Banyaknya masalah yang timbul diantaranya karena
semakin kompleks dan beragamnya
elemen-elemen kehidupan manusia.Manusia mulai dari anak-anak hingga
dewasa pasti mendapatkan masalah dan semakin lama akan semakin kompleks
bentuknya. Dalam konteks ini manusia perlu belajar memecahkannya dengan teknologi yang berkembang begitu
pesat. Pemecahan dari setiap masalah yang timbul dalam bidang teknologi
informatika antara lain mengatasi masalah menggunakan berbagai jenis algoritma
serta penunjang pemrograman.
Algoritma
dan Pemrogaman yang diciptakan manusia tidak hanya berfungsi sebagai pemecah
beberapa masalah yang dihadapi manusia, juga bisa dikembangkan sebagai
penunjang kehidupan manusia. Maka dari
itu, pemahaman serta implementasi dari algoritma dan pemrograman untuk manusia
akan dipaparkan selanjutnya dalam makalah ini.
II.
Rumusan Masalah
1) Bagaimana
penjelasan algoritma dan pemrograman ?
2) Bagaimana
penjelasan dari jenis-jenis algoritma ?
3) Bagaimana
implementasi dari algoritma ?
III.
Tujuan
1) Mempelajari
secara umum mengenai aplikasi dari pembelajaran algoritma dalam pemrograman.
2) Mempelajari
dan mendalami secara khusus mengenai jenis algoritma yang akan digunakan.
3) Membantu
menyelesaikan malasah-masalah yang terjadi dalam kehidupan keseharian manusia
dengan implementasi algoritma
4) Memenuhi
tugas makalah mengenai implementasi algoritma dalam pemrograman.
BAB
II
PEMBAHASAN
2.1
Pengertian Algoritma
Manusia sering menggunakan algoritma untuk
memecahkan masalah dan membantu aktifitas tetapi kebanyakan dari mereka kurang
memahami apa itu Kata algoritma diambil dari kata algorism yang berarti
menghitung dengan arab. Jika algorist berarti orang yang menghitung dengan
arab. Algoritma merupakan langkah-langkah untuk mengambil keputusan dalam menyelesaikan
masalah secara logis dan sistematis dalam bentuk kalimat.Algoritma akan
digunakan untuk menciptakan suatu program melalui sistematika lambang yang
disebut bahasa pemrograman. Intinya program disusun atas bahasa pemrograman
dengan algoritma.
Ada
tiga cara membuat algoritma yaitu dengan menyusun dengan sistematis dan logis
pemecahan masalah, menggabungkan antara kalimat dan potongan dari bahasa
pemrograman atau biasa yang disebut pseucode dan yang ketiga adalah menggunakan
diagram alir.
(Rendi,2013)
1. Jenis
Jenis Algoritma
a. Branch
and Bound
Merupakan metode yang
digunakan untuk mencari solusi optimal dari optimasi masalah dengan pencacahan
sistematis semua solusi kandidat yang memiliki himpunan besar dan calon
himpunan sia-sia dibuang secara massal lewat perkiraan batas atas dan batas
bawah.
b. Dynamic
Programming
Merupakan paradigma
yang digunakan bila suatu masalah memiliki sub struktur yang optimal dengan
beberapa permasalahan yang tumpang tindih. Oleh karena itu, paradigma mencoba membagi permasalahn menjadi sub
permasalahan.
c. Divide
and Conquer
Paradigma ini membagi
masalah dari yang besar menjadi masalah yang lebih kecil secara terus menerus
hingga masalah tersebut menemukan penyelesaian. Dengan kata lain mencari
permasalahan paling kecil untuk memecahkan masalah terbesar.
d. Sistem
flowchart
Paradigma dengan
menggunakan simbol simbol tertentu yang masing masing memiliki makna untuk menyelesaikan
permasalahan yang ada. Berbentuk seperti bagan yang memiliki arus.
e. Pseudo
code
Jenis algoritma yang
ditulis secara bahasa namun bukan bagian dari bahasa yang dimengerti oleh
komputer. Dengan kata lain, Pseudocode merupakan algoritma yang dibuat tanpa
aturan dan diperuntukkan hanya untuk sesama manusia agar lebih mudah dipahami.
f. Greedy
Paradigma yang dibuat
untuk tidak diketahui bagian submasalah dalam setiap tahapnya hingga mirip
denga pemrograman dinamik.
g. Kompresi
Data
Algoritma dengan
pemadatan data agar ruang yang digunakan untuk memperkecil data untuk efisiensi
dalam menyimpannya sehingga pertukaran semakin cepat.
h. Backtracking
Jenis algoritma yang
memiliki cara perbaikan dari pendekatan kekerasan, bersifat solutif dari segala
masalah yang tersedia.
(Alfiandi, 2011)
Algoritma
memiliki ciri-ciri sebagai berikut :
1. Memiliki
awal dan akhir
2. Memiliki
runtutan, isi dan kode yang bisa dipahami oleh manusia
3. Tiap
alurnya memiliki arti yang jelas sehingga tidak menimbulkan pengertian ganda.
4. Memiliki
output dan Input
5. Bentuknya
efektif disesuaikan dengan metode dan jenis yang paling sesuai.
(Awalet and
others, 2013)
Algoritma memiliki struktur :
1. Kepala
algoritma
Memuat nama algoritma serta segala jenis
keterangan yang terdapat dalam algoritma.
2. Bagian
Deklarasi Variabel
Berisi tentang berbaga jenis variabel,
nama proses, nama fungsi yang akan digunakan oleh algoritma
3. Bagian
Deskripsi dan langkah Variabel
Bagian ini berisi tentang
langkah-langkah yang akan digunakan oleh variabel, penjelasan proses dari
algoritma
(Awalet and others, 2013)
2.2
Pengertian Pemrograman
Pemrograman adalah rangkaian yang sistematis yang
dituangkan dalam bahasa pemrograman agar perintah dapat dipahami dan dijalankan
oleh mesin komputer. Sekilas pemrograman dan algoritma hampir sama, perbedaannya
pemrograman sudah dalam bentuk bahasa pemrograman, sedangkan algoritma masih
berupa rangkaian biasa tanpa bahasa pemrograman. Pasti pemrograman dilakukan
untuk membuat program yang memiliki fungsi dan peran yang sesuai keinginan
pembuat.
(Awalet and others, 2013)
Hubungan
antara pemrograman, komputer, algoritma dan bahasa pemrograman
1.
Pemrograman merupakan algoritma yang sudah
ditransformasikan dengan bahasa pemrograman
2.
Bahasa pemrograman berfungsi agar
algoritma mampu dipahami oleh komputer.
3.
Pemrograman akan menjalankan komputer
sesuai intruksi yang dibuat melalui flowchart.
4.
Runtutan instruksi dibuat yaitu
algoritma ditransformasikan oleh bahasa pemrograman menjadi pemrograman yang
selanjutnya instruksi tersebut mampu dipahami dan dikerjakan oleh mesin yang
disebut komputer.
(Awalet and others, 2013)
2.3
Flowchart
Flowchart merupakan prosedur atau langkah-langkah
dalam menyelesaikan masalah berupa grafik dan simbol-simbol tertentu. flowchart
biasa digunakan untuk mempermudah dalam penyelesaian suatu masalah.
Simbol-simbol yang ada dalam flowchart :
Nama
|
Simbol
|
Kegunaan
|
1. Flow
direction symbol
|
|
Simbol
penghubung antara simbol satu dengan simbol lain
|
2. Processing
symbol
|
|
Simbol
pengolahan data pada komputer
|
3. Simbol
decision
|
|
Simbol
untuk pemilihan suatu keputusan ya/tidak
|
4. Simbol
konektor
|
|
Simbol
yang menghubungkan antara lembar yang sama
|
5. Simbol terminal
|
|
Simbol
untuk permulaan dan akhir
|
6. Simbol input-output
|
|
Simbol
untuk menyatakan input output
|
(Rahman,
2012 )
2.4 Implementasi
Algoritma
Banyak penerapan algoritma untuk menyelesaikan suatu
pekerjaan salah satunya yaitu dalam menacri lokasi parkir terbaik. Sering kali
kita menghabiskan waktu hanya unutk mencari parkir. Maka dari itu dibuatlah
program ini untuk mengefisienkan waktu. Dalam menyelesaikan masalah ini kita
dapat menggunakan perpaduan Logika Fuzzy
dan Algoritma Best Fit.
Sebuah lokasi dengan area parkir yanng
banyak memiliki parameter-parameter yang digunakan sebagai pertimbangan
pengambilan keputusan untuk menentukan akan diparkir dimana mobil tersebut. Untuk
itu, digunakanlah Logika Fuzzy untuk mengolah input. Input yang digunakan oleh
Fuzzy berasal dari skala fungsi keanggotaan yang dijadikan sebagai parameter
yaitu parameter panjang jarak antar area dan kepadatan area. Melalui peta diperoleh
jaringan area parkir yang saling terhubung lalu dibuat fungsi keanggotaannya.
Pada suatu lokasi parkir terdapat node
area awal sampai node area akhir dimana masing-masing node terdapat nilai jarak
area dan kepadatan yang dilambangkan dengan huruf.
A. Fungsi
Keanggotaan Jarak Area
Fungsi ini
menggambarkan derajat keanggotaan yang dimiliki oleh jarak area parkir yaitu dekat,
agak dekat, agak jauh dan jauh dan masing-masing memiliki fungsi linear
sendiri-sendiri.
B. Fungsi
Keanggotaan Kepadatan Area
Fungsi ini
menggambarkan derajat keanggotaan yang dimiliki oleh kepadatan area parkir yaitu
longgar, padat dan penuh.
Ada
satu parameter lagi yang digunakan yaitu bobot kendaraan berkenaan dengan
penempatannya dalam suatu lahan parkir. Ada 3 derajat keanggotaan yang
membedakan yaitu ukuran kecil (contoh: jeni sedan dan city car), ukuran sedang
(contoh: jenis minibus), ukuran besar (contoh: bus, truk). Kali ini
digunakanlah Algoritma Best Fit. Alur dari Algoritma Best Fit adalah penempatan
data pada array dimana bobot index array sama dengan bobot data. Jika telah
terisi penuh, maka data akan di masukkan ke dalam array dengan bobot setingkat
lebih besar. Proses ini berulang sampai seluruh array terisi.
Setelah
mendapat variabel dari parameter, muncul rule evaluation. Alurnya sebagai
berikut, pertama mencari nilai terkecil oleh tiap node area. Maka dari itu
digunakanlah operator logika Fuzzy “AND” sebagai operator dalam mengolah nilai
keanggotaan. Sehingga pembacaan rule menjadi “ IF Jarak Area (J) AND Kepadataan
(K) THEN Node Area (O)”. Setelah hasil keluar maka didapatkan node are yang
disarankan. Kemudian dengan algoritma Best Fit, bobot slot dibandingkan dengan
bobot kendaraan yang akan dimasukkan ke dalamnya. Bila jika slot yang seukuran
telah penuh, maka kendaraan akan ditempatkan pada slot yang berada satu tingkat
diatasnya.
BAB
III
PENUTUPAN
3.1
Kesimpulan
Pemrograman
adalah rangkaian yang sistematis yang dituangkan dalam bahasa pemrograman agar
perintah dapat dipahami dan dijalankan oleh mesin komputer untuk menyelesaikan
suatu masalah. Urutan dalam penyelesaian masalah tersebut disebut algoritma.
Maka dari itu algoritma sering digunakan dalam kehidupan nyata. Salah satu
contoh penggunaannya adalah dalam mencari lokasi parkir terbaik, sehingga tidak
membuang waktu hanya untuk mencari lokasi parkir.
3.2
Saran
1. Untuk
memperbaiki sistem, dibutuhkan sistem tambahan yang relevan berupa pendeteksi
penempatan dalam slot.
2. Untuk
penunjang kenyamanan bagi pengguna parkir seperti sistem notifikasi yang baik kepada
pengguna.
3. Untuk
lebih meningkatkan keefisienan, hendaknya sistem ini dibangun secara
client-server agar proses penentuan lokasi bisa berjalan dengan realtime.
DAFTAR
PUSTAKA
0 komentar:
Posting Komentar