Page 37 - Bilgisayar Bilimi | Kur 1
P. 37

Sudoku bulmacanın zorluk derecesi doldurulması gereken karelerin sayısı ile belirlenir. Bu örnek
            çok kolay bir bulmacadır. 36 kare zaten doldurulmuş olduğundan, bulmacayı tamamlamak için dol-
            durulması gereken sadece 45 kare bulunmaktadır. Soru şudur: Hangi kareleri ilk olarak doldurmaya
            çalışalım?
               Bulmacanın kısıtlamalarını hatırlayın. Dokuz ana karenin her bir satır ve sütunda, her rakam tam
            olarak bir kez yazılmalıdır ve her doldurulmuş 3x3 alanda her bir rakam tam olarak bir kez yer alma-
            lıdır. Bu kurallar, çabalarımıza nereden başlamamız gerektiğini belirtir. Bulmacanın ortasındaki 3x3
            alan, dokuz kareden sekizinde zaten sayıya sahip. Bu nedenle ortadaki kare, yalnızca 3x3 alanında başka
            bir karede temsil edilmeyen tek bir olası değeri içerebilir. İşte bulmacayı buradan çözmeye başlamalıyız.
            Bu alandaki eksik rakam 7’dir, bu nedenle orta kareye 7 rakamını yerleştireceğiz.

               Bu değeri yerinde yazdığımızda, bu sütunun artık dokuz kareden yedisinde değerlere sahip olduğunu
            ve bunların her bir sütunda bulunmayan bir değeri olması gerektiği ve yalnızca iki kareyi boş bıraktığını
            unutmayın: İki boş karenin değeri 3 ve 9’dur. Bu sütundaki kısıtlama her iki numarayı da her iki yere
            yazmamıza izin verir ancak 3’ün üçüncü satırda, 9’un zaten yedinci satırda bulunduğuna dikkat edin.
            Bu nedenle satır kısıtlamaları, 9’un orta sütunun üçüncü satırına, 3’ün orta sütunun yedinci satırına
            yazılmasını gerektirir. Bu adımlar Şekil 1.12’de özetlenmiştir.

                 9  1     6     7              9  1     6     7              9  1     6     7
                          8  2     3  9                 8  2     3  9                 8  2     3  9
              5     3           2           5     3           2           5     3           2
                       9  1  3     6  2              9  1  3     6  2              9  1  3     6  2
                    2  4     6  8                 2  4  7  6  8                 2  4     6  8
              1  4     8  2  5              1  4     8  2  5              1  4     8  2  5
                    9           5     7           9           5     7           9     3     5     7
              6  7     1  5                 6  7     1  5                 6  7     1  5
                    5     4     6  9              5     4     6  9              5     4     6  9

                         1                              2                             3

                              Şekil 1.5: Örnek sudoku bulmacanın çözümünde ilk adımlar
               Tüm bulmacayı burada çözmeyeceğiz ancak bu ilk adımlar, ideal olarak mümkün olan en düşük
            sayıdaki kareler için aradığımız sadece bir tane önemli noktayı görmemizi sağlar.
               Bu problemden neler öğrendik?

               Sudokunun temel dersi, problemin en kısıtlı bölümüne bakmamız gerektiğidir. Kısıtlamalar, çoğu
            zaman bir problemi zorlaştıran şeyken (tilkiyi, kazı ve mısır çuvalını unutmayın) aynı zamanda çözüm
            hakkındaki düşüncemizi basitleştirebilirler çünkü seçenekleri ortadan kaldırırlar.
               Yapay zekâyı bu kitapta özel olarak tartışmayacağımıza rağmen, yapay zekâda “en katı değişken”
            olarak adlandırılan belirli türdeki problemleri çözmek için bir kural vardır. Kısıtlamaları karşılamak
            için farklı değişkenlere farklı değerler atamaya çalıştığınız bir problemde, en fazla kısıtlamaları olan
            değişkenle başlamak ya da olası değerlerin en düşük sayısına sahip değişkeni başka bir şekilde koymak
            gerekir.
               İşte bu tür düşünceye bir örnek. Bir grup iş arkadaşınızın sizinle beraber öğle yemeğine gitmek iste-
            diğini ve herkesin beğeneceği bir restoran bulmanızı rica ettiğini varsayalım. Problem şu: Meslektaşların
            her biri grup kararında birtakım kısıtlamalar getiriyor; Ayşe vejetaryen, Can Çin yemeklerini sevmiyor
            vb. Hedefiniz bir restoran bulmak için gereken süreyi en aza indirmek ise en sıkı kısıtlamalara sahip


         36
   32   33   34   35   36   37   38   39   40   41   42