Page 34 - Bilgisayar Bilimi Kur 1| I. Bölüm
P. 34
Bireyler olarak evde, işte ya da farklı ortamlarda sürekli problem çözeriz. Evde karşılaşılan problemler;
akşam yemeği için ne pişirileceği, yemekten sonraki boş vaktin nasıl değerlendirileceği, hangi kitabın
okunulacağı ve marketten nelerin alınacağı gibi konulardır. İş yerinde ise problemler; yönetim, iş yeri
kuralları ve takımların verimli çalışması gibi konuları içerebilir. Ne kadar doğru kararlar alırsanız o
kadar mutlu ve değerli yaşantılar geçirirsiniz. Çoğu kişi bu süreçlerde problem çözdüğünün bile farkına
varmaz.
3.3. Problem Türleri
Problemlerin her zaman sıradan çözümleri olmaz. Kek yapmak ya da araba kullanmak gibi problem-
leri çözmek için bir dizi eylem gerekir. Adım adım yönergelere dayalı olan bu çözümlere “algoritmik
çözümler” denir. En iyi yolu seçtikten sonra sonuca, ilgili adımları izleyerek ulaşılır. Bu adımlardan
oluşan yapıya “algoritma” denir. En lezzetli ekmeği seçmek ya da işleri büyütmek için yatırım yapmak
gibi problemlerin ise açık ve net ifade edilen yanıtları yoktur. Bu çözümler bilgi ve deneyim gerektirir,
bir dizi deneme ve yanılma sürecinden oluşur. Doğrudan işlem adımları ile ulaşılamayan sonuçlara
“keşfe dayalı çözümler” denir.
Problemi çözen kişi her iki türdeki problem için problem çözmenin 6 adımını kullanabilir. Ancak
keşifsel çözümler için son adım çok doğru sonuç vermeyebilir. Bazı problemler ise her iki türdeki çözü-
mün de kullanılmasını gerektirir.
3.4. Bilgisayarlar ile Problem Çözme
Bu ders kapsamında “çözüm” demek problem çözme sürecinin 5. adımında yer alan işlem adımları
ya da yönergeler anlamına gelmektedir. “Sonuç” demek, çıktı ya da tamamlanmış bilgisayar destekli
yanıt demektir. “Program” ise herhangi bir bilgisayar dilinde kodlanmış, çözümü oluşturan işlem adım-
larının tamamını ifade etmektedir.
Bilgisayarlar, zor ve zaman alıcı olabilen algoritmik çözümler ile ilgilenmek üzere tasarlanmıştır.
İnsanlar, keşifsel çözümleri bulma konusunda daha iyidirler ancak bilgisayarların çözebildiği ileri dü-
zey hesaplama ve karmaşık problemleri çözme konusunda bilgisayarların hızlarına ulaşamazlar. Bilgi-
sayarlar, üst düzey matematik problemlerini kolayca çözebilir ancak konuşmak ya da top atmak gibi
davranışları yapamaz. Bu işlemlerin zorluğu programlama sürecindedir. Bu tür işlemleri bilgisayarların
anlayacağı bir dizi adım şekline nasıl dönüştürebiliriz?
Keşifsel problem türleri ile ilgilenen bil-
gisayar dalına “yapay zekâ” adı verilmekte-
dir. Yapay zekâ uygulamaları, bilgisayarla-
ra mevcut bilgileri kullanarak yeni bilgiler
inşa etmesini sağlamaktadır. Böylece bilgi-
sayarın problem çözme becerileri insanla-
rın yeteneklerine daha çok benzemektedir.
Yapay zekâ özellikle robotik uygulamaları
ile son yıllarda popüler bir çalışma alanı
olmuştur. Bilgisayarlar insanlar gibi dü-
şünmeye başlayana kadar daha çok algo-
ritmik problemlerin çözüm süreçlerinde
kullanılacaktır. Bu nedenle bu derste ağır-
lıklı olarak algoritmik çözümler üzerinde
durulacaktır.
48