Yazar arşivleri: Nuh Azgınoğlu

WordPress yazınıza kaynak kod ekleme: Pastacode Eklentisi

WordPress’te yazınıza kaynak kod eklemek için Pastacode eklentisini kullabilirsiniz. Kurulumu ve kullanımı oldukça basit bir eklenti. Öncelikle WordPress admin panelinizden Pastacode eklentisini arayıp kuruyoruz ve etkinleştiriyoruz. Kullanım için herşey hazır. Artık yazı yazma panelinde aşağıdaki resimde görülen bir logo eklendi.

Bu butona tıkladığımızda bir menü açılıyor. Eğer bir yerden alıntı yapacaksak (Github vs.) onlardan birini seçiyoruz. Kendimiz kod yazmak istiyorsak yada başka bir yerden kopyalayıp buraya yapıştıracaksak Write code’u seçiyoruz. Aşağıda gibi bir panel açılıyor. Select a syntax seçeneğinde hangi dilde bir kod yazacaksak onu seçiyoruz. Kod kısmına da kodu yapıştırıyoruz. Diğer seçenekler de opsiyonel. Hepsi bu kadar.

Uçurumun kenarındayım Hızır

[pastacode lang=”markup” manual=”U%C3%A7urumun%20kenar%C4%B1nday%C4%B1m%20H%C4%B1z%C4%B1r%0AUlu%20dilber%20kalesinin%20burcunda%0AMuhte%C5%9Fem%20belaya%20naz%C4%B1r%0ATopuklar%C4%B1m%20bo%C5%9Flu%C4%9Fun%20avcunda%0ADerin%20yar%20ad%C4%B1m%C4%B1%20%C3%A7a%C4%9F%C4%B1r%C4%B1r%0ADikildim%20parmaklar%C4%B1m%C4%B1n%20ucunda%0ABir%20gamzelik%20r%C3%BCzg%C3%A2r%20yetecek%0AHa%20itti%20beni%2C%20ha%20itecek%0AU%C3%A7urumun%20kenar%C4%B1nday%C4%B1m%20H%C4%B1z%C4%B1r%0ACivan%20haz%C4%B1r%0ADivan%20haz%C4%B1r%0AFerman%20haz%C4%B1r%0AKurban%20haz%C4%B1r%0A%0AU%C3%A7urumun%20kenar%C4%B1nday%C4%B1m%20H%C4%B1z%C4%B1r%0AG%C3%BCzelli%C4%9Fin%20zulme%20%C3%A7ald%C4%B1%C4%9F%C4%B1%20s%C4%B1n%C4%B1r%0ABa%C5%9F%C4%B1m%20d%C3%B6ner%2C%20beynim%20bulan%C4%B1r%0AEl%20etmez%0AGel%20etmez%0AG%C3%BClce’m%20uzaktan%20dolan%C4%B1r%0AU%C3%A7urumun%20kenar%C4%B1nday%C4%B1m%20H%C4%B1z%C4%B1r%0AG%C3%BClce%20bir%20davet%0AMecaz%20de%C4%9Fil%0AMaraz%20de%C4%9Fil%0AG%C3%BClce%20bir%20afet%0APeri%20de%C4%9Fil%0AHuri%20de%C4%9Fil%0AG%C3%BClce%20beyaz%20sihir%0AG%C3%BClce%20%C3%B6l%C3%BCmc%C3%BCl%20naz%0ABuram%20buram%20zehir%0AYar%20y%C3%BCz%C3%BCnde%20infaz%0A%0ABir%20gamzelik%20r%C3%BCzg%C3%A2r%20yetecek%0AHa%20itti%20beni%2C%20ha%20itecek%0AG%C3%BCzelli%C4%9Fin%20zulme%20%C3%A7ald%C4%B1%C4%9F%C4%B1%20s%C4%B1n%C4%B1r%0AU%C3%A7urumun%20kenar%C4%B1nday%C4%B1m%20H%C4%B1z%C4%B1r%0ABen%20fakir%0AEn%20hakir%0ABin%20taksir%0AAte%C5%9Ften%0AKalle%C5%9Ften%0AM%C4%B1zrakla%20g%C3%BCrzden%0ADabbet%C3%BClarz’dan%0ADeccal%E2%80%99dan%2C%20yedi%20d%C3%BCvelden%0AKorku%20nedir%20bilmeyen%20ben%0ATir%20tir%20titriyorum%20G%C3%BClce%E2%80%99den%0A%C3%96d%C3%BCm%20patl%C4%B1yor%20G%C3%BClce%E2%80%99ye%20bakmaktan%0ANutkum%20tutuluyor%2C%20%C3%BCrperiyorum%0ASaniyeler%20g%C3%B6zlerimde%20birer%20can%0AHer%20saniyede%20bir%20can%20veriyorum” message=”Ömer Lütfi METE” highlight=”” provider=”manual”/]

