Page 47 - Bilgisayar Bilimi | Kur 1
P. 47
Problem çözme sürecinde bu 6 adım tam olarak uygulanmaz ise sonuç beklendiği gibi olmayabilir.
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 konular olabilir. İş 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.2.1. 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.2.1.1. 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 bilgi-
sayar dalına “yapay zeka” adı verilmektedir.
Yapay zeka uygulamaları, bilgisayarlara mev-
cut bilgi tabanını kullanarak yeni bilgiler inşa
etmesini sağlamaktadır. Böylece bilgisayarın
problem çözme becerileri insanların yetenekle-
rine daha çok benzemektedir. Yapay zeka özel-
likle robotik uygulamaları ile son yıllarda po-
püler bir çalışma alanı olmuştur. Bilgisayarlar
insanlar gibi düşünmeye başlayana kadar daha
çok algoritmik problemlerin çözüm süreçlerin-
de kullanılacaktır. Bu nedenle bu derste ağır-
lıklı olarak algoritmik çözümler üzerinde du-
rulacaktır.
46