← Computers & Automation

A General Problem Solving Program for a Computer

B
Bilinmeyen Yazar
1959 · Computers and Automation

A. Newell ve J. C. Shaw, The RAND Corporation ve H. A. Simon, Carnegie Institute of Technology

(Paris, Fransa’da 13–20 Haziran 1959 tarihleri arasında düzenlenen Uluslararası Bilgi İşleme Konferansı’nda sunulan bildiri)

Bu makale, problem çözme kuramını ele almaktadır. Akıllı, uyarlanabilir ve üretken davranışta yer alan son derece karmaşık süreçlere ilişkin bir incelemenin parçası olan ve General Problem Solver I (GPS) olarak adlandırılan bir dijital bilgisayar programını tanımlamaktadır. İncelemedeki başlıca aracımız sentezdir: büyük dijital bilgisayarları akıllı davranış sergileyecek şekilde programlamak, bu bilgisayar programlarının yapısını incelemek ve programların ortaya koyduğu problem çözme ile diğer uyarlanabilir davranışları irdelemek.

Bir problem, bir problem çözücünün ulaşmak istediği bir sonuç ya da durum mevcut olduğunda ve buna nasıl ulaşacağını hemen bilmediğinde vardır. Nasıl ilerleyeceğine ilişkin eksik bilgi, gerçekten problemli olanın özünde yer alır. Elbette her zaman bir miktar başlangıç bilgisi mevcuttur. Gerçek bir problem çözme süreci, mevcut bilginin keşfi başlatmak üzere yinelenen biçimde kullanılmasını içerir; bu keşif, çözüm yolunun sonunda bulunmasına kadar giderek daha fazla bilgi açığa çıkarır.

Birçok tür bilgi, problemlerin çözümüne yardımcı olabilir: bilgi, olası çözümlerin hangi sırayla incelenmesi gerektiğini önerebilir; daha önce mümkün sanılan tüm bir çözüm sınıfını dışlayabilir; olası olanla olası olmayanı ayırt etmek için düşük maliyetli bir sınama sağlayabilir; ve benzeri. Bu tür bilgilerin tümü sezgisel kurallardır—keşfi kolaylaştıran şeylerdir.

Sezgisel kurallar nadiren yanılmaz rehberlik sağlar; yalnızca deneysel geçerliliğe sahip pratik bilgi sunarlar. Çoğu zaman “işe yararlar”, ancak sonuçlar değişkendir ve başarı nadiren garanti edilir.

Problem çözme kuramı, sezgisel kural sistemlerinin keşfedilmesi ve anlaşılmasıyla ilgilenir. Hangi türler vardır? Çok genel buyruklar (“Bir şekil çiz” ya da “Basitleştir”) etkilerini nasıl gösterir? İnsanlar gerçekte hangi sezgisel kuralları kullanır? Yeni sezgisel kurallar nasıl keşfedilir? Ve benzeri. Bu makalede tanımlanan program GPS, problem çözme kuramına, iki çok genel sezgisel kural sistemini—araç‑amaç analizi ve planlama—farklı konu alanlarına uygulanmalarına olanak tanıyan bir örgütlenme içinde somutlaştırarak katkıda bulunmaktadır.

GPS, daha önceki bir bilgisayar programı olan Logic Theorist’ten (5, 8) türemiştir; bu program, Whitehead ve Russell’ın önermeler hesabındaki teoremler için kanıtlar bulmuştur.

Kayda değer bir problem çözme yeteneği sergilemiştir. Sezgisel kuralları büyük ölçüde tasarımcılarının içgözlemlerine dayanıyordu ve simgesel mantığın konu alanına sıkı sıkıya bağlıydı.

Logic Theorist’in etkililiği, psikoloji laboratuvarında insan deneklerin problem çözme davranışını ayrıntılı biçimde benzetmeyi amaçlayan gözden geçirilmiş programlara yol açtı. İnsan verileri, üniversite ikinci sınıf öğrencilerinden simgesel mantık problemlerini çözmeleri istenerek ve çalışırken mümkün olduğunca “yüksek sesle düşünmeleri” sağlanarak elde edildi.

GPS, laboratuvar deneklerinin sözlü yorumlarında ve problemleri çözerken yazdıkları adımlarda ortaya çıkan davranışlarını olabildiğince yakından betimlemek üzere geliştirdiğimiz programdır. Deneklerin davranışını ne ölçüde başarıyla benzettiği—insan düşüncesinin psikolojik bir kuramı olarak kullanışlılığı—başka bir yerde rapor edilecektir (7).