wget -O: command not found hatası

wget ile ilgili sitedeki veriyi indirirken -O command not found hatası aldım. ‘O’ parametresi dosyayı indireceğiniz dizini ayarlamanıza yarıyor. Aşağıdaki şekilde link’e apostrof eklenmesi ile birlikte sorun çözülmüş oldu.

[pastacode lang=”bash” manual=”wget%20’http%3A%2F%2Fblabla.com.do%3Fsadsas-compressed’%20-O%20temp” message=”” highlight=”” provider=”manual”/]

Linux / Windows – Youtube’dan mp3 indirme

LINUX İÇİN

Linux’ta bu işlem oldukça basit. Öncelikle youtube-dl adlı programı kuruyoruz.

[pastacode lang=”bash” manual=”sudo%20apt-get%20install%20youtube-dl” message=”” highlight=”” provider=”manual”/]

Kurulumdan sonra bir dizin oluşturup dizin içerisinde aşağıdaki şekilde programı çalıştırıyoruz. Komutun sonundaki linki indireceğiniz mp3’ün linki ile değiştirmeyi unutmayın.

[pastacode lang=”bash” manual=”youtube-dl%20–extract-audio%20–audio-quality%200%20–audio-format%20mp3%20https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fasdas” message=”” highlight=”” provider=”manual”/]

WINDOWS İÇİN

Windows’ta ise YoutubeByClick programını kullanabilirsiniz. Programı bağlantıdan indirip kuruyorsunuz. Kurulum aşamasından sonra programı başlatıyorsunuz. Youtube’dan müzik dinlerken o müziği indirmek mi istediniz, sadece linki kopyalıyorsunuz. Kopyalar kopyalamaz küçük bir pencere açılıyor ve mp3 olarak mı yoksa video olarak mı indirmek istediğinizi soruyor. Tıklıyorsunuz ve işlem tamam.

Nevşehir Gezi Rehberi

Bu yazıda Nevşehir Kapadokya bölgesinde gezmeniz gereken yerleri sıralayacağım. Öncelikle belirtmek isterim ki gezilecek birçok yer bulunmaktadır ve hepsi aşağıda yer almamaktadır. Listedeki sıralama takip edilirse güzel bir güzergah elde edilmiş olur. Liste zamanla güncellenecektir. Ayrıca balon ve atv turu tavsiye edilir.

AVANOS

  • Irmak Kenarı
  • Asma Köprü
  • Çanak Atölyeleri
    • Güray Müze
    • Şaban Ustanın Yeri
    • Chez Galip

  • Zelve Açık Hava Müzesi

GÖREME

  • Açık Hava Müzesi
  • Panorama
  • Kiliseler

  • Uçhisar Kalesi
  • Güvercinlik Vadisi

ÜRGÜP

  • Üç Güzeller (Ürgüp Yolu)
  • Temenni Tepesi
  • Ürgüp Turu
    • Asmalı Konak

  • Hacıbektaş Veli Hz. Türbesi
  • Kaymaklı Yer Altı Şehri
  • Derinkuyu Yer Altı Şehri

NEVŞEHİR MERKEZ

  • Alışveriş
    • Kapadokya Forum
    • Nissara AVM

