Bayram dönüşü okulların açıldığı ve hemen hemen tüm evleri tatlı bir telaşın aldığı bu ay da, okurlarımızın bilgisayar dünyasındaki yolculuklarında farklı gezegenleri ziyaret etmesi amacıyla yeniden birlikteyiz. Konuma başlamadan önce dergimizi takip eden herkese teşekkür etmek istiyorum, günden güne artan takdir iletileriniz bergi ekibimizdeki herkesi çok mutlu ediyor. Böylece her sayımızda daha çok özeniyoruz, daha okurlarımıza layık bir dergi çıkarmak için elimizden geleni yapıyoruz. Teşekkür ederiz :)
Gelelim bu ay bilgisayar bilimi köşemizden paylaşacağımız konunun tanımına. Bu hafta sinyallerle uğraşacağız. Hem elektronikçilerin hem de bilgisayarcıların ilgi alanına giren bu konunun güncel hayatta da birçok uygulamasıyla hayatımız kolaylaşmakta. Telekomünikasyondan, biyomedikale; görüntü işlemeden, robotiğe aklınıza gelen çoğu bilgisayar bilimi dalı aslında sinyal ve sistemler altyapısına sahip. Bu yüzden bu ay dergimizin ufkunu biraz daha geliştirmek amacıyla bu konuyu seçtik. Dilerseniz sinyalin tanımıyla yazımıza başlayalım, ancak ondan önce kısaca sinyal işlemenin içerdiği ana başlıklara şöyle bir göz atalım.
- Doğrusal sinyaller ve sistemler ve dönüştürme teorisi
- Olasılık ve belirsiz işlemler
- Programlama
- Kalkülüs ve analiz
- Vektör uzayları ve doğrusal cebir
- Numerik metodlar
- Fonksiyonel analiz
- Eniyileştirme
- İstatistiksel karar verme teorisi
Sinyal Nedir?
Herhanbir spesifik bir uygulama alanına yönelmeden, sinyal dendiğinde aklınıza ilk olarak ne geliyor? Mesela taşıtların sinyallerini ele alalım. Bir aracın bir tarafa döneceği bilgisini taşıyan, yanıp sönen küçük ışıklar günlük hayatımızda belki de en çok yer alan sinyaller. Veya radyo sinyalleri, herhalde bir radyo istasyonunun yayınını diğer istasyonlarla karışmadan dinlemenizi sağlayan dalgalar canlanıyor gözünüzde. Aslında sinyalin tanımı çok da farklı değil, bilgi taşıyan her şeye sinyal diyebiliriz.
Bizim değineceğimiz sinyaller fonksiyonlarla ifade edilecek ve matematiksel anlamı olan sinyaller; ama ilk örneğimizdeki araba sinyalini bile fonksiyonla gösterebiliriz. Saniyede bir yanan ve sağ ya da sola dönme durumuna göre 1 veya -1 alan bir fonksiyon araba sinyali fonksiyonumuz olabilir. Bu elektriksel sinyalin yanı sıra, akustik sinyaller (konuşma, müzik), biyolojik sinyaller (gendeki baz serileri) gibi örnekler de verebiliriz. Her fonksiyon gibi sinyalleri de tanımlayan 4 ana unsur vardır: fonksiyonun ismi, fonksiyonun tanım kümesi, fonksiyonun değer kümesi ve değer kümesinden tanım kümesine bir eşleme.
Sinyal türlerine gelirsek, sürekli (continuous) ve ayrık (discrete) olarak ikiye ayrılıyor. Sürekli sinyaller tanım kümesinde sayı doğrusundaki tüm değerleri içerirken, ayrık sinyaller sadece tam sayı değerlerini içermektedir. Sinyalimizin adına x dersek, x(t) t serbest değişkenine bağlı bir sürekli fonksiyonu gösterirken, x[n] ise n serbest değişkenine bağlı bir ayrık fonksiyonu göstermektedir. Daha iyi anlaşılması için, akım, basınç, ısı gibi sürekli değerlerin fonksiyonlarını sürekli sinyal örneği olarak inceleyebiliriz. Günlük ortalama ısı değeri, nesil bazlı nüfus grafiği, dijital resimler gibi kesikli fonksiyonları da ayrık sinyal grafiği olarak örnek verebiliriz. Peki bu sinyalleri nasıl kullanacağız, etkileşimini ve yararlı hale gelmesini nasıl sağlayacağız?
Sistemler
Öte yandan, sistemler ise sinyallerin dönüştürülmesinde kullanılır. Fonksiyonlarla, faz makineleriyle, diferansiyel denklermlerle gösterilebilirler. Sistemleri genel olarak bir girdi sinyali alıp onu başka bir çıktı sinyaline dönüştüren kutular olarak düşünebiliriz. Hesaplama, iletişim, kontrol veya saklama amaçlı bu dönüşümler de sinyallerin işe yaramasını sağlamaktadır. Sistemlere örnek olarak RLC devrelerini, kenar bulma algoritmalarını ve bunlara benzer envayi çeşit sistemi verebiliriz.
Sistemin bir girdi sinyaline verdiği tepkiyi değiştirmek için alt sistemler birleşerek daha kompleks sistemler oluşturabilirler. Bu birleşimlerin üç çeşidi olabilir:
- Kademeli: Sistemleri seri olarak birleştirdiğimizde, girdi sinyal önce ilk sistemden geçer. Daha sonra sistem cevabı ikinci sistemin girdi sinyali olarak işlemden geçer.
- Paralel: Sistemleri paralel bağladığımızda, aynı girdi sinyali her iki sistemden birden geçer ve iki altsistem cevabı toplanarak sistem tepkisi bulunur.
- Geri Besleme: İlk girdi sinyali ile son sistem tepkisi toplanarak birinci sisteme gönderilir, ilik sistemin cevabı ikinci sistemden geçtikten sonra tekrar ilk sinyal ile toplanıp yoluna devam eder. Fakat sistemin son cevabı ilk sistemin cevabı olarak alınır.
Sistem Özellikleri
Bir sistemin özellikleri o sistemin davranışları açısından bize önemli bilgiler verir. Böylece sistemleri daha iyi anlayabilir ve analiz edebiliriz. Bu özellikler;
Belleksizlik (Memoriless) Bir sistemin bir andaki davranışları sadece o an ile ilişkili olmalıdır, gelecekteki veya geçmişteki değerlere bağlı ise o sistem belleksiz değildir. Belleksiz sistemlere örnek olarak şunları verebiliriz:
y[n]=e<sup>x[n]</sup> y(t)=3x(t)-4
Nedensellik (Causality) Bir sistemin bir andaki değerleri sadece o andaki ve geçmişteki değerlerine bağlıysa bu sinyal nedensel bir sinyaldir. Tüm gerçek zamanlı fiziksel sistemler nedenseldir; çünkü zaman sadece ileriye akar. Nedensel sinyallere örnek olarak şunları verebiliriz:
y[n]=2<sup>3n</sup>x[n-1] y(t)=x(t-3)-x(t)/3
Doğrusallık (Linearity) Bir sistemin iki farklı girdi sinyalinin toplamı verildiğinde alınan sistem tepkilsinin, sinyallerin ayrı ayrı sisteme verildikten sonra alınan sistem tepkilerinin toplamına eşit olması halinde bu sistem doğrusaldır. Matematiksel ifade etmek istersek:
ax1(t)+bx2(t)->ay1(t)+by2(t)
doğrusal bir sistemi temsil eden ifadedir. Çevremizde gördüğümüz çoğu sinyal doğrusal değildir. Doğrusal bir sinyal olarak şu durumu düşünebiliriz:
y(t)=x(2t)
Zamandan Bağımsızlık (Time Invariant) Bir sistemin zamandan bağımsız olabilmesi için davranışı zamanın ne olduğuna bağlı olmamalıdır. Yani girdi sinyalinde yaptığımız tüm kaydırma işlemleri çıktı sinyaline yansımalıdır. Örneğin
x(t) → y(t) , x(t - to) → y(t - to)
Kararlılık (Stability) Bir sistemi besleyen tüm sınırlı girdiler, sınırlı çıktılar üretiyorsa bu sistem BIBO kararlıdır. (Bounded output, bounded input - Sınırlı girdi, sınırlı çıktı). Bu son özelliğimize ise şu örneği verelim:
y[n]=(x[n])<sup>2</sup>
Sinyal ve sistemlere kısa bir girişten sonra gelecek ay bu özellikleri ve alt yapıyı kullanarak sinyal işleme türlerini inceleyeceğiz. Daha sonra sinyal işlemenin alanlarına da kısaca göz attıktan sonra bu yazı dizimizi sonlandıracağız. Bu aylık bu kadar, giriş seviyesinde bilgilendirici bir yazı olduğunu umuyorum. Gelecek ay görüşmek üzere, e-bergi'yle kalın.