Önce GPS’in genel yapısını ve ele alabileceği problem türlerini tanımlayacağız. Ardından kullandığı iki önemli sezgisel kural sistemini betimleyeceğiz. İlki, simgesel mantıkta teorem kanıtlama ve basit trigonometrik özdeşlikleri kanıtlama görevleriyle örneklendireceğimiz araç‑amaç analizi sezgiselidir. İkincisi ise, yine simgesel mantıkla örneklendireceğimiz, çözümlere ilişkin genel planlar oluşturma sezgiselidir.

Yürütücü Program ve Görev Ortamı

GPS, nesneler ve işleçler cinsinden biçimlendirilebilen problemler üzerinde çalışır. Bir işleç, belirli nesnelere uygulanarak farklı nesneler üretebilen bir şeydir (kütüklere uygulanan bir testerenin tahtalar üretmesi gibi). Nesneler, sahip oldukları özelliklerle ve nesne çiftleri arasında gözlemlenebilen farklarla tanımlanabilir. İşleçler yalnızca belirli türdeki nesnelere uygulanmakla sınırlandırılabilir; ayrıca birden çok nesneyi girdi olarak alıp bir ya da daha fazla nesneyi çıktı olarak üreten işleçler de bulunabilir (iki sayının toplanması işleminin üçüncü bir sayı, yani toplamı üretmesi gibi).

Nesneler ve işleçler içeren bir görev ortamında çeşitli problemler formüle edilebilir: verilen bir nesneyi başka bir nesneye dönüştürmenin bir yolunu bulmak; belirli bir özelliğe sahip bir nesne bulmak; belirli bir işlecin uygulanabilmesi için bir nesneyi değiştirmek; ve benzeri.

Örneğin satrançta, nesneler olarak satranç konumlarını ve işleçler olarak da yasal hamleleri alırsak, hamleler eski konumlardan yeni konumlar (nesneler) üretir. Her hamle her konumda yapılamaz. Satrançtaki problem, verilen bir nesneden, yani mevcut konumdan, belirli bir özelliğe sahip bir nesneye (rakibin şahının mat olduğu bir konuma) ulaşmaktır.

Biçimsel bir matematiksel sistemde teorem kanıtlama problemi de kolaylıkla aynı biçimde ifade edilebilir. Burada nesneler teoremlerdir; işleçler ise kabul edilebilir çıkarım kurallarıdır. Bir teoremi kanıtlamak, başlangıç nesneleri olan aksiyomları, istenen nesneye, yani arzulanan teoreme dönüştürmektir.

Benzer şekilde, fonksiyonların kapalı biçimde integrali alınırken, nesneler matematiksel ifadelerdir; işleçler ise cebirsel işlemlerle birlikte sinüs ve kosinüs gibi özel fonksiyonları tanımlayan formüllerdir. Kapalı biçimde integrasyon, her nesneye doğrudan uygulanabilen bir işlem değildir; eğer öyle olsaydı, ortada bir problem olmazdı. İntegrasyon, verilen bir nesnenin, uygulanabilecek işlemler kümesi tarafından tanımlanan eşdeğerliğe göre, integrallenebilir bir eşdeğer nesneye dönüştürülmesini içerir.

Bir bilgisayar programı oluşturmak da aynı terimler çerçevesinde bir problem olarak tanımlanabilir. Burada nesneler, bilgisayar belleğinin olası içerikleridir; işleçler ise bellek içeriğini değiştiren bilgisayar komutlarıdır. Bir program, belleğin bir durumunu başka bir duruma dönüştüren işleçler dizisidir; programlama problemi, başlangıç ve bitiş durumlarının belirli özellikleri tanımlandığında böyle bir diziyi bulmaktır.

Nesneler ve işleçlerle tanımlanan bir görev ortamında genel olarak çalışabilmek için GPS’in birkaç ana bileşene ihtiyacı vardır:

  1. Görev ortamı hakkında konuşmak için bir sözcük dağarcığı; şu terimleri içeren: nesne, işleç, fark, özellik, Nesne #34, İşleç #7.
  2. Problem çözme süreçlerinin örgütlenmesiyle ilgili bir sözcük dağarcığı; şu terimleri içeren: hedef türü, yöntem, değerlendirme, Hedef Türü #2, Yöntem #1, Hedef #14.
  3. Problem çözme sözcük dağarcığındaki terimleri, görev ortamını tanımlamaya yönelik sözcük dağarcığındaki terimler cinsinden tanımlayan bir programlar kümesi. (Birazdan bir dizi örnek sunacağız.)
  4. Görev ortamı sözcük dağarcığındaki terimleri belirli bir ortama uygulayan bir programlar kümesi (bağlamsal tanımlar): simgesel mantık, trigonometri, cebir, integral hesabı. (Bunlar da ayrıntılı biçimde örneklendirilecektir.)