Samsung Galaxy S9 Plus Maceram / Yorumlarım

Geçtiğimiz günlerde LG G2 maceramın sonuna geldiğimi ve kullandığım süreçteki yaşadıklarımı yazmıştım. Yeni telefon alma sürecinde baya bir araştırma yaptım ve kararsız kaldım. Önceliğim kamerasının iyi olması oldu ve seçimimi de buna göre yaptım. İlk etapta 2500 liralık bir bütçe ayırmayı düşünürken netice itibariyle Samsung Galaxy S9 Plus‘a kadar çıktım. Kamerası iyi olsun diyerek Huawei Mate 10 Pro ve Samsung S9 olarak ikiye düşürmüştüm seçenekleri, önce Samsung olsun sonra da çift kamera olsun diyince Samsung Galaxy S9 Plus’ta karar kıldım. Telefonu kısa bir süredir kullanıyorum ve şimdiye kadar ki olan yorumlarımı belirteceğim, kullanım sürem boyunca da listeyi güncelleyeceğim.

  • Çift kamera olması çok güzel profil fotoğrafları çekilmesini sağlıyor.
  • İris tanıma ve parmak izi okuma özellikleri kullanımı kolaylaştırıyor. Olmazsa olmaz şeyler değil ama çok kullanışlı.
  • Telefonla şu an oynayamayacağınız oyun yoktur sanıyorum (Temmuz 2018).
  • Ağır oyunlarda telefonun ısındığını söyleyebilirim. Daha az ısınsa daha güzel olurdu ancak yapacak çok da birşey yok sanıyorum. Bu ısınma telefona uzun vadede zarar verir mi bilemiyorum.
  • Samsung S9 almaya karar vermişseniz bence S9 plus alın yoksa S9 almaya gerek yok. S8 yada S8 Plus’ı tercih edin. Şahsen arkada çift kameralı bir telefon almayacak olsam Samsung Note Fan Edition alacaktım (Temmuz 2018 itibariyle).
  • Bir müddet kullandıktan sonra, arada mobil internete bağlı olduğu halde cihazın internete bağlanamadığını farkettim. Telefonu kapatıp açınca sorun düzeliyor (veya uçak moduna alıp tekrar eski hale döndürülünce). Her ne kadar Android’li sistemlerde böyle sorunlar görülse de S9 Plus’ta böyle bir sorun ile karşılaşacağımı hiç düşünmemiştim. Açıkcası canımı da sıkmış durumda bu problem. Belki sonra gelecek bir güncelleme ile düzelir (yaklaşık 6 ay kullanımdan sonra hala devam ediyor).
  • Gece fotoğrafları çekerken bazen yansıma çıkıyor ekrana. Bu benim telefondan kaynaklı mı yoksa genel bir problem mi henüz anlamış değilim. İnternette yaptığım araştırmada lens kaynaklı olduğu ve normal bir durum olduğuna dair de yazılar okudum ama ne kadar doğru bilmiyorum. Benim telefona mahsus bir problemse garantiye göndermeyi düşünüyorum, eğer genel bir problemse kamerası bu kadar övülen bir telefonda böyle bir problemin çıkması büyük ayıp gerçekten. Sorunun kaynağını öğrenebilirsem buradan paylaşacağım.
  • Aralık 2018 itibariyle S9 plus’a One UI ve Android 9 Pie Update gelmiş bulunmaktadır. One UI ile önceki arayüz değişmiş vaziyette ve bunun haricinde en büyük değişim kamerada diyebilirim. Kameraya yapay zeka özelliği kazandırıldığı söyleniyor. Henüz test edemesem de kamera hakkındaki ilk izlenimim olumsuz yönde diyebilirim. Daha önce karanlık ortamlarda güzel fotoğraflar çekerken şimdi sanki kalite bozulmuş gibi diyebilirim. Bunun haricinde daha önce sizlere bahsettiğim problemlere henüz rastlamış değilim. Onları da deneyimledikten sonra sorunların çözülüp çözülmediğini buradan bildireceğim.

