Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang diacu dalam terminologi algoritma. Hampir di semua aktivitas pemrograman pasti tidak akan lepas dengan yang namanya algoritma karena menjadi dasar pijakan yang paling penting dalam membuat suatu program. Tanpa adanya pengetahuan lebih mengenai algoritma pemrograman maka hasil yang diperoleh pasti tidaklah maksimal. Salah satu yang paling penting bagi seorang programmer sebelum membuat program adalah memahami terlebih dahulu logika yang akan dipakai atau biasa disebut algoritma yang akan digunakan. Sebelum membuat program Anda harus mengetahui pengertian dari algoritma pemrograman.
Pengertian algoritma adalah suatu
urutan atau alur yang dipakai dalam perhitungan atau pemecahan masalah secara
sistematis, dan dalam aktivitas pemrograman algoritma seringkali dianggap
sebagai logika dalam penentuan program yang akan dibuat. Pendapat lain
mengatakan definisi algoritma adalah proses atau serangkaian aturan yang harus
diikuti dalam perhitungan atau operasi pemecahan masalah lainnya, terutama oleh
komputer. Dengan kata lain, semua susunan logis yang diurutkan berdasarkan
sistematika tertentu dan digunakan untuk memecahkan suatu masalah dapat disebut
dengan algoritma. Algoritma pemrograman menjelaskan cara melakukan sesuatu, dan
komputer Anda akan melakukannya persis seperti itu setiap saat.
Langkah-langkah di dalam algoritma haruslah logis, ini berarti hasil dari urutan langkah - langkah tersebut harus dapat ditentukan, benar atau salahnya. Pengaruh sebenarnya algoritma pada pemograman yaitu pada letak langkah-langkah sebelum membuat program itu sebelumnya diracik dahulu menjadi sebuah algoritma kemudian programmer mentranslasikan algoritma menjadi sebuah program yang dapat diaplikasikan.
Pentingnya algoritma disini adalah agar
pengerjaan suatu program dapat dilakukan dengan runtut dan rapi. Bisa saja kita
membuat program terlebih dahulu tapi hal tersebut dapat dipastikan, dalam
pengerjaannya, akan tersendat-sendat.Hal itu dikarenakan dalam proses pembuatan
program, seorang programmer akan membayangkan / menghayal bagaimana aplikasi
yang dibuat nantinya, yang kemudian diperparah dengan terjadimya bugs maupun
error karena belum memprediksi kesalahan dan lain-lainnya sebelumnya .Maka dari
itu pembuatan algoritma harus disertai logika yang selaras karena logika dan
algoritma merupakan ilmu atau seni untuk mengurutkan suatu pekerjaan
seurut-urutnya. Pembuat algoritma juga harus dapat mengimajinasikan aplikasi
yang akan dibuat nantinya dan membuat langkah-langkah tersebut dapat dipahami
oleh pembuat program(programmer).Sebelum membuat algoritma, dijadikan dulu
sebuah pemodelan atau rancangan membuat algoritma jadi pemograman disitu
menjadi bagian dari rancangan-rancangan yang sudah diperhitungkan dan diracik
sesempurna mungkin, karena itu semua satu kesatuan dari algoritma dan
pemograman saling berkaitan
Kelebihan
Algoritma:
a. Algoritma
ini hanya melakukan sedikit perhitungan matematis yang berhubungan dengan
masalah yang ingin diselesaikan. Karena sifat perubahan evolusi alamiah, maka
algoritma ini akan mencari penyelesaian tanpa memperhatikan proses-proses yang
berhubungan dengan masalah yang diselesaikan secara langsung. Algoritma ini
juga dapat mengendalikan fungsi objektif dan batasan yang didefinisikan, baik
pada ruang pencarian diskrit atau ruang pencarian analog.
b. Operator-operator
evolusi membuat algoritma ini sangat efektif pada pencarian global.
c. Algoritma
ini memiliki fleksibilitas yang tinggi untuk dihibridkan dengan metode pencarian
lainnya agar lebih efektif.
d. Mampu menangani atribut yang kosong (Missing
Value).
e. Mampu menangani atribut dengan kontinu.
f. Memangkas pohon keputusan untuk mengatasi
overfitting.
g. Cepat
dalam mengambil keputusan.
h. Efisien
dan tidak memerlukan waktu banyak.
i. Sangat
mudah di implementasikan pada beberapa permasalahan yang ada.
Kekurangan
Algoritma:
a. Algoritma hanya dapat digunakan untuk menangani sampel-sampel yang dapat disimpan secara keseluruhan dan pada waktu yang bersamaan di memori.
b. Memiliki hasil akhir yang kurang baik karena tidak memikirkan konsekuensinya.
c. Tidak
dapat memantau parameter.
d. Tidak
ada opsi lain jika persoalan tidak dapat diselesaikan.
e.
Adanya ketidakpastian untuk
menghasilkan solusi optimum global, karena sebagian besar dari algoritma ini
berhubungan dengan bilangan random yang bersifat probabilistik.

Tidak ada komentar:
Posting Komentar