Yukarıdaki listenin 2 ve 3 numaralı maddeleri, 1 numaralı maddedeki özel adlar hariç olmak üzere ortak adlarla birlikte, asıl anlamıyla GPS’i oluşturur. 4 numaralı madde ve 1 numaralı maddedeki özel adlar ise GPS’e belirli bir konu alanına ilişkin problemleri çözme yeteneği kazandırmak için gereklidir.

Genel olarak ifade etmek gerekirse, GPS’in özü, bazı genel ama oldukça güçlü problem çözme sezgisel kurallarından oluşur. Bu sezgisel kuralları belirli bir problem alanına uygulamak için, GPS’in o alanı tanımlayan matematik ya da mantık tanım ve kurallarıyla genişletilmesi ve ardından çözmesi için bir problem ya da problem dizisi verilmesi gerekir. GPS’in “genel” olarak adlandırılmasının gerekçesi, problem çözme sezgisel kurallarının konu alanından ayrıştırılmasında ve aynı sezgisel kuralları farklı konularla başa çıkmak için kullanabilme yeteneğinde yatar.

Temmuz 1959 tarihli COMPUTERS and AUTOMATION


Şekil 1. GPS’in Yürütücü Örgütlenmesi

  • Hedefe ulaşılamadı
  • Hedefe ulaşma komutu
  • Hedefi değerlendir
    • Reddet
    • Kabul et
  • Bu hedef türü için yöntem seç
  • Yöntemi yürüt
  • Hedefe ulaşıldı
  • Ulaşmayı deneme

Şimdi problem çözme sözcük dağarcığına ve sezgisel kurallara daha yakından bakalım. Problemleri ve alt problemleri belirtmek için GPS, ayrık bir hedef türleri kümesine sahiptir. Bunlardan ikisini başlangıçta tanıtacağız:

Hedef Türü #1: Nesne a’yı nesne b’ye dönüştürmenin bir yolunu bul. (Nesneler a ve b, görev ortamı belirtilirken tanımlanan herhangi bir nesne olabilir. “Dönüştürmenin bir yolu” ifadesi, “görev ortamındaki işleçlerin bir dizisini uygulayarak” anlamını taşır.)

Hedef Türü #2: İşleç q’yu nesne a’ya (ya da a’dan kabul edilebilir dönüşümlerle elde edilen bir nesneye) uygula.

Aksiyomlardan (nesne a) bir teoremin (nesne b) kanıtını bulmak, Tür #1 bir hedefe örnektir; bir ifadenin (nesne a) integralini almak (işleç q), Tür #2 bir hedefe örnektir.

Şekil 1’de gösterilen GPS’in yürütücü örgütlenmesi son derece basittir. Her hedef türüyle, o tür hedeflere ulaşmayla ilişkili bir yöntemler kümesi ilişkilendirilmiştir. Bir hedefe ulaşma girişiminde bulunulduğunda, önce hedefin ulaşılmaya değer olup olmadığı ve başarının olası görünüp görünmediği değerlendirilir. Eğer öyleyse, yöntemlerden biri seçilir ve yürütülür. Bu, ya başarıya götürür ya da döngünün yinelenmesine yol açar.

GPS’in temel sezgisel kuralları yöntemlerin içine gömülüdür. Tüm sezgisel kurallar aşağıdaki genel ilkeyi uygular:

Alt hedef indirgeme ilkesi: Bir hedefe ulaşma yerine, daha kolay bir dizi hedefe ulaşmayı ikame ederek ilerleme sağlamak.

Bu, gerçekten de yalnızca sezgisel bir ilkedir ve göründüğü kadar kendiliğinden açık değildir. Örneğin, şimdiye kadar satranç ya da dama için yazılmış programların hiçbiri bu ilkeyi esaslı biçimde kullanmamaktadır (1, 3, 6).

Bu ilkenin sürekli kullanımı GPS’i son derece özyinelemeli bir program hâline getirir; çünkü bir hedefe ulaşma girişimi başka hedeflere, bunlar da sırasıyla daha başka hedeflere yol açar. Böylece, tek bir problemin çözümünde, hedef yapısının çeşitli düzeylerinde özdeş hedef türleri ve yöntemler aynı anda birçok kez kullanılır. İlkenin uygulanması ayrıca hedefleri ve yöntemleri, her bir yöntemi bağımsız bir sezgisel olarak kurmak yerine, örgütlü sezgisel sistemler hâlinde birleştirir. Bu makalede bu türden iki sistemin örneklerini sunacağız.


İşlevsel ya da Amaç–Araç Analizi