Gülistan – Şirazlı Sadi

Vakit öldürmek için birşeyler ararken elime bu kitap geçti. Şirazlı Sadi‘nin Gülistan kitabının çocuk versiyonu. Şirazlı Sadi’yi duymuştum ama kim olduğunu ve neler yaptığını bilmiyordum. Kısa bir tanıtımla kim olduğunu, neler yaptığını ve hangi kitapları yazdığını öğrenmiş oldum. İçinde Gülistan adlı eserinden kısa hikayeler ve anılar mevcut. Başta da dediğim gibi bir çocuk kitabı ve çocuklarınıza okutabileceğiniz bir kitap. Ama ne diyelim öğrenmek isteyen herşeyde öğrenilebilecek birşey bulur. 🙂

Parçacık Sürüsü Optimizasyon Algoritması (Particle Swarm Optimization Algorithm)

Parçacık Sürüsü Optimizasyon Algoritması(PSO), kuş sürülerinin davranışlarından esinlenilerek ortaya çıkarılmış bir algoritmadır. Popülasyon tabanlıdır ve skotastik bir yapıya sahiptir. Sosyal sistemler bireyin çevresiyle ve diğer bireylerle olan etkileşimini ve davranışını incelemektedir. Bu davranışlara sürü zekası denmektedir. Sürülerden esinlenilerek ortaya çıkarılan iki popüler optimizasyon yöntemi vardır. Bunlar; Karınca Koloni Optimizasyonu ve Parçacık Sürü Optimizasyonudur.PSO sürünün besin kaynağı ararken ortaya koyduğu davranış üzerine kuruludur. PSO, evrimsel algoritmalarla bir çok benzerlik göstermektedir. PSO’nun adımları aşağıdaki gibidir. taşıma şirketi

Algoritmada bahsedilen parçacıklar sürüdeki bireylere işaret etmektedir.

PSO KONTROL PARAMETRELERİ

  • Parçacık Sayısı : Problemin çeşidine göre ayarlanmalıdır. Bazı problemlerde 10 parçacık yeterliyken, bazılarında 20-40, bazılarında ise 100-200 değerleri gerekmektedir.
  • Parçacık Boyutu : Optimize edilecek probleme göre değişir.
  • Parçacık Aralığı :Probleme göre farklı boyut ve aralıklarda ayarlanabilir.
  • Vmax : Bir iterasyonda bir parçacıkta meydana gelecek maksimum hızı belirler. Genellikle parçacık aralığına göre ayarlanır.
  • Öğrenme Faktörleri : Denklemde görülen c değerleridir. Genellikle 2 olarak seçilirler. Fakat farklı değerler de alabilirler. Yaygın olarak [0,4] aralığında alınır.
  • Durdurma Kriteri : İki şekilde yapılabilir; Birincisi başlangıçta maksimum iterasyon sayısı belirlenir ve algoritma bu sayıya ulaştığında sonlandırılır. İkincisi ise değerlendirme fonksiyonu istenilen değere ulaştığından algoritma sonlandırılır.

Algoritmanın Pseudo Code’u aşağıdaki gibidir.

Begin
   While Durdurma kriteri sağlanmıyorsa do
      Begin
      for i = 1 to parçacık sayısı 
         Uygunluk Değeri := f(Xi); 
         Pi ve gi’yi güncelle;
         I denklemini kullanarak hızı güncelle;
         Parçacığın koordinatını güncelle;
         i= i+1;
   end while
end

Parçacık Sürüsü Algoritması bir başlangıç popülasyonuyla başlatılır ve algoritmanın çalışmasıyla, çözümler güncellenir ve optimum çözüm bulunmaya çalışılır. Her döngüde parçacıkların konumları, iki en iyi(best) değere göre güncellenir. Bu değerlerden ilki pbest, o ana kadar parçacığın elde ettiği en iyi çözümü sağlayan konum koordinatlarıdır. Diğer değer ise popülasyon tarafından elde edilen en iyi çözümü sağlayan konum koordinatlarıdır. Diğer değeri local en iyi(best) olarak kabul edersek, bu değer ise global en iyi olarak kabul edilir.

