Kecerdasan Buatan vs Pemrograman Algoritmik Klasik

Menuju Kecerdasan Buatan dari Pemrograman Algoritmik Klasik

Anthony Quattrone, PhD 30 April 2022

Kemajuan dalam kecerdasan buatan telah memungkinkan masalah komputasi kompleks untuk diselesaikan secara efisien yang sebelumnya sulit, tidak dapat dipecahkan, atau sangat kombinatorial. Masalah ini mencakup pengenalan wajah, deteksi objek, perencanaan rute, dan sistem rekomendasi daring yang sangat dipersonalisasi.

Tantangan bagi organisasi yang bergerak ke masa depan adalah bagi pengambil keputusan strategis untuk memilih antara pendekatan klasik tradisional dan pendekatan kecerdasan buatan untuk memecahkan masalah komputasi yang kompleks. Salah satu metode memiliki tantangan unik dalam memberikan sistem yang kuat di berbagai dimensi akurasi, biaya, kesulitan implementasi, dan kemudahan pemeliharaan.

Pendekatan Pemrograman Algoritmik Klasik untuk Memecahkan Masalah

Paradigma pemrograman klasik melibatkan pemecahan masalah melalui algoritma preskriptif dan memanfaatkan urutan instruksi yang terdefinisi dengan baik. Input didefinisikan dan dibatasi, mengembangkan algoritma untuk memproses input melalui paradigma pemrograman yang ditentukan (Prosedural, Berorientasi Objek, Fungsional, dan Logis) untuk menghasilkan output.

Menemukan algoritma untuk menyelesaikan masalah yang efisien secara temporal dan spasial dikenal sangat menantang. Dalam teori kompleksitas komputasi, masalah dikategorikan sebagai P (Polinomial), NP (Non-deterministik Polinomial), NP-Complete atau NP-Hard. Masalah polinomial dapat diselesaikan dan diverifikasi dengan cepat, sedangkan masalah non-polinomial tidak dapat diselesaikan dengan cepat. Masalah NP sulit diselesaikan melalui pendekatan algoritmik klasik.

Contoh masalah P adalah menemukan jalur terpendek antara dua titik, sedangkan contoh Masalah NP adalah masalah pedagang keliling di mana ketika diberikan serangkaian lokasi, apa jalur optimal untuk mengunjungi semua situs dengan menempuh jarak sesingkat mungkin. Kebetulan banyak masalah yang saat ini harus diselesaikan secara komputasi termasuk dalam kategori NP. Dalam kebanyakan kasus, untuk tujuan praktis, solusi perkiraan sering kali cukup. Dalam menjalani kehidupan sehari-hari, manusia selalu menghasilkan solusi perkiraan, misalnya navigasi.

Ada tantangan implementasi dalam memecahkan masalah di bawah paradigma algoritmik klasik dengan cara yang efisien. Kompleksitas algoritmik adalah cabang ilmu komputer yang berkaitan dengan seberapa efisien algoritma berjalan dalam domain temporal (kompleksitas waktu) dan spasial (kompleksitas ruang).

Meskipun ada banyak cara berbeda untuk mengimplementasikan algoritma, cara yang jelas tetapi berpotensi tidak efisien untuk mengimplementasikan algoritma sering disebut sebagai algoritma "naif". Sebagian besar algoritma yang efisien tidak mudah ditemukan, dan Ilmuwan Komputer telah bekerja selama bertahun-tahun untuk menemukan algoritma terbaik untuk memecahkan kelas masalah. Algoritma dalam sistem produksi diimplementasikan dengan cara yang efisien secara temporal dan spasial. Perusahaan perangkat lunak terbesar memastikan standar algoritmik tertinggi melalui pemrograman sejawat, mirip dengan tinjauan sejawat. Diperlukan bertahun-tahun pelatihan dan tingkat keterampilan tinggi untuk mengimplementasikan algoritma secara efisien.

Dalam pengertian praktis, sementara teknik pemrograman telah berkembang dan bahasa pemrograman (yaitu C, C++, Java, JavaScript, PHP, Python) telah bervariasi dalam popularitasnya, dasar-dasarnya tetap sama sejak Bell Labs, pada tahun 1970-an, menulis modul C pertama. Ada beberapa cara praktis untuk membuat masalah yang menantang secara teoretis bekerja dalam produksi, seperti menggunakan sistem terdistribusi. Pendekatan lanjutan datang dengan biaya yang lebih tinggi dan berada di luar kemampuan semua kecuali organisasi yang paling maju secara teknologi.

Mengingat kompleksitas pendekatan pemrograman algoritmik klasik, organisasi sejak lama merasa sulit untuk membangun tim yang efektif untuk menghasilkan sistem tersebut secara internal. Selanjutnya, banyak juga yang kesulitan menemukan penyedia eksternal untuk menyelesaikan tantangan niche yang secara teoritis mungkin untuk diimplementasikan. Mendesain algoritma tertentu menjadi jauh lebih kompleks seiring dengan meningkatnya kompleksitas masalah. Hal ini terutama berlaku untuk masalah multivariat. Sebaiknya gunakan pendekatan algoritma klasik untuk situasi di mana algoritma dapat dengan cepat menyelesaikan masalah dan bekerja untuk sebagian besar kasus.