Problem çözmede en sık kullanılan sezgisel yaklaşımlardan biri olan amaç–araç analizi, aşağıdaki türden sağduyulu bir akıl yürütme ile karakterize edilir:

Oğlumu anaokuluna götürmek istiyorum. Sahip olduğum şey ile istediğim şey arasındaki fark nedir? Mesafe farkı. Mesafeyi ne değiştirir? Otomobilim. Otomobilim çalışmıyor. Onu çalıştırmak için ne gerekir? Yeni bir akü. Kimde yeni aküler var? Bir oto tamirhanesi. Tamirhanenin yeni bir akü takmasını istiyorum; ama dükkân benim buna ihtiyacım olduğunu bilmiyor. Zorluk nedir? İletişim. İletişimi ne sağlar? Bir telefon ... Ve böyle devam eder.

Şeyleri gördükleri işlevlere göre sınıflandıran ve amaçlar, gerekli işlevler ve bunları yerine getiren araçlar arasında gidip gelen bu tür bir analiz, GPS’in temel sezgisel sistemini oluşturur. Daha kesin olarak, bu amaç–araç sezgisel sistemi aşağıdakileri varsayar:

  1. İstenen nesne yerine farklı bir nesne verildiğinde, eldeki nesne ile istenen nesne arasında farklar saptanabilir.
  2. Operatörler, işlenenlerinin bazı özelliklerini etkiler ve diğerlerini değiştirmeden bırakır. Dolayısıyla operatörler, ürettikleri değişikliklerle karakterize edilebilir ve uygulandıkları nesneler ile istenen nesneler arasındaki farkları gidermeye çalışmak için kullanılabilir.
  3. Bazı farkların etkilenmesi diğerlerine göre daha zor olacaktır. Bu nedenle, daha az zor yeni farklar ortaya çıkarmak pahasına bile olsa, “zor” farkları ortadan kaldırmaya çalışmak kârlıdır. Daha zor farkların giderilmesi yönünde ilerleme kaydedildiği sürece bu süreç yinelenebilir.

Bu sezgisel yaklaşımı GPS’e dâhil etmek için, hedef türlerinin sözcük dağarcığını aşağıdakini kapsayacak biçimde genişletiriz:

Hedef Türü #3: Nesne a ile nesne b arasındaki d farkını, a’yı değiştirerek azaltmak.

İşlevsel analiz sisteminin çekirdeği, Şekil 2’de gösterildiği gibi, üç hedef türünün her biriyle ilişkili üç yöntemden oluşur.

  • Yöntem #1 (Hedef Türü #1):
  • a ve b nesnelerini eşleştirerek aralarındaki d farkını bul.
  • d’yi azaltmaya yönelik Tür #3 alt hedefini kur; bu hedef başarılı olursa, dönüştürülmüş yeni bir nesne c üretir.
  • c’yi b’ye dönüştürmeye yönelik Tür #1 alt hedefini kur.

Bu son hedefe ulaşılırsa, özgün Tür #1 hedefi de başarılmış olur. (1). adımdaki eşleştirme, önce daha önemli farkları sınar. Ayrıca serbest değişkenler için otomatik olarak ikame yapar.

  • Yöntem #2 (Hedef Türü #2):
  • Operatörün uygulanabilir olup olmadığını, a’yı C(q)’ya—q’nun girdi biçimine—dönüştürmeye yönelik bir Tür #1 hedefi kurarak belirle.
  • Başarılı olursa, P(q)’dan—q’nun çıktı biçiminden—çıktı nesnesini üret.

Bu yöntem, operatörün biri girdiyi (koşulları), diğeri çıktıyı (ürünü) tanımlayan iki biçimle verildiği durumlarda uygundur. Yinelemeli ya da özyinelemeli olarak tanımlanan programlar biçimindeki operatörler için bu yöntemin türevleri vardır.

  • Yöntem #3 (Hedef Türü #3):
  • d farkını azaltmakla ilişkili bir operatör ara.
  • Böyle bir operatör bulunursa, uygulanmasını hedefleyen Tür #2 hedefini kur; bu hedef başarılı olursa, değiştirilmiş nesne üretilir.

Sembolik Mantığa Uygulama

Bu sezgisel sistem GPS’e hâlihazırda belirli bir problem çözme yeteneği kazandırır. GPS’i sembolik mantıkta basit bir probleme uygulayabiliriz. Bunun için nesneler, operatörler ve farklar için karşılık gelen tanımları sağlamamız gerekir. Bunlar Şekil 3’te özetlenmiştir. Ayrıca her farkla, onu değiştirmekle ilgili operatörleri ilişkilendirmemiz gerekir. Mantık için bu, Şekil 3’teki bağlantılar tablosu aracılığıyla açıkça yapılır. Bu bağlantılar GPS’e verilir; ancak operatör ve fark listelerinden bu bağlantıları GPS’in kendisinin çıkarsamasına izin verecek bir program yazmak zor değildir.