Aşağıda D adet parametrede oluşmuş, n adet parçacığın oluşturduğu popülasyon görülmektedir.

Popülasyon matrisine göre i. parçacık   Xi = [ Xi1,Xi2,…,…,X1D] şeklinde ifade edilir. En iyi değeri veren parçacığın pozisyonu için de pbest  şeklinde bir matris oluşturulur. Yine aynı şekilde yukarıdaki denklemde verilen hız parametresi de vektörle ifade edilir.

Denklemler de geçen C değerleri öğrenme faktörleridir. Bu değerler her parçacığı en iyi konuma çeken stokastik hızlanma terimlerini ifade eden sabitlerdir. İlk c değeri parçacığın kendi tecrübesine göre hareket etmesini, diğeri ise sürüdeki diğer parçacıkların tecrübelerine göre hareket etmesini sağlar. Bu sabitlerin değerleri belirlenirken dikkat edilmelidir. Düşük değerler seçilmesi durumunda hedefe doğru dolaşarak gider, böylelikle farklı yerler gezilerek, farklı kaynak bulma imkanı doğabilir. Fakat bu durum hedefe ulaşma süresini uzatır. Bu değerlerin yüksek seçilmesinde ise hedefe doğru hızla gidilir fakat bu durumun, hedefin atlanıp geçilmesine de sebep olabileceği unutulmamalıdır. Yapılan çalışmalar sonrasında elde edilen verilere göre en uygun c değerleri 2 olarak bulunmuştur. Ayrıca denklemde bulunan rand değerleri [0,1] arasında düzgün dağılımı rastgele değerlerdir. Denklemlerde geçen k değerleri ise iterasyon sayısını bildirmektedir.

PARÇACIKLARIN HIZ VE KOORDİNATI

Parçacıkların hız ve koordinat hesaplamaları yukarıda verdiğim I ve II numaralı denklemler ile yapılmaktadır. Yeni konum yeni hız ve bir önceki koordinat bilgisiyle hesaplanmaktadır. İkinci denklem bunu göstermektedir. x(k+1) bir sonraki koordinat bilgisi, mevcut koordinat bilgisi x(k) ile parçacığın o andaki hızı ile toplanarak bulunmakta.

İlk denklem ise mevcut hızı hesaplamaktadır. c1 ve c2 değerleri global en iyiye gidiş için önem arz etmektedir. Bu yüzden dikkatli seçilmelidir. Daha önce bahsettiğim gibi bu değerler genelde 2 seçilirler.

Yukarıda görüldüğü üzere verilen hız denklemi pbest ve gbest  değerlerine bağımlıdır. Bu yüzden tüm elemanlar hesaba katılmamaktadır. Bu yüzden formülü aşağıdaki şekildeki gibi de kullanabiliriz. Bu şekildeki kulanım sayesinde yeni  hız bulunurken sadece en iyilerin kullanımından kurtarılmış olacaktır. Formüldeki x değeri orantı sabiti, qi değeri ise pbest değerlerinin ağırlıklı toplamı olarak kullanılmaktadır.

Parçacık Sürüsü Optimizasyonu Algoritması’nda bir diğer önemli nokta da komşuluk seçimidir. Üzerinde çalıştığımız probleme göre komşuluk seçimi stratejisi belirlenir. Komşuluk seçimi için genel olarak kullanılan birkaç metod vardır.

KAYNAKLAR

  • Particle Swarm Optimization and Differential Evolution Algorithms: Technical Analysis, Applications and Hybridization Perspectives
  • Parçacık Sürüsü Optimizasyon Algoritması ve Benzetim Örnekleri – Seçkin Tamer-Cihan Karakuzu
  • Parçacık Sürü Optimizasyonunda Yeni Bir Birey Davranış Biçimi Önerisi – Ö.Tolga Altınöz-A.Egemen Yılmaz
  • http://www.swarmintelligence.org
  • http://wikipedia.org