Kodlama teorisi

bilgisayar programlarındaki kodların incelendiği bilimsel alan

Kodlama teorisi, kodların özelliklerinin ve bunların belirli uygulamalar için uygunluğunun incelenmesini sağlayan bir teoridir. Kodlar, veri sıkıştırma, kriptografi, hata algılama ve düzeltme, veri iletimi ve veri depolama için kullanılabilir. Kodlar, verimli ve güvenilir veri aktarım yöntemlerinin tasarlanması amacıyla bilgi teorisi, elektrik mühendisliği, matematik, dilbilim ve bilgisayar bilimi gibi çeşitli bilimsel disiplinler tarafından incelenir. Bu genellikle fazlalığın kaldırılmasını ve iletilen verilerdeki hataların düzeltilmesini veya tespit edilmesini içerir.

Kodlama teorisinde kritik bir ölçü olan Hamming uzaklığının iki boyutlu bir görselleştirmesi

Dört tür kodlama tipi vardır:

Veri sıkıştırma, verileri daha verimli bir şekilde iletmek için veri içinde bulunan fazlalığı bir kaynaktan kaldırmaya çalışır. Örneğin, ZIP veri sıkıştırması, İnternet trafiğini azaltmak gibi amaçlarla veri dosyalarını küçültür. Veri sıkıştırma ve hata düzeltme birlikte incelenebilir.

Hata düzeltme, veri aktarımı sırasında kanalı mevcut bozulmalara karşı daha sağlam hale getirmek için fazladan veri bitleri ekler. Sıradan bir kullanıcı, hata düzeltmeyi kullanan uygulamaların farkında olmayabilir. Tipik bir müzik CD'si, çizikleri ve tozu düzeltmek için Reed-Solomon kodunu kullanır. Bu uygulamada iletim kanalı CD'nin kendisidir. Cep telefonları ise radyo iletiminin zayıflamasını ve gürültüsünü düzeltmek için kodlama teknikleri kullanır. Veri modemleri, telefon aktarımları ve NASA Derin Uzay Ağı, örneğin turbo kodu ve LDPC kodları gibi bitleri almak için kanal kodlama tekniklerini kullanır.

Sinirsel kodlama

değiştir

Sinirsel kodlama, duyusal ve diğer bilgilerin beyindeki nöron ağlarınca nasıl işlendiğini araştıran, sinirbilimle ilgili bir alandır. Sinirsel kodlamayı incelemenin temel amacı, uyaran ile bireysel veya toplu nöronal tepkiler arasındaki ilişkiyi ve topluluktaki nöronların elektriksel aktivitesi arasındaki ilişkiyi karakterize etmektir.[1] Nöronların hem dijital hem de analog bilgiyi kodlayabildiği,[2] nöronların bilgi teorisi prensiplerini takip edip bilgiyi sıkıştırdığı,[3] beyin ve daha geniş sinir sistemi boyunca gönderilen sinyallerdeki hataları tespit edip düzelttiği düşünülmektedir.[4]

Kodlama teorisinin diğer uygulamaları

değiştir

Kodlama teorisinin bir başka amacıda senkronizasyona yardımcı olan kodlar tasarlamaktır. Bir kod, bir faz kaymasının kolayca tespit edilebileceği ve düzeltilebileceği ve aynı kanal üzerinde çok sayıda sinyalin gönderilebileceği şekilde tasarlanabilir. Bazı cep telefonu sistemlerinde kullanılan başka bir kod uygulaması, kod bölmeli çoklu erişimdir (CDMA). Her telefona, diğer telefonların kodlarıyla yaklaşık olarak ilgisiz olan bir kod dizisi atanır. İletim sırasında, kod sözcüğü sesli mesajı temsil eden veri bitlerini modüle etmek için kullanılır. Alıcıda, verileri kurtarmak için bir demodülasyon işlemi gerçekleştirilir. Bu kod sınıfının özellikleri, birçok kullanıcının (farklı kodlarla) aynı radyo kanalını aynı anda kullanmasına izin verir. Alıcıya, diğer kullanıcıların sinyalleri demodülatöre yalnızca düşük seviyeli bir gürültü olarak görünecektir.

Grup testi

değiştir

Grup testi, kodları farklı bir şekilde kullanır. Çok azının belirli bir şekilde farklı olduğu geniş bir öğe grubunu düşünün (örneğin, kusurlu ürünler veya enfekte test denekleri). Grup testinin amacı, mümkün olduğunca az test kullanarak hangi öğelerin "farklı" olduğunu belirlemektir. Sorunun kökeni, İkinci Dünya Savaşı'nda Birleşik Devletler Hava Kuvvetleri'nin askerlerinin frengi için test başlatmasına dayanıyor.[5]

Analog kodlama

değiştir

Bilgi, beyinlerin sinir ağlarında, analog sinyal işlemede ve analog elektroniklerde benzer şekilde kodlanır.[6] Analog kodlamanın yönleri arasında analog hata düzeltme,[7] analog veri sıkıştırma ve analog şifreleme bulunur.[8]

Kaynakça

değiştir
  1. ^ Brown EN, Kass RE, Mitra PP (May 2004). "Multiple neural spike train data analysis: state-of-the-art and future challenges" (PDF). Nature Neuroscience. 7 (5): 456-461. doi:10.1038/nn1228. PMID 15114358. 20 Temmuz 2020 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 13 Aralık 2020. 
  2. ^ Gedeon, T.; Parker, A.E.; Dimitrov, A.G. (Bahar 2002). "Information Distortion and Neural Coding". Canadian Applied Mathematics Quarterly. 10 (1): 10. CiteSeerX 10.1.1.5.6365 $2. 17 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 13 Aralık 2020. 
  3. ^ Thorpe, S.J. (1990). "Spike arrival times: A highly efficient coding scheme for neural networks" (PDF). Eckmiller, R.; Hartmann, G.; Hauske, G. (Ed.). Parallel processing in neural systems and computers (PDF). North-Holland. ss. 91-94. ISBN 978-0-444-88390-2. 27 Mart 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 30 Haziran 2013. 
  4. ^ Stiber, M. (July 2005). "Spike timing precision and neural error correction: local behavior". Neural Computation. 17 (7): 1577-1601. arXiv:q-bio/0501021 $2. doi:10.1162/0899766053723069. PMID 15901408. 
  5. ^ Dorfman, Robert (1943). "The detection of defective members of large populations". Annals of Mathematical Statistics. 14 (4): 436-440. doi:10.1214/aoms/1177731363 . 
  6. ^ Chen, Brian; Wornell, Gregory W. (July 1998). "Analog Error-Correcting Codes Based on Chaotic Dynamical Systems" (PDF). IEEE Transactions on Communications. 46 (7): 881-890. CiteSeerX 10.1.1.30.4093 $2. doi:10.1109/26.701312. 27 Eylül 2001 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 30 Haziran 2013. 
  7. ^ Novak, Franc; Hvala, Bojan; Klavžar, Sandi (1999). "On Analog Signature Analysis". Proceedings of the conference on Design, automation and test in Europe. CiteSeerX 10.1.1.142.5853 $2. ISBN 1-58113-121-6. 
  8. ^ Shujun Li; Chengqing Li; Kwok-Tung Lo; Guanrong Chen (April 2008). "Cryptanalyzing an Encryption Scheme Based on Blind Source Separation" (PDF). IEEE Transactions on Circuits and Systems I. 55 (4): 1055-63. arXiv:cs/0608024 $2. doi:10.1109/TCSI.2008.916540. 28 Mart 2021 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 13 Aralık 2020. 

Bibliyografya

değiştir