Şimdi Ara

bir yazılım kendisini daha iyi bir yazılım haline dönüştürebilir mi?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
59
Cevap
0
Favori
938
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 123
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • Diyelimki bir PC tasarladık. Bu öyle bir PC ki kendi enerji kaynağını temin edecek bütün verilere sahip. Üstelik bunu nükleer yolla yapabiliyor.Yani enerji problemi yok.Olan kadarınıda uzun aralarla dert ediyor.Çok güçlü sistemlerle ultra hızlı işlem yapma gücü olduğu gibi yedek işlemci sayesindede gerektiğinde yani kendi işlemcisinden yada RAM inden daha gelişmiş bir ürün bulabildiğinde kendi kendine yaptığı bir operasyonla kendini UPGRADE edebiliyor.Kendi sistemi ve yazılımı hakkında başlangıçta kendisinin geliştiricisi olmuş insanların sahip olduğu butun bilgilere sahip.

    Butun bunların yanında düşünmek için geliştiricilerin yazdığı yazılımı ondaki mantıksal döngüleri kullanmak zorunda.Kendisine yeni bir mantıksal döngü oluşturabilmek içinde yine önceki hazır bulduğu mantığa muhtaç . Artık geliştiriciler geliştirme işlemine son vermiş durumdalar. Programın bundan sonraki aşaması bekleyip makinanın kendi kendini geliştirip geliştiremeyeceğini görmek.

    Sizce bu makina zamanla yeni ve daha güçlü yazılımlar üreterek kendini daha zeki bir hale getirebillir mi? Kendi hayatını kolaylaştıracak yeni makinalar icad edebilir mi?







  • bence edemez çünkü bunu yapabilmesi için "düşünebilmesi" gerekir ki, düşünmek database karıştırmaya ve en olası sonucu seçmeye benzemez. satranç programları buna örnektir. en olası şıkkı seçerler ve hiç bir makine mat olduğunda üzülmez.

    yeni mantıksal döngülerden bahsetmişsin ama her yeni mantıksal döngüyü oluşturması için kendisine bir sebep tayin etmesi yani gene düşünmesi gerekir, iradesi olması gerekir. sanırım bu dediklerin yani insan gibi özgür iradesiyle strateji üretip hayata geçiren makinalar bilim-kurgu kitaplarında ve filmlerde kalacak. ama çok daha gelişmiş cpu larla da tanışacağız. ama bunların hiç biri insan gibi özgür irade ve düşünme kabiliyetine sahip olamayacak.



    < Bu mesaj bu kişi tarafından değiştirildi C4 -- 30 Mayıs 2006; 17:58:41 >
  • bir yazılım kendini daha iyi bir hale dönüştürebilir tabi.

    yazılımlar ilk önce raw denilen haliyle pc ye kurulur. ve pc kullanıcısınadn aldıgı veriler sayesinde kendini o pcye daha uygun hale getirebilir.

    günümüzde yazılımların bu özelliklerine "kişiselleştirme", diye kalıp yapmışlar. ama bu kadar basit değil tabi.
    bi yazılım kendini çok daha karmaşık bir şekilde sistem için özelleştirebilir. tabi burada kilit nokta kullanıcıdan ya da sistemden veriler almak.

    hayret ne zamandır yazılım konusu açılmıyodu burada.
  • lacrıma, evet doğru
    Bir zamanlar internetten indirilebilen bir yapay zeka programı vardı. Bu program kullanıcı ile etkileşime girdikçe kapasitesini geliştiriyordu ve zaman içerisinde çok daha gelişmiş bir yapay zeka programı haline geliyordu.
  • Lacirma ve Kaotika nın dediği gibi yazılımlar kendilerini geliştirebiliyor. Elde ettiği bilgileri bir yerde depoluyor ve onları daha sonra kullanabiliyorlar. Ben de karşılaştım bu tür yapay zeka programlarıyla. Yanlız bunlar yazılımcıya bağlı kalıyorlar. Gelişmeleri çok sınırlı.


    Sen bu seviyeden çok öte bir makinadan bahsediyorsun sanırım. Sonuçta bahsettiğin gibi bir yazılım var olabilir. Mantıksal açıdan bir engel yok.
    Yapılabilir mi? Bence yapılamaz...
  • yazılımlar kendilerini yazıldıkları şeyler doğrultusunda geliştiriyorlar. fişi pirizden çekeceğim zaman"hop dur bilader! n'apıyon?" diyemiyorlar. bu tamamen irade ile alakalı bir konu ve bu insandan başka bir varlığa verilemez.
  • Böyle bir şey asla olmaz. Verilen örneklerde de makina yada program insan zekasından faydalanıyor. Yoktan bilgi üretemezsiniz.

    Şöyle düşünelim. Bir program yaptık. Rastgele notalar üretip besteler yapıyor. Yıllarca da çalıştıralım. Bu programın yaptığı tonlarca beste içinde belki klasik haline gelmiş bestelerden daha güzel besteler bulunabilir.
    Ama program bu güzel besteleri seçip diğerlerinin içinden ayıklayamaz. Bu yüzden evrim geçirip kendini geliştiren bir kod yazılamaz. Çünkü neyin iyi, neyin faydalı olduğunu anlayamaz. Bir insanın yardımı gerekir hep.

    Evrime inanmıyorum fakat belki evrim geçirebilen, kendi kendini geliştirebilen (müdahale olmadan) bir bilgisayar kodu yazılabilir diye düşünüyordum. Ama yukarıdaki örneği düşününce yapılamıyacağına karar verdim. Bu anlamda yazılabilecek en optimum kod insana mümkün olduğunca fazla soru soran ve referans isteyen bir kod olmalıdır.




  • bilgisayar düşünemez sadece kendine verilen komutları yapar eğer bilgisayara önceden yeni bir yazılım yapması için neler yapacağı konusunda komut verildiyse tamam ama durduk yere kendisi hiç bir şey yapamaz, bilgisayarın düşünmek gibi bir yeteneği yok, öyle olsaydı bilgisayar bozulduğunda kendi kendini tamir ederdi,
  • İnsan ın düşünebilme sınırı nedir?bugüne kadar olan gelişmelere bakarsanız "sonsuz"...ya bir Pc ?gördüklerini kendi dataları ışığında değerlendirme özelliği...Bir programı bir kişi yapar ,veya bilemediniz 100 kişi ...Ya onların düşünemedikleri parametreler?Birbirinin tıpatıp kopyası insan gördünümüz mü hiç? ama bahsettiğiniz program aynı datalarla aynı sonuçları verir..İnsanda ise aynı datalardan farklı sonuç alabilirsiniz.Aradaki bariz fark budur diye düşünüyorum.Matematiksel olarak, 1 kişi düşünün bu bir bilgisayar olsun bundan milyarca yaptık sonuç hep aynı...bir de 2 insanı yanyana koyduk aynı bilgilerin ışığı altında ürettiklerini görünce ,sizce nasıl bi fark oluşur?Bilgisayar aritmetik ortalamayla bilgi üretirken ,insan geometrik ortalamayla bilgi üretir.Bir gün içindeki fark uçurum olur :) Birebirde bilgisayar üstün çıkabilir belki...İnsan sayısı arttıkça ,insan bilgisayar karşılaştırması 1 ile "sonsuz"un büyüklük karşılaştırması gibi olur.



    < Bu mesaj bu kişi tarafından değiştirildi Steinberger_2 -- 31 Mayıs 2006; 2:26:45 >




  • quote:

    Orjinalden alıntı: kara_eylül

    bilgisayar düşünemez sadece kendine verilen komutları yapar eğer bilgisayara önceden yeni bir yazılım yapması için neler yapacağı konusunda komut verildiyse tamam ama durduk yere kendisi hiç bir şey yapamaz, bilgisayarın düşünmek gibi bir yeteneği yok, öyle olsaydı bilgisayar bozulduğunda kendi kendini tamir ederdi,


    Biz düşünebiliyoruz ama kendi kendiimizi tamir etmeye kalkmıyoruz hastalandığımız zaman

    Benim bahsini ettiğim makinanın ana özelliği artık bağımsız olması enerji ihtiyacıının uzun aralıklarla ortaya çıkması ve bunu nasıl gidereceğini de zaten biliyor oluşu. Kendisindeki kodlarda son derece gelişmiş.Gerek bulacağı eklentilerle gerekse kendi yazdığı kodlarla kendini geliştirmesi gerekiyor. Fakat ne yazacağına hangi kodları dışarıdan bunyesine katacağına tamamen kendisi karar verecek.




  • quote:

    Orjinalden alıntı: Lacrima

    bir yazılım kendini daha iyi bir hale dönüştürebilir tabi.



    bu konunun ne niyetle açıldığı belli olduğu için cevaplar da o istikamette gelmiş. Normal bir yazılım sorusu olsa idi belkide böyle cevaplar gelmeyebilirdi.

    soruda sorulan nedir. ilk önce ona bakmak gerekir. soruda normal bir yazılımın kendini geliştirip geliştiremeyeceği soruluyor.

    bu soruya verilecek cevap bu istikamette olmalıdır. Normal şartlarda kullandığımız yazılımların hiçbiri kendini geliştirme özelliğine sahip değil. Mesela hiçbir windows işletim sistemi kendini kendiliğinden yeniliyerek bir üst basamağa terfi etmemiştir.

    demek ki cevabımız : asla bir yazılım kendini yenileyemez olacaktır.

    ancak: bazı programlar karşılaştıkları durumlara göre o zamanda pasif olan özelliklerini değişik şartlarda aktif hale getirerek kendini değiştirebilir.

    mesela bir satranç programı düşünelim. satranç kendini rakibinin zorluğuna göre ayarlayarak zor bir rakip geldiğinde kendisi de daha iyi bir performansta mücadele edebilir.

    ancak 2: eğer satrancın veya herhangibir yazılım içine kendini değiştirmeye göre programlanmışsa belirli bir ölçüde kendini geliştirebilir. fakat sıradan bir satranç hiçbir zaman kasparav u yenecek kadar kendini geliştiremez.

    veya office programı kendini geliştirerek windows un yerini alabilir mi ?

    ALAMAZ ...

    o kadddaaaaaaarrrrrr ....




  • Bilgisayarlar temel olarak komutlarını okuyarak ilerler.
    Eğer bir bilgisayarın kendini geliştirip yeni bir program oluşturabileceğini kabul edersek yapay zekayı kabullenmiş oluruz.

    Bazı özellikli programlara yapay zekalı deniyor ama bunlar yapay zeka değil. Var olan komutları kullanarak ilerler sonuç olarak.

    Yapay zekanın gerçekleştirilebilmesi, programın var olan komut dosyasının, yani kaynak kodu dediğimiz kısmını değiştirebilmesi gerekir.

    Mantıken bu çok zor bir durum. Zaten heniz bu gerçekleştirilemedi diye biliyorum. Yapay zeka diye adlandırılsalar da öyle değil aslında. Mesela Hit man adlı oyun yapay zeka ödülü almıştı sanırım. Ama bu gerçeğe yakınlığı, karakterlerin doğallık düzeyinin yüksek olmasından kaynaklanıyor. Yoksa bu tür oyunlar için kullanılan yapay zeka tabiri dahi bir yapay zeka değildir. Hiçbir zaman karşı tarafın oyuncusu komut verilmediği sürece sabit olan yerini değiştirip pusuya yatmaz. Eğer yapıyorsa da komut öyledir.




  • quote:

    Orjinalden alıntı: Deep Impact

    mesela bir satranç programı düşünelim. satranç kendini rakibinin zorluğuna göre ayarlayarak zor bir rakip geldiğinde kendisi de daha iyi bir performansta mücadele edebilir.

    ancak 2: eğer satrancın veya herhangibir yazılım içine kendini değiştirmeye göre programlanmışsa belirli bir ölçüde kendini geliştirebilir. fakat sıradan bir satranç hiçbir zaman kasparav u yenecek kadar kendini geliştiremez.



    Gary Kasparov, kendisini yenen Deep Blue adlı makinede hile yapıldığını söylemişti.

    Gerekçe olarak da kendisinin risk hamlesi yaptığını, riski bir bilgisayarın anlayamayacağını söylemişti.

    (Bu arada konu dışında bir satranç turnuvası yapılmıştı. Bir tanesini de biz düzenleyebiliriz.)




  • Peki madem kasparov diyoruz devam edelim. Kasparov veya muadili bir şahısla bizim PC miz ki kendisi süper bir PC dir, uzun bir dizi satranç oynayacaklar. Fakat biz kodlarımızı önceden yazdık.Bu kodlarda Rakip hamlelerini izleyen bir kamera ile aldığı verileri kendi kodlarına göre hamle sonuçlarını değerlendiren ve kaydeden bununla birlikte onun hamlesinide kaydeden sonunda ne olduğunu izleyen ve onuda kaydeden sonuçta ulaştığı durumu değerlendiren ve bir adım öne geçmesine vesile olan bir hamle idiyse kendi yazdığı kod dizisi ile bunuda databasine ekleyen bir çekirdek yazılım olsun. Bu şekilde oynama ya uzun zaman boyunca devam etseler bu mevcut kodlar izleme yöntemi ile kasparovdan tekniklerini öğrenip çok daha dikkatli ve hızlı çalılşan yapısı ile onu yenebilirmi.
  • Bence buradaki konu evrim ile alakalı değil. O yüzden hemen "böyle şey olmaz" diye ön yargılı cevaplar vermeyelim. Konu bence evrimden çok "bir bilgisayar öğrenebilir mi?" sorusunu soruyor. Çünkü burada bahsedilen olayla canlıların evriminin yakından uzaktan alakası yok. Bir kere evrimde canlılar "şu değişim benim için daha yararlı olur" deyip değişim geçirmezler.

    Cevabıma gelince evet bir bilgisayar programı kendı kendını geliştirebilir. Hatta bu olay bilgisayar oyunlarına kadar düşmüş durumda. Creatures oyununu oynayan varsa buradaki yaratıkların herhangi birşeyi öğrenebildiğini biliyordur. Hatta bu yazılımın programcıları aynı programı eurofigther uçağının simulasyonunu kullanmaya zorlamış ve program ilk bocalama devresini atlattıktan kısa bir süre sonra uçağı bir insandan daha becerikli bir şekilde kullanabilir hale gelmiştir ve bu işi kendi kedndine öğrenerek halletmişti.



    < Bu mesaj bu kişi tarafından değiştirildi pacman -- 31 Mayıs 2006; 10:51:03 >




  • quote:

    Orjinalden alıntı: pacman

    Cevabıma gelince evet bir bilgisayar programı kendı kendını geliştirebilir. Hatta bu olay bilgisayar oyunlarına kadar düşmüş durumda. Creatures oyununu oynayan varsa buradaki yaratıkların herhangi birşeyi öğrenebildiğini biliyordur. Hatta bu yazılımın programcıları aynı programı eurofigther uçağının simulasyonunu kullanmaya zorlamış ve program ilk bocalama devresini atlattıktan kısa bir süre sonra uçağı bir insandan daha becerikli bir şekilde kullanabilir hale gelmiştir ve bu işi kendi kedndine öğrenerek halletmişti.


    eğer programın kodlarında öyle birşey varsa yapabilir.

    mesela bir strateji oyununa strateji yüklemeden rakiplerinden öğrenerek kendini geliştirecek şekilde kodlarsan bir ölçüde başarılı olur.

    ancak burada mühim olan ilk programlanma şeklidir.

    geliştirilmeye açık mı değil mi?

    açık değilse aptal bir oyundan öte geçemez ...




  • quote:

    Orjinalden alıntı: pacman
    Cevabıma gelince evet bir bilgisayar programı kendı kendını geliştirebilir. Hatta bu olay bilgisayar oyunlarına kadar düşmüş durumda. Creatures oyununu oynayan varsa buradaki yaratıkların herhangi birşeyi öğrenebildiğini biliyordur. Hatta bu yazılımın programcıları aynı programı eurofigther uçağının simulasyonunu kullanmaya zorlamış ve program ilk bocalama devresini atlattıktan kısa bir süre sonra uçağı bir insandan daha becerikli bir şekilde kullanabilir hale gelmiştir ve bu işi kendi kedndine öğrenerek halletmişti.


    Ama sonuç olarak sabit bir komut dosyasını kullanarak yapıyor. Yani o öğrenme dediğimiz gelişim de zaten komutlarında var. Basit anlamda dersek, karşılaştığı durumlar arasındaki en uygun olanı kaydediyor. Yaptığı hareketler arasında en verimli olanı kaydediyor ve bir daha benzer bir durumla karşılaşınca kaydettiği verimli haliyle hareket ediyor.

    Bu bir yapay zeka değil.

    Eğer ki komut dosyasına yeni birşeyler ekliyorsa o zaman yapay zeka olur. Tıpkı beyinde olduğu gibi. Yoksa verilen komutu yerine getirmekten ileri gidemez.




  • İNSANLARDA BİR ŞEYLER ÖĞRENİRKEN TEMEL BAZI KAVRAMLARI KULLanıyorlar. hayat anlayışı o kavramlara göre şekil alıyor. eğer bilgisayar programınıda bazı temel kavramlar çerçevesinde yeni şeyler öğrenmeye programlarsan olabilir. şu anda sorun bu programı yazacak insan varmı. varsa pek tabi olur.
  • quote:

    Orjinalden alıntı: ybagiran

    İNSANLARDA BİR ŞEYLER ÖĞRENİRKEN TEMEL BAZI KAVRAMLARI KULLanıyorlar. hayat anlayışı o kavramlara göre şekil alıyor. eğer bilgisayar programınıda bazı temel kavramlar çerçevesinde yeni şeyler öğrenmeye programlarsan olabilir. şu anda sorun bu programı yazacak insan varmı. varsa pek tabi olur.


    İşte bu iş bu kadar basit değil. Yani öğrenmek nedir?

    Öğrenmek, aklını, hafızasına giren yeni verileri değerlendirerek daha önce hiç olmadığı bir şekli ortaya koymaktır. Yani aklın devamlı dinamik halinde olmasıdır. Yoksa bilgiyi alıp hafızaya atmak değildir.

    Bilgisayarda ise bu böyle değildir. Bilgisayar kaynak kod dediğimiz bir komut dizesi üzerine hareket eder. Bu komutlar, en nihayetinde transistörlere bağlıdır. Komutlar üzerinde değişiklik yapamadığı sürece yeni bir oluşum içine giremez bilgisayar. Yapay zeka adlı programlar da komut dosyasına bağlıdır. Verilen komutları değiştiremezler. Örneğin bilgisayar intihar etmez hiçbir zaman. Çünkü verilen komutlarda yoktur. Veya kendi menfaati zıttına hareket etmez. Verilen komuta aykırı hareket edemez.




  • arkadaşlar biilindiği gibi işlemcilerde yazılım esnasında kullanılan kodların içinden geçtiği mantıksal süreçleri içerir. zaten kodlarda bu verilerin hangi mantıksal süzgeçten geçeceğine belirlemekten başka bir şey değildir. konunun başında PC nin işlemcisini bile gerekli gördüğünde değiştirebileceğini yazmıştım. if else gibi mevcut bir kaç mantıksal sorgulamaya yeni mantıksal sorgular eklenmiş bir işlemciyi tanıyıp kendisi için alabilecek yada böyle bir şey bulmak için araştırma yapabilecek bir PC ama bu işlemleri daha önce bu yönde yazılmış kodlarla kendisi yapacak.
  • 
Sayfa: 123
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.