Son olarak, ilerleme ölçütlerini, zorluk sırasına göre düzenlenmiş farklar listesi biçiminde sunarız.

Örnek bir mantık problemi ve çözümü Şekil 4’te gösterilmiştir. Nesne L1 verilir ve GPS’ten L0 nesnesini türetmesi istenir. Problem GPS’e Tür #1 hedefi biçiminde ifade edilir: (Hedef 1) L1’i L0’a dönüştürmenin bir yolunu bul. Şekil 2’ye göre bu hedef türü Yöntem #1’i çağırır. L1 ile L0’ın karşılaştırılması, aralarında ΔP farkı olduğunu gösterir; çünkü R, L1’in sol ucunda, L0’ın ise sağ ucundadır. GPS şimdi Tür #3 hedefini kurar: (Hedef 2) L1 ile L0 arasındaki ΔP’yi azalt.

3.

Bağlantılar tablosu (Şekil 3) R1’in ΔP’yi azaltmakla ilgili olduğunu gösterdiğinden, GPS Tür #2 hedefini kurar:

Hedef 3: R1 operatörünü L1’e uygula.

Okuyucu, çözüme götüren kalan adımları Şekil 4’ten izleyebilir. Ortaya çıkan türetim şu şekilde özetlenebilir:

Nesne Operatör
L1 = R·(-P ⊃ Q)
L2 = (-P ⊃ Q)·R R1’i L1’e uygula
L3 = (P ∨ Q)·R R6’yı L2’nin sol tarafına uygula
L4 = (Q ∨ P)·R R1’i L3’ün sol tarafına uygula

L4, LO ile özdeştir.

Q.E.D.

GPS, gösterilen basit örnekten çok daha zor problemleri çözebilir. On iki operatörün tümünden tam olarak yararlanmak için, Tür #3 hedefine ek bir yöntem eklenir; bu yöntem, R10, R11 ve R12 kurallarında gerekli olan ek girdiyi bulmak üzere mevcut nesneleri tarar.


Trigonometriye Uygulama

GPS, uygun karşılık gelen tanımlar verildiğinde, sezgisellerinin farklı konu alanlarına uygulanabilmesi ölçüsünde genel bir problem çözücüdür. Temel cebir ve analiz, mantıktan farklı bir konu alanı sunar ve Şekil 5, GPS’in bazı basit trigonometrik özdeşlikleri kanıtlamaya çalışması için gerekli olan bu görev ortamının bir bölümünü gösterir. Nesneler artık cebirsel ve trigonometrik ifadelerdir ve operatörler çarpanlara ayırma, cebirsel sadeleştirme ve trigonometrik dönüşüm gerçekleştirir.

Farklar, mantıktakiyle aynıdır; ancak bağlanırlık ve değişme özellikleriyle ilişkili iki istisna vardır. Mantıkta bunlar açıkça gerçekleştirilmelidir; oysa sıradan cebirde, bunları örtük kılan ve işlemlerini otomatik hâle getiren bir gösterim kullanılır.

Farklar ile operatörler arasındaki bağlantılar, mantıktaki gibi basit bir tabloyla kurulmaz; bunun yerine, nesnenin operatörün çıktı biçimiyle karşılaştırılmasını gerektirir. İlerleme ölçütleri mantıktakiyle aynıdır.

GPS artık aşağıdaki gibi bir trigonometrik özdeşliği kanıtlamaya çalışabilir:

(tan x + cot x) sin x cos x = 1

Bu, sol tarafın—ki bu L1 olur—sağ tarafa, LO’ya dönüştürülmesi problemi olarak verilir. 33 hedef ve alt hedeften oluşan çözüm süreci Şekil 6’da gösterilmiştir; bu şekil, yöntemlerin açıkça belirtilmemesi dışında, Şekil 2 ve 5’in yardımıyla Şekil 4 ile tamamen aynı biçimde yorumlanmalıdır.


Bir Problem Çözme Tekniği Olarak Planlama

GPS tarafından kullanılan ikinci sezgisel sistem, GPS’in ayrıntıları çalışmaya başlamadan önce çözüm için genel bir taslak kurmasına olanak tanıyan bir planlama biçimidir. Bu sistem, amaç–araç analizinin yalnızca bir adım ilerisini görebilme sınırlamasına karşı bir panzehir görevi görür. Ayrıca, bir problemin çözümüne yardımcı olmak üzere farklı bir görev ortamındaki yardımcı bir problemin kullanımına örnek sunar.