Pendekatan AI untuk Memecahkan Masalah

Paradigma Kecerdasan Buatan berupaya memecahkan masalah secara umum dengan memasukkan input dan output yang diinginkan ke dalam sebuah sistem dan membiarkan sistem belajar cara memecahkan masalah. Pendekatan AI saat ini berjalan pada komputer klasik melalui teknik pemrograman klasik. Metode AI yang paling menarik adalah jaringan saraf dan pembelajaran penguatan.

Jaringan saraf buatan memanfaatkan pemahaman manusia tentang bagaimana pikiran manusia belajar dan menggeneralisasi masalah. Pembelajaran penguatan menggunakan agen yang memasukkan kondisi tujuan dan serangkaian skenario. Algoritma pembelajaran mempertahankan hasil yang diinginkan dan membuang hasil yang merugikan selama beberapa iterasi. Pembelajaran penguatan analog dengan pengkondisian operan. Agen belajar bagaimana mencapai tujuan selama banyak iterasi pelatihan.

Persyaratan untuk melatih solusi kecerdasan buatan adalah baik dataset yang luas dan terdefinisi dengan baik, biasanya disusun menggunakan kombinasi berbagai gudang data atau crowdsourcing, atau sebuah sistem dapat belajar mencapai keadaan tujuan dengan menjalankan serangkaian iterasi. Contoh dari ini adalah sistem yang memainkan permainan melawan dirinya sendiri, seperti Catur atau Go, untuk lebih belajar bagaimana mengembangkan strategi untuk meningkatkan hasil. Jaringan buatan dan reinforcement learning keduanya dijalankan pada skenario yang tidak dilatih untuk dan dievaluasi mirip dengan pendekatan machine learning lainnya. Pendekatan ini menggeneralisasi dengan baik dan memberikan solusi yang efisien untuk kelas masalah tertentu. Solusi berbasis Kecerdasan Buatan cocok untuk masalah yang tidak dapat dengan mudah didefinisikan menggunakan urutan instruksi; sebaliknya memerlukan lebih banyak "intuisi" dan penilaian nilai.

Biasanya, sistem Kecerdasan Buatan dilatih menggunakan dataset dan kemudian dievaluasi pada set evaluasi. Semakin banyak data pelatihan berkualitas tinggi yang dimasukkan ke dalam sistem AI, semakin tinggi kemungkinan sistem untuk melakukan dengan standar tinggi. Keuntungan dari pendekatan AI adalah sistem dapat terus meningkat dari waktu ke waktu seiring sistem belajar lebih banyak. Dengan demikian, masalah kompleks dapat digeneralisasi dan diselesaikan oleh sistem komputasi. Ini termasuk masalah yang secara tradisional diselesaikan oleh masukan manusia, meskipun AI yang sempit dapat dilihat sebagai pelengkap masukan manusia yang ada untuk memastikan hasil yang lebih baik.

Kecerdasan Buatan dan Machine Learning telah lama dipandang dengan hati-hati oleh organisasi karena sistem tersebut kurang memiliki keterlacakan dan penentuan bagaimana mereka akan merespons kasus penggunaan. Dengan demikian, AI dapat bertindak dalam keadaan langka dan merespons dengan tidak terduga saat paling tidak diduga. Itulah sebabnya penting untuk memiliki kasus penggunaan yang ditentukan dengan jelas untuk kapan AI akan digunakan, tingkat kesalahan apa yang diterima, dan bagaimana keluaran yang dihasilkan dari sistem AI akan ditinjau oleh masukan manusia untuk memastikan akurasi.

Secara keseluruhan, kami memprediksi bahwa peningkatan akurasi yang akan dibawa oleh sistem AI, ditambah dengan efisiensi yang diperoleh dari pelengkap input manusia, akan memberikan insentif finansial yang terlalu besar untuk diabaikan oleh banyak organisasi dalam beberapa tahun mendatang, sistem AI akan menjadi merata.

Kapan Memilih Kecerdasan Buatan dan Kapan Memilih Pendekatan Pemrograman Algoritma Klasik untuk Menyelesaikan Masalah

Meskipun tidak ada aturan baku kapan menggunakan salah satu pendekatan, sebagai aturan umum, masalah yang memerlukan solusi perkiraan dan melibatkan perencanaan jangka panjang yang berorientasi pada tujuan, pengenalan pola kompleks dan pemrosesan banyak variabel lebih cocok untuk AI. Pendekatan algoritmik klasik lebih cocok untuk solusi yang tepat atau mendekati optimal yang melibatkan logika dan komputasi berat.

Memilih pendekatan yang tepat dapat menghasilkan manfaat signifikan bagi organisasi Anda sementara memilih metode yang kurang optimal dapat menyebabkan kerugian modal yang besar karena proyek teknologi itu mahal. Seringkali memilih sistem yang terbukti dan dapat didemonstrasikan seperti Telemus AI™ dapat membantu organisasi memastikan keberhasilan dalam transformasi digital Kecerdasan Buatan mereka.

Hubungi kami hari ini untuk konsultasi gratis tentang bagaimana Telemus AI™ dapat diintegrasikan ke dalam organisasi Anda.