Algoritme
Bellah 1985). Teknologi dapat mengancam ekosistem moral tersebut seperi spesies invasif jika ia mengganggu campuran keragaman. Wallach dan Allen (2008) mengklasifikasikan algoritme pembuat-keputusan menjadi tiga tipe evaluatif: Algoritme bottom-up membuat penilaian tidak terprediksi bagi pemrogram (misalnya, perangkat lunak yang berevolusi). Yang lainnya (top-down) dibagi menjadi deontologikal (yang dapat bergantung
pada implementasi aturan pemrograman) lawan consequensialis (yang mengandalkan pada memaksimalkan perkiraan pemrograman). Sebagai contohnya, sebuah kalkulator standar termasuk deontologikal, sementara mesin pembelajaran untuk perdagangan saham termasuk consequensialis.
Santos-Lang mengganti nama deontologikal dan consequensialis menjadi kelas "institusional" dan "negosiator" dengan tujuan untuk menghindari implikasi bahwa semua teori-teori etika deontologikal dan consequensialis bisa diimplementasikan sebagai algoritme, dan membagi kelas bottom-up menjadi "pengganggu" (algoritme yang tidak terprediksi karena menggunakan generator pengacakan) lawan
"relasional" (algoritme yang tidak terprediksi karena efek jaringan). Seorang mutator dalam komputasi evolusioner bisa menjadi contoh dari pengganggu, sementara kelas 3 atau 4 dari otomata sellular adalah contoh dari mesin relasional. Santos-Lang mencatat bahwa algoritme terkadang memiliki subkomponen dari tipe lainnya. Sebagai contohnya, negosiator perdagangan saham bisa
mengimplementasikan sebuah algoritme genetik, dan memiliki mutator pengganggu, dan mutator bisa memiliki subkomponen institusional dan relasional, semua komputasi adalah relasional pada tingkat di jajaran kimiawi (Santos-Lang 2014).
Sebuah algoritme beroperasi pada data yang merepresentasikan kuantitas yang berkelanjutan, walaupun data tersebut direpresentasikan oleh pendekatan diskrit-seperti algoritme yang dipelajari dalam analisis numerik; atau Sebuah algoritme dalam bentuk dari persamaan diferensial yang beroperasi secara berkelanjutan terhadap data, berjalan dalam sebuah komputer analog.
Lihat pula: Paten perangkat lunak untuk pendahuluan umum dari paten pada perangkat lunak, termasuk algoritme untuk diimplementasikan pada komputer.
Algoritme biasanya tidak dipatenkan. Di Amerika Serikat, sebuah klaim yang terdiri hanya dari manipulasi sederhana dari konsep abstrak, angka, atau sinyal tidak berarti suatu "process" (SPTO 2006), dan oleh karena itu algoritme tidak bisa dipatenkan (sebagaimana dalam Gottschalk v. Benson). Namun, penerapan praktis dari algoritme terkadang dipatenkan. Sebagai contohnya, dalam Diamond
v. Diehr, aplikasi dari algoritme umpan-balik sederhana untuk membantu dalam menyembuhkan karet sintetis dianggap dapat dipatenkan. Mematenkan perangkat lunak sangat kontroversial, dan ada paten yang mengikutkan algoritme yang sangat dikritisi, terutama algoritme kompresi data, seperti Format Grafiknya Unisys.
Kata "Algoritme", atau "Algorisma" pada versi penulisan lain, datang dari nama al-Khwarizmi. dieja dalam Arab klasik sebagai Al-Khwarithmi. Al-khwarizmi (Persian: , 780-850) adalah matematikawan, ahli astronomi, ahli geografi dari Persia dan sarjana House of Wisdom di Baghdad, yang arti namanya "penduduk asli Khwarezm", sebuah kota yang merupakan
bagian dari Wilayah Iran pada masanya dan sekarang Uzbekistan. Sekitar tahun 825, dia menulis risalah dalam bahasa Arab, yang diterjemahkan dalam Latin pada abad ke-12 dengan judul Algoritmi de numero Indorum. Judul ini artinya "Algoritmi pada bilangan India", dimana "Algoritmi" adalah pelatinan penerjemah dari nama Al-Khwarizmi. Al-Khwarizmi dulunya adalah
matematikawan yang paling banyak dibaca di Eropa pada akhir Abad Pertengahan, pada umum lewat bukunya yang lain, Aljabar. Pada akhir abad pertengahan, algorismus, perubahan dari namanya, berarti "sistem bilangan desimal" yang masih merupakan arti dari kata Inggris modern algorism. Pada abad ke-17 Prancis kata tersebut berubah, tetapi tidak maknanya, menjadi algorithme. Inggris mengadopsi
Prancis setelahnya, tetapi tidak pada akhir abad ke-19 lah "Algorithm" mengambil makna dari kata Inggris masa sekarang.
Etimologi alternatif mengklaim asal mulanya dari istilah algebra (aljabar) dari makna abad pertengahan "aritmetika Arab" dan arithmos istilah Yunani untuk angka (yang secara harfiah berarti "bilangan Arab" atau "perhitungan Arab"). Karya algoritme Al-Kharizmi bukan berbentuk seperti pada masa modern sekarang tetapi sebagai tipe dari pengulangan kalkulus (disini disebutkan bahwa karya fundamentalnya yang dikenal
sebagai algebra pada awalnya berjudul "Buku Ringkasan tentang Kalkulasi dengan Penyempurnaan dan Pengimbangan" menjelaskan tipe-tipe dari pengulangan perhitungan dan persamaan kuadrat). Dalam makna tersebut, algoritima dikenal di Eropa jauh sebelum Al-Kharizmi. Algoritme paling tua yang dikenal sekarang adalah Algoritme Euklid (lihat juga Pengembangan algoritme Euklid). Sebelum ditemukan istilah
algorithm orang Yunani menyebutnya anthyphairesis secara harfiah berarti anti-substraksi atau substraksi timbal-balik (untuk bacaan lebih lanjut disini dan. Algoritme dikenal oleh orang Yunani berabad sebelum Euclid. Bukannya kata algebra orang Yunani menggunakan istilah arithmetica (, yaitu dalam karya Diophantus yang dikenal "bapak dari Aljabar"- lihat juga artikel Wikipedia persamaan Diophantine dan Eudoxos).
Kata algoritme datang dari nama matematikawan Persia abad ke-9 Abu Abdullah Muhammad ibnu Musa Al-Khwarizmi, yang hasil kerjanya dibangun dari matematikawan India abad ke-7 Brahmagupta. Kata algorisma awalnya mengacu hanya pada aturan-aturan dalam melakukan aritmetika menggunakan bilangan Hindu-Arab namun berkembang lewat penerjemahan Latin Eropa dari nama Al-Khwarizmi menjadi algoritme
pada abad ke-18. Penggunaan kata tersebut berkembang mengikutkan semua prosedur untuk menyelesaikan masalah atau melakukan unit kegiatan.
Penanda-penghitung: Untuk mencatat hewan gembalaan, kumpulan biji dan uang mereka orang dahulu menggunakan penghitung: akumulasi batu atau tanda yang ditoreh pada tongkat, atau membuat simbol diskrit di kerang. Sampai orang Babilonia dan Mesir menggunakan tanda dan simbol, pada akhirnya bilangan Roma dan abakus berkembang (Dilson, p.16-41). Penanda penghitung muncul dalam sistem bilangan operan aritmetika digunakan dalam mesin Turing dan komputasi mesin Post-Turing.
Karya dari Geometer Yunani kuno (algoritme Euklid), matematikawan India Brahmagupta, dan matematikawan Persia Al-Khwarizmi (yang darinya isitlah "algorism" dan "algoritme" diturunkan), dan matematikawan Eropa Barat memuncak dalam notasi Leibniz dari rasiosinator kalkulus (sekitar 1680-an):
Abad yang baik dan setengah lebih maju dari masanya, Leibniz mengajukan logika aljabar, sebuah aljabar yang akan menentukan aturan-aturan untuk memanipulasi konsep logika dengan cara yang aljabar biasa menentukan aturan untuk manipulasi angka.
Jam: Bolter memuji penemuan jam gaya-berat sebagai "Kunci penemuan dari Eropa pada Abad Pertengahan", khususnya pada ambang pelarian yang menyediakan kita dengan tik dan tak dari jam mekanis. "Mesin otomatis yang akurat" mengarah langsung pada "otomata mekanis" dimulai pada abad ke-13 dan terakhir pada "mesin komputasi"-- motor berbeda dan motor analitik dari Charles Babbage dan bangsawan Ada
Lovelace, pertengahan abad ke-19. Lovelace dikreditkan sebagai yang pertama menciptakan algoritme yang ditujukan untuk diproses di komputer-motor analitis Babbage, perangkat pertama yang dianggap komputer Turing-sempurna sebenarnya bukan hanya sebuah kalkulator-dan terkadang dikenal "programmer pertama dalam sejarah", walaupun implementasi penuh dari perangkat Babbage kedua tidak terealisasi sampai beberapa dekade setelah masanya.