Planlama, Tür #1 hedefinin araç setine Yöntem #4 adı verilen yeni bir yöntemin eklenmesiyle GPS’e dâhil edilir.

Bu Planlama Yöntemi (bkz. Şekil 7) şunlardan oluşur:

  1. Özgün nesnelerin ve operatörlerin bazı ayrıntılarını çıkararak soyutlama yapmak.
  2. Soyut görev ortamında karşılık gelen problemi kurmak.
  3. Soyut problem çözüldüğünde, çözümünü özgün problemin çözümü için bir plan sağlamak üzere kullanmak.
  4. Planı özgün görev ortamına geri çevirmek ve uygulamak.

Yöntemin gücü iki gerçeğe dayanır. Birincisi, GPS’in tüm mekanizması, uygun görev ortamında soyut problemi çözmek için kullanılabilir; ayrıntıların bastırılması nedeniyle bu genellikle özgün problemden daha basittir. İkincisi, planı oluşturan alt problemler topluca özgün problemden daha basittir.

Bir problemi çözmek için gereken arama, çözümdeki adım sayısıyla genellikle üstel olarak arttığından, tek bir büyük problemin birkaç küçük problemle değiştirilmesi, problem zorluğunu büyüklük mertebeleri düzeyinde azaltabilir.


Şekil 4. Mantıkta Amaç–Araç Analizi Örneği

Verilen: L1 = R·(-P ⊃ Q)

Elde edilecek: LO = (Q ∨ P)·R

Hedef 1: L1’i LO’ya dönüştür.

Hedef 2: L1 ile LO arasındaki ΔP’yi azalt.

Hedef 3: R1’i L1’e uygula.

Hedef 4: L1’i C(R1)’e dönüştür.

Eşleştirme A = R ve B = -P ⊃ Q ile başarılı olur.

Yeni nesne üret:

L2 = (-P ⊃ Q)·R

Hedef 5: L2’yi LO’ya dönüştür.

Eşleştirme, sol alt ifadede bağlaç farkı (ΔC) üretir.

Hedef 6: L2’nin solu ile LO’nun solu arasındaki ΔC’yi azalt.

Bulunan ilk operatör R5’tir.

Hedef 7: R5’i L2’nin soluna uygula.

Hedef 8: L2’nin solunu C(R5)’e dönüştür.

Hedef reddedilir: fark, Hedef 6’daki farktan daha kolay değildir.

Bulunan ikinci operatör R6’dır.

Hedef 10: R6’yı L2’nin soluna uygula.

Hedef 11: L2’nin solunu C(R6)’ya dönüştür.

Eşleştirme A = -P ve B = Q ile başarılı olur.

Yeni nesne üret:

L3 = (P ∨ Q)·R

Hedef 12: L3’ü LO’ya dönüştür.

Eşleştirme, sol alt ifadede konum farkı (ΔP) üretir.

Hedef 13: L3’ün solu ile LO’nun solu arasındaki ΔP’yi azalt.

Hedef 14: R1’i L3’ün soluna uygula.

Eşleştirme A = P ve B = Q ile başarılı olur.

Yeni nesne üret:

L4 = (Q ∨ P)·R

Hedef 16: L4’ü LO’ya dönüştür.

Eşleştirme, L4’ün LO ile özdeş olduğunu gösterir.

Q.E.D.


Şekil 5. Trigonometri Görev Ortamı

Nesneler

Trigonometrik fonksiyonları içeren sıradan cebirsel ifadeler. Bağlanırlık ve değişme yasaları gösterimde örtüktür.

Operatörler

A0 (Birleştir): temel özdeşlikleri özyinelemeli olarak uygular.

T1: tan x → 1 / cot x
T2: (tan x)(cot x) → 1
T3: tan x → sin x / cos x
T4: cot x → cos x / sin x
T5: sin²x + cos²x → 1

Farklar

Mantıktaki gibi tanımlanır: ΔV, ΔN, ΔC, ΔT. Cebirde ΔG ve ΔP ortaya çıkmaz.

İlerleme Ölçütleri

Mantıktaki gibi tanımlanır; ancak ΔC, ΔN ya da ΔP’den daha önemlidir.


Şekil 6. Trigonometride Amaç–Araç Analizi Örneği

Verilen: L1 = (tan x + cot x) sin x cos x
Elde edilecek: LO = 1

Çözüm, 33 hedef ve alt hedeften geçerek şu sonuca ulaşır:

L18 = 1

L18’i LO’ya dönüştür [özdeş].

Q.E.D.


Şekil 7. Planlama Yöntemi

Hedef Türü #1: Nesne a’yı nesne b’ye dönüştür.

