Algoritma, belli bir problemi çözmek veya belirli bir amaca ulaşmak için tasarlanan yol.Matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler kümesidir. Genellikle bilgisayar programlamada kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır. Aynı zamanda algoritma tek bir problemi çözecek davranışın, temel işleri yapan komutların veya deyimlerin adım adım ortaya konulmasıdır ve bu adımların sıralamasına dikkat edilmelidir. Bir problem çözülürken algoritmik ve sezgisel (herustic) olmak üzere iki yaklaşım vardır. Algoritmik yaklaşımda da çözüm için olası yöntemlerden en uygun olan seçilir ve yapılması gerekenler adım adım ortaya konulur. Algoritmayı belirtmek için; metinsel olarak düz ifade ve akış diyagramı olmak üzere 2 yöntem kullanılır. Algoritmalar bir programlama dili vasıtasıyla bilgisayarlar tarafından işletilebilirler.
İlk algoritma, el-Hârizmî tarafından "Hisab el-cebir ve el-mukabala" kitabında sunulmuştur. Algoritma sözcüğü de el-Hârizmî'nin isminin Avrupalılarca telaffuzundan doğmuştur.
Tarihi
Algoritma sözcüğü, Özbekistan'ın Harezm, bugünkü Türkmenistan'ın Hive kentinde doğmuş olan Ebu Abdullah Muhammed İbn Musa el Harezmi'den gelir. Bu alim 9. yüzyılda cebir alanındaki algoritmik çalışmalarını kitaba dökerek matematiğe çok büyük bir katkı sağlamıştır. "Hisab el-cebir ve el-mukabala (حساب الجبر و المقابلة)" kitabı dünyanın ilk cebir kitabı ve aynı zamanda ilk algoritma koleksiyonunu oluşturur. Latince çevirisi Avrupa'da çok ilgi görür. Alimin ismini telaffuz edemeyen Avrupalılar "algorizm" sözcüğünü "Arap sayıları kullanarak aritmetik problemler çözme kuralları" manasında kullanırlar. Bu sözcük daha sonra "algoritma"ya dönüşür ve genel kapsamda kullanılır.
Uygulama
Çoğu algoritmalar bilgisayar olarak uygulanmak üzere tasarlanmıştır. Bununla birlikte, başka yöntemlerle de uygulanmaktadır, biyolojik sinir ağı (örneğin insan beyninin hesap yapması veya bir böceğin yemek araması), elektrik devresi veya mekanik cihazlar gibi.
Bilgisayar algoritmasına örnek verelim. Kullanıcının girdiği dört sayının ortalamasını görüntüleyen algoritmayı yazalım:
A0 --> Başla A1 --> Sayaç=0 (Sayaç'ın ilk sayısı 0 olarak başlar.) A2 --> Sayı=? : T=T+Sayı (Sayıyı giriniz. T'ye sayıyı ekle ve T'yi göster.) A3 --> Sayaç=Sayaç+1 (Sayaç'a 1 ekle ve sayacı göster.) A4 --> Sayaç<4 ise A2'ye git. (Eğer sayaç 4'ten küçükse Adım 2'ye git.) A5 --> O=T/4 (Ortalama için T değerini 4'e böl) A6 --> O'yu göster. (Ortalamayı göster.) A7 --> Dur
İkinci dereceden ax² + bx + c = 0 biçiminde bir denklemin tüm köklerini bulmak için algoritma yazalım:
Adım 1: Başla. Adım 2: a, b, c, D, x1, x2, rp ve ip değişkenlerini tanımla. Adım 3: Diskriminant değerini hesapla. D ← b2-4ac Adım 4: Eğer D≥0 x1 ← (-b+√D) / 2a x2 ← (-b-√D) / 2a değerlerini hesapla ve x1,x2 değişkenleri göster. Eğer D≥0 değilse, Gerçek kısım(rp) ve sanal kısmını(ip) hesapla. rp ← b / 2a ip ← √ (D) / 2a Adım 5: "rp + j(ip)" ve "rp - j(ip)" değerlerini göster. Adım 6: Dur.
Kullanıcı tarafından girilen bir sayının faktöriyel değerini bulmak için bir algoritma yazalım:
Adım 1: Başla. Adım 2: factorial,i ve n değişkenlerini tanımla. Adım 3: Değişkenlerin başlangıç değerlerini tanımla. factorial ← 1 i ← 1 Adım 4: Ekrandan girilen n değerini oku. Adım 5: (i=n) eşitliği sağlanana kadar tekrarla. 5.1: factorial←factorial*i 5.2: i←i+1 Adım 6: factorial değişkeninin değerini göster. Adım 7: Dur.
Hukuki Konular
Algoritmalar, tek başlarına, genellikle patent verilebilir değildirler. Amerika Birleşik Devletleri'nde soyut kavramların, sayıların ve işaretlerin yalnızca basit yönlendirmelerinden oluşan bir iddia "süreç" oluşturmaz (USPTO 2006) ve bundan dolayı algoritmalar patent verilebilir değildir (Gottschalk v.Benson'da olduğu gibi). Bununla birlikte, algoritmanın pratik uygulamaları zaman zaman patent verilebilirdir. Örneğin, Diamond v.Diehr'da, sentetik kauçuğun muhafaza edilmesine yardımcı olmak için kullanılan basit geri bildirim algoritmasının uygulaması patent verilebilir sayılmıştır. Yazılım patenti son derece tartışmalıdır ve algoritmaları içeren birçok eleştirilmiş patent vardır, özellikle veri sıkıştırma algoritmaları, Unisys' LZW patentinde olduğu gibi.
Ek olarak, bazı kriptografik algoritmaların ihracat kısıtlamaları vardır.
1950'den Sonraki Tarihi
Faaliyetlerin birçoğu algoritmanın tanımının geliştirilmesine yönlendirilmiştir ve aktifliği çevredeki sorunlar nedeniyle, özellikle matematiğin temelleri (özellikle Church-Turing tezi) ve akıl felsefesi (özellikle yapay zeka konusundaki tartışmalar) sebebiyle devam etmiştir.
Algoritmalara eleştirel yaklaşımlar
Algoritmaların kullanımı hayatın her alanında giderek yaygınlaşmaktadır. İş yerlerindeki performans değerlendirmelerinden bankaların kime kredi vereceğine, güvenlik sistemlerinden sosyal medya platformlarındaki önerilere kadar hayatın her alanında etkili olan algoritmalara özellikle de sosyal bilimci akademisyenler çeşitli eleştiriler yöneltmektedir. Algoritmaların teknolojik etkilerinin yanı sıra toplumsal bir güce de sahip oldukları, toplumsal gruplar arasındaki eşitsizlikleri derinleştirdikleri, yeni güç dengeleri oluşturdukları ve farklı otoriteler tarafından toplumun belli kesimlerini baskılamak için kullanıldıklarının altı çizilmektedir.
Önemli algoritma türleri
Ayrıca bakınız
Kaynakça
- ^ "The Definitive Glossary of Higher Mathematical Jargon — Algorithm". Math Vault (İngilizce). 1 Ağustos 2019. 7 Şubat 2020 tarihinde kaynağından . Erişim tarihi: 14 Kasım 2019.
- ^ "Definition of ALGORITHM". Merriam-Webster Online Dictionary (İngilizce). 14 Şubat 2020 tarihinde kaynağından . Erişim tarihi: 14 Kasım 2019.
- ^ "Al-Khwarizmi - Islamic Mathematics". The Story of Mathematics. 25 Temmuz 2019 tarihinde kaynağından . Erişim tarihi: 14 Kasım 2019.
- ^ "Al-Khwarizmi biography". www-history.mcs.st-andrews.ac.uk. 2 Ağustos 2019 tarihinde kaynağından . Erişim tarihi: 27 Şubat 2020.
- ^ "Etymology of algorithm". Chambers Dictionary. 31 Mart 2019 tarihinde kaynağından . Erişim tarihi: 13 Aralık 2016.
- ^ Beer, David (2 Ocak 2017). "The social power of algorithms". Information, Communication & Society. 20 (1): 1-13. doi:10.1080/1369118X.2016.1216147. ISSN 1369-118X.
- ^ author., Eubanks, Virginia, 1972-. Automating inequality : how high-tech tools profile, police, and punish the poor. ISBN . OCLC 1050280177.
- ^ Masso, Anu; Kasapoglu, Tayfun (2 Temmuz 2020). "Understanding power positions in a new digital landscape: perceptions of Syrian refugees and data experts on relocation algorithm". Information, Communication & Society. 23 (8): 1203-1219. doi:10.1080/1369118X.2020.1739731. ISSN 1369-118X.
- ^ author., Noble,. Algorithms of Oppression. ISBN . OCLC 1124443189.
' hakkında daha fazla bilgi edinin | |
Vikisözlük'te tanımlar | |
Commons'ta dosyalar | |
Vikikitap'ta kitaplar |
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Algoritma belli bir problemi cozmek veya belirli bir amaca ulasmak icin tasarlanan yol Matematikte ve bilgisayar biliminde bir isi yapmak icin tanimlanan bir baslangic durumundan basladiginda acikca belirlenmis bir son durumunda sonlanan sonlu islemler kumesidir Genellikle bilgisayar programlamada kullanilir ve tum programlama dillerinin temeli algoritmaya dayanir Ayni zamanda algoritma tek bir problemi cozecek davranisin temel isleri yapan komutlarin veya deyimlerin adim adim ortaya konulmasidir ve bu adimlarin siralamasina dikkat edilmelidir Bir problem cozulurken algoritmik ve sezgisel herustic olmak uzere iki yaklasim vardir Algoritmik yaklasimda da cozum icin olasi yontemlerden en uygun olan secilir ve yapilmasi gerekenler adim adim ortaya konulur Algoritmayi belirtmek icin metinsel olarak duz ifade ve akis diyagrami olmak uzere 2 yontem kullanilir Algoritmalar bir programlama dili vasitasiyla bilgisayarlar tarafindan isletilebilirler Algoritmalari daha kolay anlatabilmek icin akis semalari kullanilir Ilk algoritma el Harizmi tarafindan Hisab el cebir ve el mukabala kitabinda sunulmustur Algoritma sozcugu de el Harizmi nin isminin Avrupalilarca telaffuzundan dogmustur TarihiAlgoritma sozcugu Ebu Abdullah Muhammed bin Musa el Harezmi nin Latince isminden kaynaklanir Algoritma sozcugu Ozbekistan in Harezm bugunku Turkmenistan in Hive kentinde dogmus olan Ebu Abdullah Muhammed Ibn Musa el Harezmi den gelir Bu alim 9 yuzyilda cebir alanindaki algoritmik calismalarini kitaba dokerek matematige cok buyuk bir katki saglamistir Hisab el cebir ve el mukabala حساب الجبر و المقابلة kitabi dunyanin ilk cebir kitabi ve ayni zamanda ilk algoritma koleksiyonunu olusturur Latince cevirisi Avrupa da cok ilgi gorur Alimin ismini telaffuz edemeyen Avrupalilar algorizm sozcugunu Arap sayilari kullanarak aritmetik problemler cozme kurallari manasinda kullanirlar Bu sozcuk daha sonra algoritma ya donusur ve genel kapsamda kullanilir UygulamaCogu algoritmalar bilgisayar olarak uygulanmak uzere tasarlanmistir Bununla birlikte baska yontemlerle de uygulanmaktadir biyolojik sinir agi ornegin insan beyninin hesap yapmasi veya bir bocegin yemek aramasi elektrik devresi veya mekanik cihazlar gibi Bilgisayar algoritmasina ornek verelim Kullanicinin girdigi dort sayinin ortalamasini goruntuleyen algoritmayi yazalim A0 gt Basla A1 gt Sayac 0 Sayac in ilk sayisi 0 olarak baslar A2 gt Sayi T T Sayi Sayiyi giriniz T ye sayiyi ekle ve T yi goster A3 gt Sayac Sayac 1 Sayac a 1 ekle ve sayaci goster A4 gt Sayac lt 4 ise A2 ye git Eger sayac 4 ten kucukse Adim 2 ye git A5 gt O T 4 Ortalama icin T degerini 4 e bol A6 gt O yu goster Ortalamayi goster A7 gt Dur Quicksort siralama algoritmasi animasyonu Animasyonun basinda kirmizi cubuklarin pivot elemani olarak isaretlendigi gorulmektedir Ornegin basinda sag tarafin en uzak elemani pivot olarak secilmistir Bu secilen pivot degerleri parcalara ayrilmis degerler kumesinin elemanlariyla karsilastirilip siralama saglanmaktadir Ozetle siralanacak bir sayi dizisini daha kucuk parcalara ayirip olusan bu kucuk parcalarin kendi icinde siralanmasi ve birlestirilmesi mantigiyla calisir Ikinci dereceden ax bx c 0 biciminde bir denklemin tum koklerini bulmak icin algoritma yazalim Adim 1 Basla Adim 2 a b c D x1 x2 rp ve ip degiskenlerini tanimla Adim 3 Diskriminant degerini hesapla D b2 4ac Adim 4 Eger D 0 x1 b D 2a x2 b D 2a degerlerini hesapla ve x1 x2 degiskenleri goster Eger D 0 degilse Gercek kisim rp ve sanal kismini ip hesapla rp b 2a ip D 2a Adim 5 rp j ip ve rp j ip degerlerini goster Adim 6 Dur Kullanici tarafindan girilen bir sayinin faktoriyel degerini bulmak icin bir algoritma yazalim Adim 1 Basla Adim 2 factorial i ve n degiskenlerini tanimla Adim 3 Degiskenlerin baslangic degerlerini tanimla factorial 1 i 1 Adim 4 Ekrandan girilen n degerini oku Adim 5 i n esitligi saglanana kadar tekrarla 5 1 factorial factorial i 5 2 i i 1 Adim 6 factorial degiskeninin degerini goster Adim 7 Dur Hukuki KonularAlgoritmalar tek baslarina genellikle patent verilebilir degildirler Amerika Birlesik Devletleri nde soyut kavramlarin sayilarin ve isaretlerin yalnizca basit yonlendirmelerinden olusan bir iddia surec olusturmaz USPTO 2006 ve bundan dolayi algoritmalar patent verilebilir degildir Gottschalk v Benson da oldugu gibi Bununla birlikte algoritmanin pratik uygulamalari zaman zaman patent verilebilirdir Ornegin Diamond v Diehr da sentetik kaucugun muhafaza edilmesine yardimci olmak icin kullanilan basit geri bildirim algoritmasinin uygulamasi patent verilebilir sayilmistir Yazilim patenti son derece tartismalidir ve algoritmalari iceren bircok elestirilmis patent vardir ozellikle veri sikistirma algoritmalari Unisys LZW patentinde oldugu gibi Ek olarak bazi kriptografik algoritmalarin ihracat kisitlamalari vardir 1950 den Sonraki TarihiFaaliyetlerin bircogu algoritmanin taniminin gelistirilmesine yonlendirilmistir ve aktifligi cevredeki sorunlar nedeniyle ozellikle matematigin temelleri ozellikle Church Turing tezi ve akil felsefesi ozellikle yapay zeka konusundaki tartismalar sebebiyle devam etmistir Algoritmalara elestirel yaklasimlarAlgoritmalarin kullanimi hayatin her alaninda giderek yayginlasmaktadir Is yerlerindeki performans degerlendirmelerinden bankalarin kime kredi verecegine guvenlik sistemlerinden sosyal medya platformlarindaki onerilere kadar hayatin her alaninda etkili olan algoritmalara ozellikle de sosyal bilimci akademisyenler cesitli elestiriler yoneltmektedir Algoritmalarin teknolojik etkilerinin yani sira toplumsal bir guce de sahip olduklari toplumsal gruplar arasindaki esitsizlikleri derinlestirdikleri yeni guc dengeleri olusturduklari ve farkli otoriteler tarafindan toplumun belli kesimlerini baskilamak icin kullanildiklarinin alti cizilmektedir Onemli algoritma turleriArama algoritmalari Evrimsel algoritmalar Genetik algoritmalar veya kriptografik algoritmalar Kok bulma algoritmalari Siralama algoritmalariAyrica bakinizAlgoritmalar listesi Algoritmalarin tarihsel siralamasi AlgokrasiKaynakca The Definitive Glossary of Higher Mathematical Jargon Algorithm Math Vault Ingilizce 1 Agustos 2019 7 Subat 2020 tarihinde kaynagindan Erisim tarihi 14 Kasim 2019 Definition of ALGORITHM Merriam Webster Online Dictionary Ingilizce 14 Subat 2020 tarihinde kaynagindan Erisim tarihi 14 Kasim 2019 Al Khwarizmi Islamic Mathematics The Story of Mathematics 25 Temmuz 2019 tarihinde kaynagindan Erisim tarihi 14 Kasim 2019 Al Khwarizmi biography www history mcs st andrews ac uk 2 Agustos 2019 tarihinde kaynagindan Erisim tarihi 27 Subat 2020 Etymology of algorithm Chambers Dictionary 31 Mart 2019 tarihinde kaynagindan Erisim tarihi 13 Aralik 2016 Beer David 2 Ocak 2017 The social power of algorithms Information Communication amp Society 20 1 1 13 doi 10 1080 1369118X 2016 1216147 ISSN 1369 118X author Eubanks Virginia 1972 Automating inequality how high tech tools profile police and punish the poor ISBN 1 250 21578 1 OCLC 1050280177 Masso Anu Kasapoglu Tayfun 2 Temmuz 2020 Understanding power positions in a new digital landscape perceptions of Syrian refugees and data experts on relocation algorithm Information Communication amp Society 23 8 1203 1219 doi 10 1080 1369118X 2020 1739731 ISSN 1369 118X author Noble Algorithms of Oppression ISBN 978 1 4798 6676 2 OCLC 1124443189 Vikipedi nin kardes projelerinden hakkinda daha fazla bilgi edininVikisozluk te tanimlarCommons ta dosyalarVikikitap ta kitaplar