Yöntem #4:

  • a ve b’yi soyutla.
  • Soyut yöntemleri kullanarak a′yı b′ye dönüştür.
  • Soyut operatörlerden bir dizi üret.
  • Operatörleri özelleştir.
  • Diziyi a’ya uygula.
  • Son nesneyi b’ye dönüştür.

Dönüşüm başarıldığında yöntem başarılı olur.


Şekil 8. Mantıkta Planlama Örneği

Verilen: L1 = (R ⊃ -P)·(-R ⊃ Q)
Elde edilecek: LO = (-Q·P)

Soyutlanmış:

  • A1 = (PR)(QR)
  • AO = (PQ)

Soyut çözüm:

Nesne İşlem
(PR)(QR) Sol tarafa R8 uygula
(PR) Sağ tarafa R8 uygula
(PQ) Sonuçlara R12 uygula

(PQ), AO ile özdeş olduğundan:

Q.E.D.


Computers and Automation, Temmuz 1959


Broadview Research Corporation (Reklam)

Broadview Research Corporation, hem bilimsel hesaplamalar hem de ticari veri işleme için bilgisayar programcıları ve uygulama analistleri aramaktadır. Bilimsel programlama, IBM 700 serisi ya da RRI 1100 serisi ile deneyim gerektirir. Güncel projeler uydu yörüngeleri, fotogrametri ve diferansiyel denklemlerin sayısal çözümünü kapsamaktadır.

Veri işleme projeleri, IBM, Sylvania, Philco ve Burroughs tarafından geliştirilmekte olan büyük yeni bilgisayarların programlanmasını içermektedir. Burlingame, California; Alamogordo, New Mexico; ve Fort Huachuca, Arizona’da açık pozisyonlar bulunmaktadır.

Özgeçmişlerinizi lütfen aşağıdaki adrese gönderiniz:

Mr. Joseph Rosenbaum
Broadview Research Corporation
1811 Trousdale Drive
Burlingame, California

Soyutlama sırasında özdeşlik operatörüne dönüşen operatörleri içerir.

Diğer sezgiseller gibi, planlama sezgiseli de her zaman işe yarayacağına dair hiçbir garanti sunmaz. Hiç plan üretmeyebilir, tek bir plan ya da birkaç plan üretebilir. Daha da ciddisi, bir plan yanıltıcı olabilir—uygulanmasının olanaksız olduğu ortaya çıkabilir. Örneğin, örnek problemde üretilen ilk plan olan RS, R11, R12, somut görev ortamına geri çevrildiğinde geçerli bir türetim için temel sağlamaz. Geçersiz planları yürütmeye yönelik sonuçsuz çabalarda harcanan zaman, planlama sezgiseli değerlendirilirken hesaba katılmalıdır; ancak bu maliyet göz önüne alındığında bile sezgisel son derece güçlü kalmaktadır.

Sonuç

GPS tarafından kullanılan başlıca sezgiselleri artık tanımlamış bulunuyoruz ve bu sezgisellerin onun problemleri nasıl çözmesini sağladığını göstermiş olduk. Alan darlığı tam bir tartışmayı engellese de, bu makalede yetersiz ele alınmış olan GPS’in birkaç yönünü anarak bitirmek isteriz.

  1. GPS ek hedeflere ve yöntemlere gereksinim duyar ve biz bunların bir kısmını farklı derecelerde incelemiş bulunuyoruz. Örneğin, birçok problemde nesnelerin özellikleri, nesneler arasındaki farklardan daha büyük bir rol oynamaya başlar; satrançta merkezin kontrolü gibi. Özellikleri ele almak için Tür #3’e benzer bir hedef ve yöntemler gereklidir. Tek değişkenli denklemlerin çözümü de, değişkeni yalıtmak için bir denklemin her iki tarafında işlem yapma gibi sezgiselleri içeren yeni bir hedef ve yeni yöntemler gerektirir. Bu hedef, trigonometrikte (sin 4x cos 4x) ifadesinin (y² − z²) biçiminde olduğunu tanımak ve böylece çarpanlara ayırabilmek için zaten gereklidir. GPS, mevcut araç setiyle cebirsel sadeleştirmeyi ve bir integraller tablosunun yardımıyla görece basit ifadelerin integralini almayı hâlihazırda başarabilmektedir. Amaç–araç analizini tanıtan örneğin de gösterdiği gibi, GPS’in, çoğu insanın günlük yaşamın ayrıntılarından geçmesini sağlayan sağduyulu düşünmeyi gerçekleştirebilme kapasitesine sahip olabileceğine dair bir miktar umut vardır.

  2. GPS, bir görev ortamı hakkında çok az bilgiyle donatılmıştır ve bunun en genel özellikleriyle ilgilenir. Bir noktadan sonra, GPS’in sezgisel yöntemlerinin çoğu, belirli konu alanları için özel sezgisel sistemleri keşfetmeye ayrılacaktır. Örneğin trigonometride GPS’in, “her şeyi sinüs ve kosinüslere indirgeme” ve “bir trigonometrik adımı cebirsel bir adımla izleme” gibi sezgisel yöntemleri öğrenebilmesi gerekir. Aslında verilen örnekte bunları kabaca izledi, ancak oldukça hantal bir biçimde. Bahsettiğimiz dar kapsamlı öğrenmenin tek parçası—farklılıkları operatörlerle ilişkilendirme—bu yönde bir başlangıçtır.

  3. GPS ile programların bir bilgisayar üzerinde gerçekleştirilmesi büyük bir programlama görevidir. Araştırma çabamızın büyük bir bölümü, bu tür programların yazılmasını uygulanabilir kılan programlama dillerinin (bilgi işleme dilleri) tasarımına yönelmiştir. Bu çalışmanın bir açıklaması için okuyucuyu diğer yayınlara yönlendirmemiz gerekir (4, 9). Bununla birlikte, bu makaledeki GPS tanımımızın tüm bilgi işleme sorunlarını göz ardı ettiğini vurgulamak isteriz: hedeflerin nasıl izleneceği; gerekli bilgilerin onlarla nasıl ilişkilendirileceği ve geri çağrılacağı; halihazırda çalışmakta olan bir sisteme yöntemlerin nasıl ekleneceği; ve benzeri konular. Bu teknik sorunlar, akıllı programlar oluşturma probleminin büyük bir bölümünü meydana getirir.

  4. Bu makalede ayrıca değerlendirme adımının rolünü—herhangi bir çaba harcanmadan önce bir hedefi reddetme fırsatını—gereğinden az vurguladık. Yöntemler üretkendir ve olası çözümler ortaya koyar. Bunlar yalnızca sezgiseldir ve bu nedenle araştırılabilecek olandan çok daha fazla olasılık üretecektir. Değerlendirme, daha kârlı yolları seçmek için ek sezgisel yöntemler uygular ve GPS’in problem çözme yeteneğini güçlü biçimde etkiler. Araç-amaç analizi genel bir sezgisel yöntemdir, çünkü ilerleme, yöntemlerle aynı genel terimler kullanılarak değerlendirilebilir. Daha özgül değerlendirmeler ise yine öğrenmeyi gerektirecektir.

  5. Alan sınırlamaları, örneklerimizin doğru çözüm yoluna odaklanmasına zorunlu kılmıştır. Bunlar, seçim miktarını ve deneme-yanılma sürecini yeterince aktarmamaktadır. Bu durum özellikle talihsizdir; çünkü dramatik açıdan bakıldığında problem çözme, üstel olarak genişlemeye devam eden bir olasılıklar uzayına karşı seçim tekniklerinin mücadelesidir (5, 7).

References

  1. A. Bernstein ve diğerleri, “IBM 704 için bir satranç oynayan program,” Proceedings of the 1958 Western Joint Computer Conference, Mayıs (1958).
  2. J. Kister ve diğerleri, “Satrançta deneyler,” Journal of the Association for Computing Machinery, 4(2), Nisan (1957).
  3. H. L. Gelernter ve N. Rochester, “Problem çözen makinelerde akıllı davranış,” IBM Journal of Research and Development, 2(4), Ekim (1958).
  4. A. Newell ve J. C. Shaw, “Logic Theory Machine’in programlanması,” Proceedings of the 1957 Western Joint Computer Conference, Şubat (1957).
  5. A. Newell, J. C. Shaw ve H. A. Simon, “Logic Theory Machine’in ampirik incelemeleri,” Proceedings of the 1957 Western Joint Computer Conference, Şubat (1957).
  6. A. Newell, J. C. Shaw ve H. A. Simon, “Satranç oynayan programlar ve karmaşıklık problemi,” IBM Journal of Research and Development, 2(4), Ekim (1958).
  7. A. Newell, J. C. Shaw ve H. A. Simon, “Yaratıcı düşünmenin süreçleri,” P-1320, The RAND Corporation, Santa Monica, California, Ağustos (1958).
  8. A. Newell ve H. A. Simon, “Logic Theory Machine,” Transactions on Information Theory, IT-2(3), Eylül (1956).
  9. J. C. Shaw ve diğerleri, “Karmaşık bilgi işleme için bir komut yapısı,” Proceedings of the 1958 Western Joint Computer Conference, Mayıs (1958).