doç.dr.erkan Ülker, selçuk Üniversitesi mühendislik...
TRANSCRIPT
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 1
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 2
B-spline yüzey tahmini problemine yapay bağışıklık sistemi yaklaşımı
Yüzey uydurma problemlerinde, şekil tasarımı için optimize edilmiş bir yüzey elde
etmek için düğümlerin seçimi iyi bilinir. Büyük veri için bu problemle, olası yerel
optimumdan kaçınan ve aynı zamanda iteratif tarzda arzulanan çözümü elde eden
optimizasyon algoritmalarıyla uğraşılması gereklidir. Evrimsel optimizasyon algoritmaları
(Genetik algoritma, benzetim tavlama, Simulated Evolution), yapay sinir ağları (Kohonen
ağları, fonksiyonel ağlar) ve bulanık mantık (bulanık B-spline’lar) gibi hesaplamsal zeka
optimizasyon tekniklerinin çoğu probleme zaten başarıyla uygulanmaktadır. Bu makale, B-
Splinelar kullanılarak yüzey uydurma problemine “Yapay Bağışıklık Sistemleri (AIS)” olarak
bilinen diğer bir hesaplamsal zeka tekniğinin uygulanmasını sunmaktadır. Antikorlar olarak
düğüm yerleşim adaylarını ele alarak bireyleri oluşturduk ve sürekli problemi ayrık bir
problem içinde çözdük. Akaike’nin Bilgi Kriterini (AIC) kullanarak aday modeller arasında
en iyi modeli aradık. Bizim metodumuz, düğümlerin uygun yerlerini ve sayılarını otomatik
olarak ve eş zamanlı biçimde tanımlayabilir. Sayısal örnekler metodumuzun etkinliğini
göstermek için verilmiştir. Ayrıca önerilen metot ile genetik algoritma arasında bir kıyaslama
da sunulmuştur.
Giriş
Ters mühendislik uygulamalarında modellemenin başarısı tasarlanan eğri yada
yüzeyin veri noktalarına ne kadar yakınlaşabilindiğine bağlıdır[7]. Örneğin uydurulan eğri
yada yüzey ne kadar iyi uymaktadır. Yüzey rekonstrüksiyon olarak da bilinen bir yüzeyin 3D
şeklini geri alma problemi, son birkaç yıldır daha fazla ilgi almıştır. Burada iki farklı yönelim
söz konusudur[8]. Birinci yönelimde yazarlar, verilmiş bir kesitler kümesinden bir yüzey
modeli bulma problemini ele almışlardır. Diğer farklı yönelimler verilmiş bir veri noktaları
kümesinden yüzeyler inşa etmeyi içermektedir. Bu veri noktalarının doğasına bağlı olarak iki
farklı yaklaşım kullanılmıştır: enterpolasyon ve tahmin. Tahmin teknikleri özellikle veri doğru
olmadığı ama ölçüm hatalarına bağlı olduğu zaman tavsiye edilmektedir. Tahmin tekniğini
seçmede diğer önemli neden eğri formları gibi sonsuz sayıda veriyi enterpole ederek yüzeyler
bulmada gereksinim duyulan büyük hesaplamsal efor olmasıdır[8].
Elastikiyet ve kontrol açısından avantajları sebebiyle B-spline’lar CAD veri temsili
için endüstri standardı olmuşlardır. Maalesef B-spline eğri yada yüzey uydurma çok iyi bir
parametrizasyon modeli gerektirmektedir. Parametrelerin seçimi üzerine sayısız çalışmalar
yapılmıştır. Yine de özellikle noktalar düzensiz dağıldığı ve karmaşık bir temel eğri yada
yüzey üzerinde uzandıkları zaman parametrelerin daha iyi hesabı günümüz yaklaşımları ile
zor olmaktadır.
Bu problemlere açık çözüm, önemli bir zaman ve bellek korumamızı bize sağlayan bir
tahmin şeması göz önüne almaktır. Bu yaklaşımda yüzey rekonstrüksiyon metotlarının amacı
aşağıdaki gibi belirlenmiştir[8]: bilinmiyen bir U yüzeyi üzerinde uzandığı varsayılan bir X
örnek noktalar kümesi verildiğinde U ‘ya yakın olan bir S yüzey modeli inşa etmektir. Tabii ki
bu, “şekil kalitesi” ‘ni feda etmeksizin imalat işlemi ile uyumlu verilmiş bir tolerans hatasını
içermektedir. Büyük veri için bu problemle, olası yerel optimumdan kaçınan ve aynı zamanda
iteratif tarzda arzulanan çözümü elde eden optimizasyon algoritmalarıyla uğraşılması
gereklidir. Seyrek veya gürültülü veriye B-spline eğri uydurulması çok yüksek hesaplama
karmaşıklığı ile nonlineer bir optimizasyon problemi olmasından dolayı[5,6,9], optimal
enterpolasyon sonuçlarını elde etmek için deterministik olmayan optimizasyon stratejileri
uygulanmalıdır. Burada hesaplamsal zekadan alınan metotlar bu problemin çözümüne çok
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 3
umut verici çareler vermektedir. Makalede hesaplamsal zeka teknikleri ile kastımız evrimsel
algoritmalar ve sinir ağları gibi sayısal doğal esintili stratejileri içermektedir.
Bu probleme en dikkat çekici ve umut verici yaklaşımlardan birisi sinir ağlarına
dayanmaktadır. Geleneksel yüzey tahmini konusuna odaklanmış çalışmalar daha önceki
yıllarda yayınlansada [34] B-spline eğri tasarımında sinir ağlarının ilk kullanıldığı çalışma
[13] ve [18] ‘da verilmiştir. Bundan sonra Kohonen ağları [10, 11, 14, 15], self-orgaized maps
[16,17] ve Fonksiyonel ağların [12] kullanıldığı çalışmalarla yüzey tasarımlarına genişleme
sağlanmıştır. Yapay sinir ağı ile ilgili son çalışma Kohonen sinir ağının sayısal kontrolü
üzerinedir [12].
Evrimsel algoritmalar [19] da çok amaçlı optimizasyon için doğal seçimdir. Çünkü her
bir adımda algoritmalar bir populasyon tutarlar, bu populasyon optimal çözüm olan tek bir
çözüm yerine bir çözümler kümesidir. CAD’de tek amaçlı evrimsel algoritmanın kullanımı
kendisinin sağlamlığı ve lineer olmayan amaç fonksiyonlar ve kısıtlamaları verimli ele alışı
sebebiyle güçlü bir teknik olarak ispatlanmıştır [20-25]. Genetik algoritma[5,9,21,22],
simulated annealing, simulated evolution[22] gibi evrimsel optimizasyon tekniklerinin çoğu
bu probleme başarıyla uygulanmaktadır. Modified continuous reactive tabu search [23], Multi
objective optimization [6] ve egemen noktanın seçimine dayanan hata-sınırlı metot [24] gibi
geleneksel optimizasyon yöntemleri ilede probleme çözümler aranmıştır.
Son yıllarda bilim adamları, kompleks problemlerin çözümünde tabiattan
esinlenmelerinin neticesinde Yapay Sinir Ağları ve evrimsel algoritmaların oluşturulmasından
sonra yeni sayısal zeki paradigmalar geliştirmek için güçlü bir metafor olan bağışıklık
sisteminin kullanımına önem vermişlerdir. Bağışıklık sistemi oldukça güçlü, adaptif, dağıtık,
bellek bulunduran, kendi kendine organize olan, güçlü örüntü tanıma yeteneğine sahip ve
yabancı etkenlere karşı tepki vermek için evrimsel bir yapısı olan bir sistemdir [26]. Bu
sistemin yetenekleri bilim adamları, mühendisler, matematikçiler, filozoflar ve diğer
araştırmacıların ilgisini çekmiştir. Bağışıklık prensiplerini uygulayan araştırma alanları hızla
gelişmektedir ve bu alan Yapay Bağışıklık Sistemleri – YBS (Artificial Immune Systems)
veya Bağışıksal Hesaplama (Immunological Computation) olarak bilinmektedir.
Bu makale, B-Splinelar kullanılarak yüzey uydurma problemine “Yapay Bağışıklık
Sistemleri (AIS)” olarak bilinen diğer bir hesaplamsal zeka tekniğinin uygulanmasını
sunmaktadır. Antikorlar olarak düğüm yerleşim adayları ele alınarak bireyler oluşturulmuş ve
[5] ve [9] deki gibi sürekli problem ayrık bir problem içinde çözülmüştür. Akaike’nin Bilgi
Kriteri (AIC) kullanarak duyarlılık ölçütü tanımlanmış ve her bir nesilde iyi olan aday
modellerden en iyi modele doğru arama gerçekleştirilmiştir. Bizim metodumuz, düğümlerin
uygun yerlerini ve sayılarını otomatik olarak ve eş zamanlı biçimde tanımlayabilir. GA,
popülasyonun tamamında arama yapmakta ve lokal optimalliğe takılmadan en iyi aday
çözüme doğru odaklanmaktadır. Yapay bağışıklık algoritmaları ise GA’ya göre daha fazla
lokal optimale ulaşabilmekte fakat global optimuma doğru nispeten daha az bir eğilim
göstermektedirler[27]. Literatürdeki çok amaçlı optimizasyon problemlerinde yapay
bağışıklık algoritmaları iyi sonuçlar vermiştir. Yapay bağışıklık sistemlerinin Genetik
algoritmaya olan doğal üstünlüğü ideal çözüme doğru tutarlı yakınsamasıdır. Bu nedenle B-
spline yüzey uydurma probleminde çözüme, genetik algoritmaya nazaran yavaş
yakınsamasına rağmen her yeni nesilde bulduğu çözüm genetik algoritmanın çözümünden
daha düzgün bir yüzey olmuştur. Sayısal örnekler metodumuzun etkinliğini göstermek için
verilmiştir. Ayrıca önerilen metot ile genetik algoritma arasında bir kıyaslama da
sunulmuştur.
Makalenin düzenlenişi şöyledir. Nokta verisinden B-spline yüzeylerin tasarımı için
genel bir giriş sunulmuştur, takibinde yapay bağışıklık sistemleri ile önerilen parametre
optimizasyonu sunulmuştur. Deneysel sonuçlar ve tartışmalar da sunulmuştur.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 4
B-spline yüzey tahmini
Ekran üzerinde kolayca ve bütünüyle inşa edilebilen karmaşık topoloji ve geometri ile
güçlü bir sanal geometrik modelleme sistemindeki çabaya rağmen yüzey modellemedeki en
gelişkin teknikler hâla gerçek dünya nesnelerinin taranması ve taranan noktaların
düzgünleştirilmesini ağır bir biçimde sağlamaktadırlar[1]. Matematiksel dilde geometri
uydurma bazı doğruluk kısıtlamaları altında uydurma hatasının minimumlaştırılması olarak
formülleştirilebilir. Parametrik yüzey uydurma için tipik bir hata ölçüsü şöyledir:
x yN
i
N
j
jijiji FyxSwQ1 1
2
,,2 , (1)
Örnek noktalardan yüzey uydurma yüzey rekonstrüksiyonu olarak da bilinir. Bu
makale, bu probleme karşı yerel bir uydurma ve harmanlama yaklaşımı uygular. Okuyucular
detaylar için [2] ve [3] ‘e bakabilirler.
A B-Spline curve, C(u), is a vector valued function which can be expressed as[4];
11
0
, ,,)()(
mk
m
i
iki uuuPuNuC (2)
where Pi represents control points (vector) and Ni,k is the normal k degree B-spline
basis functions and Ni,k can be defined as a recursive function as follows:
)()()(
0
,,1)(
1,1
1
1,
1
,
1
1,
uNuu
uuuN
uu
uuuN
otherwise
uuuifuN
ki
iki
ki
ki
iki
i
ki
ii
i
(3)
where ui represents knots that are shaped by a knot vector and U= {u0,u1,…,um}.
A definition of a B-Spline curve in equation (2) can be organized using rational basic
functions as follows:
m
j kj
ki
ki
m
i kii
uN
uNuRanduRPuC
0 ,
,
,0 ,
)(
)()(),(*)( (4)
Any B-Spline surface is defined similarly by:
n
r
m
s lskr
ljki
ljkiljkiji
vNuN
vNuNvuRandvuRPvuS
0 0 ,,
,,
,,,,,,,
)(*)(
)(*)(),(),,(*),(
(5)
Yukarıdaki denklemlerden görülebileceği gibi, B-spline yüzey; kendisinin derecesi,
düğüm değerleri ve kontrol noktaları ile eşsiz olarak verilir, sonra bu parametreler vasıtasıyla
yüzey biçimlendirilir. Yüzey rekonstrüksiyon problemlerinde girdi (input), organize
edilmemiş bir noktalar kümesidir, bu nedenle yüzey derecesi, düğümler ve kontrol
noktalarının hepsi bilinmiyenlerdir.
Denklem (3) de düğümler sadece kesirlerin payında değil paydasındada vardır. Bu
yüzden Denklem (5) ile verilen bir spline yüzey nonlineer bir düğümler fonksiyonudur.
Uydurulacak verinin bir x-y düzlemi üzerindeki D=[a,b]x[c,d] dikdörtgensel alanın mesh
noktaları üzerinde verilmiş olduğunu kabul edersek, aşağıdaki gibi bir ifade yazılabilir[5].
.,,2,1;,,2,1,, ,, yxjijiji NjNiyxfF (6)
Bu denklemde f(x,y) fonksiyonu verinin temelinde olan (bilinmiyen) fonksiyondur, Nx
ve Ny ise sırasıyla x-yönü ve y-yönü için veri noktalarının sayısıdır ve i,j bir ölçüm hatasıdır.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 5
Denklem (5), en küçük kareler metodu vasıtasıyla Denklem (6) ile verilen veriye uydurulur.
B-spline eğri’nin parametrizasyonu için uniform, kirişsel yada centripetal parametrizasyon
metotlarından biri tercih edilerek Denklem (2) deki eğri ve Denklem (5) deki yüzey
üretilmelidir. Sonra Denklem(1) vasıtasıyla kalanların karelerinin toplamı hesaplanır.Q2’nin
alt indisi verinin boyutu anlamındadır.
xxxxi mnmmi ,,2,1 ve yyyyj mnmmj ,,2,1 sırasıyla x-
yönü ve y-yönü için bir spline’ın düğümleri olsunlar. Burada, nx terimi [a,b] aralığında
yerleşmiş olan xi ni ,,2,1 interior düğümlerin sayısıdır. Benzer şekilde ny terimi [c,d]
aralığında yerleşmiş olan yj nj ,,2,1 interior düğümlerin sayısıdır. Bundan başka mx
ve my sırasıyla )(, xN imx ve )(, yN jmy
Bspline’ının düzenleridir. [a,b] kapalı aralığının
sonlarında a ve b değerlerine, ve [c,d] aralığının sonlarında c ve d değerlerine düğümler
eşitlenir.
.
,
.
,
1
01
1
01
yyy
y
xxx
x
mnn
m
mnn
m
d
c
b
a
(7)
Minimizasyon denklemi (1) in koşulu ile tanımlanmış bir ci,j terimi B-spline katsayıları
olarak denklem (5)’e eklenir. İyi bir model bulmak için, bununla beraber interior
xi ni ,,2,1 ve yj nj ,,2,1 düğümlerin sayıları ve yerleri, mümkün olduğu
kadar kesin tanımlanmalıdır.
B-spline yüzey uydurma probleminde minimize edilen amaç fonksiyon denklem (1)
dir ve amaç fonksiyonun değişkenleri B-spline katsayılar ve içteki düğümlerdir. B-spline
katsayıları lineer parametrelerdir. Bununla birlikte içteki düğümler nonlineer parametrelerdir,
çünkü S(u,v) fonksiyonu nonlineer bir düğümler fonksiyonudur. Bu minimizasyon problemi
multimodal optimizasyon problemi olarak bilinmektedir [6].
Yapay Bağışıklık Sistemleri
İnsan bağışıklık sistemi neredeyse sınırsız sayıda virüs, bakteri, mantar, parazit gibi
hastalık yapıcı mikroorganizmalara karşı vücudu koruyan kompleks bir ağ yapısı gibi
görülebilir. Bu yapı potansiyel olarak çok zeki hesaplama uygulamalarına sahip , paralel ve
dağıtılmış bir adaptif (kendi kendine öğrenebilen) sistemdir. Böyle bir yapının modellenmesi
problemlerin çözümünde yeni bir yaklaşım olarak kullanılabilir. Bu yaklaşım Artificial
Immune System (YBS)’dir. Yapay Bağışıklık Sistemleri 1990’larda Yapay Sinir Ağları
(Artificial Neural Networks) ve Yapay Hayat (Artificial Life) gibi biyolojik tabanlı bir çok
hesaplama yöntemini birleştiren yeni bir sistem olarak ortaya çıkmıştır[29]. YBS;
sınıflandırma recognition, feature extraction, diversity, learning, memory detection,
kümeleme, birliktelik keşfi ve self-regulation gibi çalışma alanlarında kullanılabilir[27,28].
Bağışıklık sistemindeki etkileşimlerin sistem bazında ifade edilerek bir YBS
oluşturulması için şunlara ihtiyaç duyulur. (i) Sistemi oluşturan birimlerin gösterimi, (ii)
Sistemdeki birimlerin birbirleri ve çevre ile olan etkileşimlerini hesaplamak için bir
mekanizma, (iii) Bazı adaptasyon prosedürleri. Şimdiye kadar geliştirilen algoritmalarda bu
işlemlerin her biri için çeşitli yöntemler geliştirilmiştir. Sistemi oluşturan birimlerin Antijen
ve Antikor gösterimi için en çok kabul gören ve kullanılan yaklaşım Perelson ve Oster’in
1979 [30] yılında ortaya attıkları şekil uzayı yaklaşımıdır. Etkileşimleri hesaplamak için bir
mekanizma kullanılmalıdır. Antijen ve antikor arasındaki etkileşimler bir duyarlılık ölçütü
kullanılarak modellenebilir. Adaptasyon prosedürleri, sistemin zamanla nasıl değiştiğini
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 6
modeller. Bunlar, bir bağışıklık fonksiyonu, işlemi ya da teorisi kullanılarak oluşturulur.
Klonal seçme algoritması [31], Negatif seçim [32] ve bağışıklık ağları en çok kabul gören
yöntemlerdir. Çalışmada Klonal seçim algoritması tercih edilmiştir.
Doğal bağışıklık sisteminde, optimal yapıdaki ve sayıdaki antikorların geliştirilmesi ve
evrimleştirilmesi süreçlerini taklit ederek optimizasyon problemleri için etkin algoritmalar
geliştirilmiştir. Aniden ortaya çıkan yeni bir zararlı antijene karşı, doğal bağışıklık sisteminin
geliştirdiği tepki sürecinde uyguladığı tanıma, hafıza, ve etkin antikorları üretme
mekanizmaları B-spline yüzey uydurmada düğümlerin yerleri ve sayılarının otomatik
yerleşimi probleminde başarılı biçimde kullanılabileceğini bize düşündürmüştür. Sunulan
çalışmada YBS ile kullanılabilir çözümlerin hepsinden daha iyi çözümü seçerek parametre
optimizasyonu yapılmıştır.
Yapay Bağışıklık Sistemi ile B-spline Yüzey Tahmini
Yapay bağışıklık sistemleri biyolojik esaslı rastsal arama tabanlı bir genel amaçlı
sezgisel yöntemdir. Çözüm uzayı kodlanır. Uygun çözüm popülasyon içerisinde aranır.
Popülasyon içerisindeki her bir birey antikor olarak isimlendirilir. YBS’de yeni nesiller
benzerlik değeri (uygunluk değeri) ile orantılı bir kopyalama (klonlama) ile oluşturulur.
Nesillerde duyarlılığı yüksek olan antikorlar memory’de saklanır. Çözüme ulaşmada
popülasyon büyüklüğü önemli bir parametredir. Yapay bağışıklık sistemlerinde çaprazlama
operatörleri kullanılmazken Mutasyon operatörü kullanılmaktadır. Mutasyon operatörü,
algoritmaların yeni çözümlere ulaşma, yeni çözümler keşfetme sürecinde ince ayar yapmasını
sağlar. Mutasyon yönteminde mutasyon oranının belirlenmesi önemlidir. Genelde yapay
bağışıklık sistemlerinde büyük mutasyon oranları seçilmektedir[29]. Çözüme ulaşmada
kullanılacak nesil sayısı çözümün ilk aşamasında seçilir. Genellikle Genetik algoritma ile
YBS’nin kodlama şemaları ve değerlendirme fonksiyonları farklı olmasa da evrimsel
araştırma süreçleri; ilham kaynakları, kullanılan terimler ve adımların sırası farklılık gösterir.
Dasgupta [33], YBS’nin bir problem çözme metodu olarak başarılı olmasında
aşağıdaki özelliklerinin önemine dikkat çekmiştir: Tanıma, Çeşitlilik, Öğrenme, Hafıza,
Dağıtılmış algılama, Kendi kendini düzenleme, Eşik değeri mekanizması, Dinamik koruma,
Yaklaşık algılama.
Bu özellikler, YBS’nin özellikle bilgisayar ve ağ güvenliği uygulamalarında, dinamik
çevredeki iş çizelgeleme problemlerinde, hata tespiti uygulamalarında GA veya başka
herhangi bir yönteme göre üstün olmasını sağlamaktadır.
Günümüze kadar B-spline yüzey tahmini alanında diğer hesaplamsal zeka yöntemleri
ile belirli problemlere belli çözümler aranmıştır. Fakat AIS yaklaşımı ile gerçekleştirilmiş bir
çözüme rastlanılmamıştır. Bu nedenlerle AIS’in yeteneklerini B-spline yüzey tahmini alanına
aktarabilmek için önerdiğimiz yöntemin detayları makalenin bu kısmında verilecektir.
Bağışıklık sisteminde sistemi oluşturan birimler Antijen ve Antikordur. Şekil uzayı
kavramında Antijen-antikor etkileşimlerinin derecelerinin belirlenmesi için bir ölçüt olarak
uzaklık ölçütü kullanılır. Bağışıklıktaki tamamlayıcılık özelliği şekil uzayında uzaklık
kavramı ile modellenmiştir. Burada iki adet teoremden bahsedilir. Maksimum etkileşim için
maksimum uzaklık teoremi ve maksimum etkileşim için minimum uzaklık teoremi.
AIS oluşturulmasındaki ikinci gereksinim sistemdeki birimlerin birbirleri ve çevre ile
olan etkileşimlerini hesaplamak için bir mekanizmadır. Antijen ile antikor arasındaki
etkileşimler bir duyarlılık ölçütü kullanılarak modellenir. Bir ölçüt olarak uzaklık ölçütü
kullanılır. Antijen ile antikor arasındaki uzaklıklar çeşitli yöntemlerle hesaplanabilir. Eğer
antijen ve antikoru simgeleyen vektörler gerçel değerli vektörler ise öklit yada manhattan
uzaklık ölçütleri kullanılabilir [27]. Antikoru Ab=<Ab1,Ab2,...,AbL> ile Antijeni de
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 7
Ag=<Ag1,Ag2,...,AgL> ile gösterecek olursan Ab ve Ag arasındaki öklit uzaklığı denklem
(8) ile hesaplanır.
L
i
ii AgAbD1
2 (8)
AIS oluşturulmasındaki üçüncü ve son aşama bazı adaptasyon prosedürleridir. Ikinci
aşamada hesaplanan duyarlılık/uygunluk ölçütleri bu yöntemlerin girişleri içinde yer alırlar.
De Castro et al [28] duyarlılık olgunlaşmasındaki işlemleri baz alarak Klonal Seçim
Algoritmasını ortaya atmış ve oluşturdukları algoritmayı karekter tanıma, optimizasyon gibi
problemlere uygulayarak performansını analiz etmişlerdir. Algoritma aşağıdaki gibidir:
Randomly initialise a population (P)
For each pattern in Ag
Determine affinity to each Ab in P
Select n highest affinity from P
Clone and mutate prop. to affinity with Ag
Add new mutants to P
endFor
Select highest affinity Ab in P to form part of M
Replace n number of random new ones
Until stopping criteria
Algoritma, iki esası temel alır; çoğalma için sadece antijeni tanıyan hücreler seçilirler,
Seçilen ve çoğalan hücreler duyarlılık olgunlaşması işlemine tabii tutularak Antijene olan
duyarlılıkları arttırılır. Algoritmanın detaylarına [28] den ulaşılabilir. Algoritma yapı olarak
Genetik algoritmayı andırmaktadır. Ama De Castro et al uygulamalar sonucunda görmüşlerdir
ki, Klonal seçim algoritması Genetik algoritma ile karşılaştırıldığında lokal optimumlardan
oluşan çok çeşitli bir çözüm seti üretebilir. Genetik algoritma ise tüm populasyonu en iyi
bireye benzetmeye çalıştırır. Gerçekte iki algoritmanında kodlama ve hesaplama yöntemleri
çok farklı değildir fakat araştırma işlemlerini gerçekleştirilerken esinlendikleri kaynak,
kullandıkları notasyon ve gerçekleştirdikleri işlemlerin sırası bakımından farklılık arz ederler.
B-spline yüzey uydurma problemi belirli bir tolerans dahilinde bir hedef yüzey tahmin
eden B-spline yüzeyi tahmin etmektir. Hedef yüzeyin 3D uzayda sıralı ve sık veri noktaları ile
Nx x Ny grid yapısı şeklinde tanımlandığı varsayılmıştır. Uydurulacak B-spline yüzeyin
düğümlerinin Nx x Ny gridinin alt kümesi olan nx x ny gridi olduğu kabul edilir (Şekil 3).
Uydurulacak yüzey dereceleri mx ve my dışarıdan verilmektedir. Yüzeyi tahmin etmek için
verilen nokta sayısı Nx x Ny, bit stringi şeklinde oluşturulan Antigen ve Antibody’nin boyutu
olan L’ye atanır. Antibody ve Antigen’in bir molekülü olarak adlandırılan her bir biti bir veri
noktasına karşılık gelmektedir. Bu formülasyonda eğer bir molekülün değeri 1 ise uygun veri
noktasına bir düğüm yerleştirilir, eğer molekülün değeri 0 ise uygun veri noktasına düğüm
yerleştirilmez (Şekil 4). Bu kabullenme genetik algoritmadaki gen ve kromozom terimlerine
eşdeğerdir fakat klonal seçim algoritması genetik algoritmadan farklıdır ve antijeni
tamamlayıcı özelliği daha fazla olan birey daha fazla klonladığı için yakınsama genetik
algoritmaya göre daha hızlıdır. Verilen noktalar [a,b] ve [c,d] aralığında uzanıyorsa nx x ny
adet düğüm bu aralıkta tanımlanır ve interior knots olarak adlandırılır. Başlangıç populasyonu
molekül sayısı L olan K adet Antibody içerir. Moleküller rasgele olarak 0 ve 1’e set edilirler.
Minimum hata ile veri noktalarına uyan B-spline’ı tanımlayan interior düğümlerin yerlerini ve
sayılarını ihtiva eden molekül kümesi ise tanınması gereken antijendir.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 8
Şekil 3. interior düğümlerin grid yapısı
Şekil 4. Antigen-Antibody Kodlama Metodu.
Çalışmada Antigen ve Antibody arasındaki etkileşimlerde maksimum etkileşim için
minimum uzaklık teoremi kullanılmıştır. Antijen-Antikor hücre etkileşimlerinin derecelerinin
belirlenmesi için ölçüt olarak Denklem (8) deki Öklit uzaklık ölçütü kullanılır. Antikorların
Antijenlere yanıt üretebilmeleri için onları tanımaları gerekmektedir. Tanıma işlemi için
çalışmamızda Antikorların Antijene olan duyarlılıklarının Antikor-antijen arasındaki uzaklığa
ve [5] ve [9] referanslarında fitness measure olarak tercih edilen Akaike’nin Information
Criterion (AIC)’e göre aşağıdaki gibi olacağı hesaplanmıştır.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 9
avrgAIC
AICAffinity 1 , (9)
Burada AICavrg populasyondaki tüm Anitkorların AIC değerlerinin aritmetik
ortalamasıdır ve aşağıdaki gibi hesaplanır. Herhangi bir bireyin AIC değeri AICavrg
değerinden büyükse denklem (9) da Affinity=0 kabul edilir.
K
AIC
AIC
K
i
i
avrg
1 , (10)
Burada K populasyonun büyüklüğüdür ve AICi populasyondaki i’inci antibody’nin
fitness measure’ıdır. AIC aşağıdaki gibi verilir.
yxyyxxeyx nnmnmnQNNAIC 2log 22 (11)
Burada Nx ve Ny veri sayısıdır, nx ve ny interior knots sayısıdır, mx ve my verilen veri
üzerine uydurulan spline’ın order’ıdır ve Q2 denklem (1) ile hesaplanır. Şuna dikkat
edilmelidir ki Antibody’ler içinde AFFINITY'si yüksek olan hatası en az olandır, ideal çözüm
olan ve tanınması gereken Antigen’in tam olarak tamamlayıcısı olan Antibody’nin Affinity
değeri populasyon içindekilerden (aslında Memory’deki) 1’e en yakın olanıdır. Ideal
antibody ile aranan antigen arasındaki öklit uzaklığı sıfırdır. Bu durumda problem yüzey
tahmini değil yüzey interpolasyonu olmaktadır.
Probleme çözüm aramadan önce belli kontrol parametre değerleri programa
verilmelidir. Bunlar yüzeyin order’ı, populasyon büyüklüğü, Memory büyüklüğü, çeşitlilik
oranı, ve mutasyon oranıdır. Tercihan memory büyüklüğü populasyon büyüklüğünün 2 katı
verilmiştir. Memory içeriğinde o zamana kadarki tüm iterasyonların en iyi antibody’leri
tutulmaktadır. Populasyonun çeşitlilik derecesinide çeşitlilik oranı parametresi tayin
etmektedir. Bu değer molekülleri rasgele belirlenecek antibody sayısının populasyon
büyüklüğüne oranıdır. Klonlama aşamasında da AIS ruhuna uygun şekilde Affinity
değerlerine göre klonlama gerçekleştirilmektedir ve Affinity’si daha yüksek olan antibody’ler
daha fazla klonlanmakta, affinity’si daha az olan antibody’lerde daha az klonlanmakta veya
hiç klonlanmamaktadır. Klonlanan antibody’lere maturate uygulanması sırasında genelde
memory içinden rasgele seçilen bir bireyle çift nokta çaprazlama yapılmakta yada molekül
düzeni rasgele değiştirilmektedir. Bir antibody’nin klonu fazla ise genelde klonlarına her
ikiside uygulanmıştır. AIS belli bir iterasyon sayısınca çalıştırıldıktan sonra Antijene karşı en
yüksek duyarlılığa sahip antikor çözüm olarak seçilir. Maturate işlemleri sırasında nx x ny
gridi oluşturulurken Nx x Ny gridine sadık kalınmasına özen gösterilmelidir.
Klonal seçim algoritmasını bu probleme entegre edebilmek için orjinal algoritmada
bazı değişiklikler yapılmalıdır. Aşağıda ise algoritmaya yapılan modifikasyonlar ve bunların
yukarıdaki algoritmaya nasıl uygulandığı adım adım gösterilmektedir.
1. Uydurulacak veri noktalarını gir (Nx x Ny grid şeklinde)
2. Kontrol parametrelerini gir
3. Başlangıç Antibody populasyonunu rasgele moleküllerle oluştur.
4. Populasyon ilk defa oluşturuluyorsa Memory dizisini oluştur ve tüm
Antibody’leri Memory içinde sakla.
5. Aksi takdirde Antibody populasyonu ile Memory hücrelerini güncelle ve
Memory’i geliştir.
6. Her bir Antibody için B-spline’ı denklem (5) ile hesapla ve Denklem (6) ile
verilen veriye uydur. Sonra kalanların karelerinin toplamı (Q2)nı hesapla
(denklem (1)).
7. Populasyondaki her bir Antibody’nin AIC değerini (denklem (11) ve
populasyonun ortalama AIC değerini (denklem (10)) hesapla.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 10
8. Her bir antibody için Affinity hesapla (denklem (9)).
9. Affinity’e ve aranan Antigen’e göre populasyondaki her Antikor’un
etkileşimleri (Öklit uzaklığı denklem(8))’ne göre en iyi antibody’leri seç
(toplamda K-Cesitlilik kadar klon).
10. Klonların Affinity değerleriyle orantılı şekilde molekül değiştirimi ile
Olgunlaşan antibody populasyonunu üret (Memory kullanılarak veya rasgele
antibody molekülleri değiştirilerek).
11. Mutasyon oranına göre mutasyonu gerçekleştir
12. Çeşitlilik oranına göre yeni antibody’ler üret.
13. İterasyon sınırına ulaşılmadı veya Antigen tamamen tanınmadıysa Adım 5’e
git.
Deneysel Sonuçlar
Tarafımızdan önerilen AIS temelli Automatic Knot Placement algoritmamızı
değerlendirmek için Five bivariate test functions were used. They are listed in Table I and are
plotted in Figure 5. These functions have been used by for example Lee [35], and were
constructed to have a unit standard deviation and a non-negative range. YBS mimarisinde
Memory içeriğinde duyarlılığı en fazla olan antibody’ler saklandığı için sonuçlarda her nesil
için Memory’nin en iyi duyarlığa sahip antibody’si verilmiştir. Performans değerlendirmesini
ve yakınsama hızını kıyaslayabilmek için Sarfaz ve ark. [2, 3] tarafından önerilen GA
algoritması ile önerdiğimiz algoritma kıyaslanmıştır. Onların algoritmalarında’ki knot ratio
oranı ve ayrıca önemli noktaların düğüm kromozomlarında sabitlenmesi işlemleri göz ardı
edilmiştir. B-spline yüzey order’larının kullanıcı tarafından girilebilme esnekliğine geliştirilen
program sahiptir. Test Function 1: 36.06.04.0391.10, 2121 xxxxf
Test Function 2: 22
2
1
222
21 5.05.0,75.0234.24, xxrrrxxf
Test Function 3: 5.0,5.0,51005.01.0659.42, 2211
4
4
2
2
2
1
4
1121 xxxxxxxxxxxf
Test Function 4: 2
2
5.032
1
12
121 9.046.0315.13356.1, 21
xSinexSinexxxfxx
Test Function 5: 2
2
121 76.01335.19.1, 21 xSinexSinexxfxx
Tablo 1. Five test functions for the bivariate setting.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 11
Şekil 5. Perspective plots of bivariate test functions.
Modelin kalitesini test etmek için yukarıdaki gibi tanımlanan beş yüzeyden 400
(20x20) eğitim verisi noktası için ve 5 den 10 a kadar M ve N için Root Mean Square (RMS)
hatalar hesaplanmıştır. Başlangıç populasyonu 500 nesile kadar beslenmiştir. Nesiller arttıkça
uygunlukta artmaktadır (hata azalmaktadır). Tahmin edilen yüzeylerin eğimi sonraki
nesillerde hâla yakınsama olasılığının olduğunu göstermektedir. Tablo 2, GA ve YBS
optimizasyon icrasının istatistiklerini vermektedir.
Genetik algoritmadaki en iyi kromozomlara ve YBS algoritmasında Memory
populasyonundaki Antibody’lere dayanarak modellenen yüzey ve nokta bulutu arasındaki
Root Mean Square (RMS) hataları dört test fonksiyonu (Yüzey I - Yuzey IV) için Tablo 3’ de
verilmiştir.
Parametre AIS GA
Mesh Büyüklüğü 20x20 20x20
Population size 20 20
String length 200 (Antibody cell length) 200 (chromosome gen-length)
Mutation Rate None 0.001
Crosover Olasılığı None 0.7
Cesitlilik Sayisi 6 (30%) 6 (30%)
Memory Size 40 None
Generation 500 500
B-spline’s order Random and user defined Random and user defined
Tablo 2. Parametre Kümesi
Surface I (x10-2
) Surface II (x10-2
) Surface III (x10-2
) Surface IV (x10-2
)
M x N Best (RMS) M x N Best (RMS) M x N Best (RMS) M x N Best (RMS)
7 x 7 G.A. A.I.S. 8 x 8 G.A. A.I.S. 9 x 9 G.A. A.I.S. 10 x 10 G.A. A.I.S.
İnitial 8.268 9.345 İnitial 3.648 3.697 İnitial 10.10 10.25 İnitial 8.213 8.576
10 7.992 7.149 10 3.705 3.598 10 11.25 9.574 10 8.764 8.023
25 8.229 5.883 25 4.256 3.428 25 9.679 8.712 25 8.364 7.612
50 8.722 5.613 50 3.915 2.867 50 10.40 7.935 50 8.537 7.444
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 12
100 8.342 5.531 100 3.729 2.712 100 9.977 7.482 100 8.786 7.227
200 8.724 5.587 200 4.013 2.017 200 10.50 7.062 200 9.309 7.104
300 8.994 5.290 300 4.600 1.581 300 10.61 7.037 300 7.992 7.072
400 7.638 5.238 400 3.523 1.529 400 10.38 7.033 400 8.455 7.008
500 8.866 5.238 500 3.997 1.501 500 10.60 7.009 500 8.577 6.954
Tablo 3. Farklı MxN için Yüzey I-Yuzey IV’den 400 eğitim noktası için AIS ve GA
metodlarının RMS değerleri.
M N
5 6 7 8 9 10
5 8.6015 8.0171 7.9324 7.0035 7.3263 7.0629
6 8.4809 8.4179 8.3722 7.5269 7.3554 7.1965
7 7.6333 7.2749 7.4622 7.2034 6.9558 6.1804
8 7.8404 6.8614 6.4382 6.4288 6.7375 6.0138
9 7.9077 7.8398 6.9039 6.9028 6.8971 5.7911
10 8.0664 6.7625 7.1614 6.3575 6.9640 6.3637
(a) AIS
M N
5 6 7 8 9 10
5 10.501 9.6512 9.1281 9.7179 9.8944 9.6573
6 10.238 9.8221 9.3189 9.5761 7.7725 8.5993
7 9.9913 9.4922 8.9494 8.2377 8.1184 8.1649
8 10.013 8.6365 8.6247 8.2134 7.6657 7.8947
9 10.020 9.1249 8.7523 8.1843 7.3076 7.4484
10 9.3970 9.1297 8.4642 8.2721 7.6331 7.3366
(b) GA
Tablo 4 M ve N’nin farklı değerleri için Yüzey V’den 400 eğitim noktası için AIS ve
GA metodlarının RMS değerleri.
Şekil 5 de tanımlanmış tüm yüzeyler için analizler yerine getirilmiştir. M x N mesh’i
Yüzey II – Yüzey IV için rasgele belirlenmiştir. Tablo 3’de gösterilen Yüzey II de M ve N için
seçim MxN=8x8’e uymaktadır. Bu seçim için RMS hatası 0.0150165701684642 dir. Tahmin
edilen B-spline yüzey Şekil 7.a’de gösterilmiştir. Benzer şekilde sırasıyla Yüzey III, ve IV de
M ve N için seçimler sırasıyla MxN=9x9, ve MxN=10x10’a uymaktadır. Bu seçimler için
RMS hataları sırasıyla 0.0700900416710976, ve 0.0695467623624124 dir. Tahmin edilen B-
spline yüzeylerde Şekil 7.b, ve c ’de gösterilmiştir.
Tablo 4, Yüzey V’e işaret etmektedir. Burada 400 (20x20) eğitim verisi noktası için ve
5 dan 10 a kadar olan bazı M ve N değerleri için Root Mean Square (RMS) hatalar
hesaplanmıştır. Okuyucunun değerlendirebileceği gibi (tabii ki M ve N değerlerine bağlı olan)
hatalar yaklaşımın makul olduğunu göstermektedir ve En iyi seçenek (Tablo 4’de italik olarak
gösterildiği gibi) MxN = 9x10 ’a uyar. Bu durumda RMS hatası 0.0579111328092844 dir. En
iyi uydurmayı veren MxN düğümlerine göre Yüzey V için; Önerdiğimiz algoritma ile Safraz
ve arkadaşlarının GA temelli algoritması yakınsama hızlarına görede karşılaştırılmıştır.
Eğitim süreci içindeki bazı nesillerde programların çıktıları alınmıştır. Bu çıktılara göre o
nesildeki populasyonlara göre bireyler ve antikorlar’ın ortalama Fitness değerleri Tablo 5’de
verilmiştir. Tüm nesillere göre öneridğimiz AIS yaklaşımımızın ve GA yaklaşımının
yakınsama grafikleri de Şekil 6’da sunulmuştur. Bu şekilde koyu çizgiler Maksimum Fitness
değerlerini kesikli çizgilerde ortalama Fitness değerleridir. Siyah çizgiden hesaplamamızın
410 ‘uncu nesilde yakınsadığını görebiliriz. GA için elde edilen en iyi uygunluk 28. nesildeki
668 değeridir.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 13
A.I.S. (x10-2
) G.A. (x10-2
)
BEST
RMS
Best
Fitn.
Max
RMS
Average
Fitn.
Average
RMS
BEST
RMS
Best
Fitn.
Max
RMS
Average
Fitn.
Average
RMS
Initial 8.8455 806 27.987 1226 16.316 8.8252 804 26.700 1319 17.612
10 7.7040 695 8.8118 767 8.4349 7.9664 722 12.435 961 10.818
25 7.3733 660 7.7939 682 7.5782 9.6906 879 30.386 1085 12.951
50 6.7473 589 7.3570 641 7.2026 7.9327 719 22.333 940 10.689
100 6.0368 500 6.7118 511 6.1217 8.0104 727 10.869 891 9.877
200 5.9232 485 6.0845 492 5.9764 9.2626 843 12.584 925 10.280
300 5.9122 484 5.9659 488 5.9433 7.6908 694 29.605 1043 12.362
400 5.8625 477 5.9184 481 5.8945 8.4756 772 11.958 922 10.255
500 5.7911 467 8.4904 488 5.9526 7.9312 719 13.319 897 9.957
Tablo 5: Yüzey V için GA ve AIS optimizasyonunun AIC ve RMS istatistikleri.
G.A.
0
500
1000
1500
2000
1
37
73
109
145
181
217
253
289
325
361
397
433
469
Generation
Fit
ness
Avg.
Max
Best
A.I.S.
0
500
1000
1500
2000
1
36
71
106
141
176
211
246
281
316
351
386
421
456
491
Generation
Fit
ness
Avg.
Max
Best
Şekil 6. Nesillere göre GA ve AIS temelli parametre optimizasyonu.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 14
Şekil 6. sırasıyla (yukarıdan aşağıya, soldan sağa) Yüzey II, III, IV ve V olarak
etiketlenen B-spline tahmini yüzeyleri
Sonuç
Yüzey uydurma problemlerinde, şekil tasarımı için optimize edilmiş bir yüzey elde
etmek için düğümlerin seçimi iyi bilinir. Büyük veri için bu problemle, olası yerel
optimumdan kaçınan ve aynı zamanda iteratif tarzda arzulanan çözümü elde eden
optimizasyon algoritmalarıyla uğraşılması gereklidir. Evrimsel optimizasyon algoritmaları
(Genetik algoritma, benzetim tavlama, Simulated Evolution), yapay sinir ağları (Kohonen
ağları, fonksiyonel ağlar) ve bulanık mantık (bulanık B-spline’lar) gibi hesaplamsal zeka
optimizasyon tekniklerinin çoğu probleme zaten başarıyla uygulanmaktadır. Bu makale, B-
Splinelar kullanılarak yüzey uydurma problemine “Yapay Bağışıklık Sistemleri (AIS)” olarak
bilinen diğer bir hesaplamsal zeka tekniğinin uygulanmasını sunmaktadır. Çalışmada [5] ve
[9] deki gibi orjinal problemi ayrık kombinasyonel optimizasyon problemine çeviren ve
çevrilmiş problemi çözen bir strateji kullanılmıştır.
B-spline yüzey tahmininde uygun yakınsamayı garanti altına almak için iterasyondaki
her bir tahmini B-spline yüzeyin üzerinde iki temel gereksinim vardır: (1) onun şekli, hedef
yüzeyin şeklini yaklaşık olarak tutmalıdır; (2) onun kontrol noktaları uygun bir şekilde
dağıtılmalı yada düğüm noktaları uygun şekilde belirlenmelidir. Bu makalede sunulan
tekniğin ikinci gereksinimi hafifletmede yardımcılığı ispatlanmıştır. Örneğin uygunsuz bir
şekilde dağıtılan düğüm noktaları tatmin edici bir sonuç üretmek için ayarlanabilir ve
düzeltilebilirler. Bununla birlikte, birinci gereksinim bizim metodumuzun uygulanması için
hala gereklidir. Çünkü metodumuzda belirli bir tölerans dahilinde tahmin hatası kabul
edilmektedir. İteratif bir metot olması sebebiyle üretilecek nesil sayısının fazla tutulması bu
hatayı minimize etmeye yardımcı olacaktır ama bu hesaplama zamanının uzaması anlamına
gelmektedir.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 15
Tahmin hatası için uygun bir ölçü, hem amaç fonksiyonu tanımlama hemde tahmin
kalitesini hesaplamada önemlidir. Tahmin hatası bizim metodumuzda tahmini B-spline
yüzeyden hedef yüzeye uzaklık olarak ölçülmektedir. Bununla birlikte teorik olarak daha
münasip bir ölçü aktif B-spline yüzeyi ve hedef yüzey arasındaki Hausdorff uzaklığı olabilir.
Bu nedenle ileriki bir araştırma problemi ya Hausdorf uzaklığı ile çalışmak yada daha genel
bir B-spline yüzey tahmin şeması bulmada bir hata ölçüsü olarak kullanılabilen bazı tahmin
biçimlerine çalışmaktır.
Bu çalışmada Yapay Bağışıklık Sisteminin Klonal seçim algoritması, yüzey
rekonstrüksiyon problemine uygulanmış ve yüzey modellemenin çeşitli yeni yönleri
geliştirilmiştir. Bu yaklaşımın büyük potansiyeli gösterilmiştir. Verilen bir 3 boyutlu veri
noktaları kümesi için AIS bu veri noktalarına en uygun B-spline yüzeyin derecesini ve düğüm
noktalarını seçmemizde tasarımcılara yardımcı olmaktadır. Düğüm noktaları sayısının bir
fonksiyonu olarak hatanın dikkatli bir analizi de yerine getirilmiştir. Bu metot için çoklu
uygulamalar orjinal amacımızın ötesindedir, örneğin daha yüksek boyutlu veri görüntüleme,
morphing, hacim verme gibi. Hepsi, metodumuz için potansiyel uygulamalardır. Öğrenme
işleminin verimliliği ve gücü deneylerimizle ispatlanmıştır. Sonraki çalışmalarda Diğer AIS
tekniklerini kullanarak metodumuzu iyileştirmeye çalışacağız. Diğer tekniklerin olumlu yada
olumsuz etkilerini ortaya çıkarmaya çalışacağız ve kıyaslamalar gerçekleştireceğiz.
Bizim yaklaşımımızın çok genel olduğunu açıklamak istiyoruz: veri noktaları herhangi
bir yüzey türünden alınabilir (aslında makalede bivariate fonksiyon yüzeylerden veri
noktalarını kullandık) ve tahmin edilen yüzey herhangi bir keyfi basis fonksiyonları ailesine
göre yazılabilir. Bu umumiyetden dolayı düşündük ki bu yaklaşım yüzey modellemedeki
uğraşılan diğer problemlerin çoğuna uygulanabilen Yapay bağışıklık sistemleri olarak umut
verici bir yeni araştırma çizgisini açmaktadır. Diğer yandan yaklaşımımızın kısıtlamalarını
açıkça kuran ilave çalışma gereklidir. Örneğin bu makalede veri noktalarının uniform ağları
göz önüne alınmıştır. Bizim ilgimiz şimdi AIS metodolojimizi uygulamak için organize
edilmemiş veri noktaları durumu ele alındığında oluşacak sınırlamaları keşfetmeye yöneliktir.
Beklentimiz bir ön işleme adımının gerekli olabileceğidir ama bu değerlendirme halen
bulanıktır ve sonuç olarak ileriki araştırma hâla gereklidir. Sonraki sonuçlarımız başka
yerlerde bildirilecektir.
Bu algoritmanın genişlemesi için sonraki adımlarda NURBS yüzeyler kullanılacaktır.
Bu genişletme özellikle NURBS’ün ağırlıklarının optimizasyonunun karmaşık olması
nedeniyle önemlidir.
Diğer konu performansdır, algoritma Visual Basic üzerindedir. Daha iyi performans
için verimli bir C implementasyonu beklenebilir. Yada algoritma paralel işlemcilere göre
değiştirilebilir. Ama hâlen genetik algoritma, yapay sinir ağları, yapay bağışıklık sistemleri
gibi iteratif metotlar yakın gelecekte etkileşimli yüzey tasarım programlarına uygun
olmayacaktır.
Makalede, önerilen AIS Algoritmamızın iyi düğümleri otomatik olarak tanımlamada
kullanışlı olduğunu açıkça gösterdik. Metodumuz kullanılarak düğümlerin sayısını ve
yerleşimlerini eş zamanlı olarak tanımlayabiliriz. Uygunluk fonksiyonu olarak AIC
kullandığımız için modelin basitliği ile veriye modelin sadakatini dengeleyebiliriz ve aday
modeller arasından en iyi modeli otomatik olarak seçebiliriz. Hata toleransı yada bir
düzgünlük faktörü ve düğümlerin iyi seçilmiş başlangıç yerleri gibi herhangi bir subjektif
parameteye gereksinim duymayız.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 16
Referanslar
1. Xie, H., Surface design and reconstruction techniques in computer graphics, PhD
Thesis, 226 pages, 2004.
2. V. Weis, L. Andor, G. Renner, T. Varady, Advanced surface fitting techniques,
CAGD Vol 19, pp. 19-42, 2002.
3. Piegl, L., Tiller, W., The NURBS Book, 2nd ed., Springer Verlag, Berlin, Heidelberg,
1997.
4. Ulker, E, Arslan, A., The Calculation of Parametric NURBS Surface Interval Values
using Neural Networks, International Conference on Computational Science (ICCS
2006), Part II, Lecture Notes in Computer Science, Springer Verlag, Berlin
Heidelberg, Vol. 3992, pp. 247-254, 2006.
5. Yoshimoto, F., Moriyama, M., Harada, T., Automatic knot placement by a genetic
algorithm for data fiting with a spline, Proceedings of the International Conference on
Shape Modeling and Applications, IEEE Computer Society Press, pp. 162-169, 1999.
6. Goldenthal, R., Bercovier, M. Design of Curves and Surfaces by Multi-Objective
Optimization, April 2005, Leibniz Report 2005-12.
7. Kumar, G.S., Kalra, P.K., Dhande, S.G., (2003). Parameter Optimization for B-spline
Curve Fitting using Genetic Algorithms, The Congress on Evolutionary Computation
CEC’03, Vol. 3, pp. 1871-1878.
8. Iglesias, A., Echevarr´ýa, G., Galvez, A., Functional networks for B-spline surface
reconstruction, Future Generation Computer Systems, Vol. 20, pp. 1337-1353, 2004.
9. Sarfraz, M., Raza, S.A., Capturing Outline of Fonts using Genetic Algorithm and
Splines, Fifth International Conference on Information Visualisation (IV'01) , pp. 738-
743, 2001.
10. Hoffmann, M., Modified Kohonen Neural Network for Surface Reconstruction, Publ.
Math. Vol. 54, pp. 857-864, 1999.
11. Hoffmann, M., Kovács E., Developable surface modeling by neural network,
Mathematical and Computer Modelling, Vol. 38, pp. 849-853, 2003
12. Hoffmann, M., Numerical control of Kohonen neural network for scattered data
approximation, Numerical Algorithms, Vol. 39, pp. 175-186, 2005.
13. Hoffmann, M., Várady, L., Free-form curve design by neural networks, Acta Acad.
Paed. Agriensis, Vol. 24, pp. 99-104, 1997
14. Hoffmann, M., Local update of B-spline surfaces by kohonen neural network, Proc. of
the 5th International Conference on Computer Graphics and Artificial Intelligence,
Limoges, pp. 103-112, 2002.
15. Boudjemaï, F., Enberg, P.B., Postaire, J.-G., Surface Modeling by using Self
Organizing Maps of Kohonen, Proceedings of the IEEE International Conference on
Systems, Man and Cybernetics, vol. 3, pp. 2418-2423, Washington DC (USA), 2003.
16. Barhak, J., Fischer, A., Adaptive Reconstruction of Freeform Objects with 3D SOM
Neural Network Grids, Special Issue on Geometrical Modeling and Computer
Graphics, in Journal of Computers & Graphics, vol. 26, no. 5, 2002.
17. Kumar, S.G., Kalra, P. K. and Dhande, S. G., Curve and surface reconstruction from
points: an approach based on Self-Organizing Maps, Applied Soft Computing Journal,
Vol. 5, Issue 5, pp. 55-66, 2004.
18. Hoffmann, M., Várady, L., and Molnar, T., Approximation of Scattered Data by
Dynamic Neural Networks, Journal of Silesian Inst. of Technology, pp, 15-25, 1996
19. Goldenberg, D.E., Genetic Algorithms in Search Optimization and Machine Learning,
Addison-Wesley, 1989.
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014 Sayfa 17
20. Goldenthal, R., Bercovier, M., Spline Curve approximation and design by optimal
control over the knots using genetic algorithms, Int. Cong. On Evolutionary Methods
for Design, Optimization and Control with Applications to Industrial Problems
EUROGEN 2003, CIMNE, Barcelona, pp 1-18, 2003.
21. Raza, S.A., Visualization with spline using a genetic algorithm, Master Thesis, King
Fahd University of Petroleum & Minerals, Dhahran, Saudi Arabia, 2001, 126 pages.
22. Sarfraz, M., Raza, S.A., and Baig, M.H., Computing Optimized Curves with NURBS
Using Evolutionary Intelligence, Lecture Notes in Computer Science, Volume 3480,
pp. 806, 2005.
23. Youssef, A.M., Reverse engineering of geometric surfaces using Tabu search
optimization technique, Master Thesis, Cairo University, Egypt, 2001
24. Park, H., Lee, J.-H., Error-Bounded B-Spline Curve Approximation Based on
Dominant Point Selection, International Conference on Computer Graphics, Imaging
and Visualization (CGIV'05), pp. 437-446, 2005.
25. R. Goldenthal, M. Bercovier, Spline Curve Approximation and Design by Optimal
Control Over the Knots, Computing Vol. 72, pp 53-64, 2004.
26. De Castro, L. N., Von Zuben, F. J.: Immune and neural network models: theoretical
and empirical comparisons. International Journal of Computational Intelligence and
Applications Vol. 1 No. 3 (2001) 239-257.
27. De Castro, L. N., VonZuben, F. J.: Artificial Immune Systems: Part I-Basic Theory
and Applications. DCA-RT 02/00 (1999).
28. De Castro, L. N., VonZuben, F. J.: Artificial Immune Systems: Part II-Survey of
Applications. DCA-RT 02/00 (2000).
29. Engin, O., Döyen, A., Artificial Immune Systems And Applications In Industrial
Problems, Gazi University Journal of Science 17(1): pp. 71-84, 2004.
30. Perelsen, A. S., Oster, G. F.: Theoretical Studies of Clonal Selection: Minimal
Antibody Repertuarie Size and Reliability of Self-Nonself Discrimination. J. Theor.
Biol. Vol 81 (1979) 645-670
31. Ada, G. L., Nossal, G. J. V.: The clonal selection theory. Scientific American Volume
257(2) (1987) 50-57.
32. Forrest, S., Perelson, A. S., Allen, L., Cherukuri, R.: Self-Nonself Discrimination in a
computer. Proceedings of IEEE Symposium on Research in Security and Privacy.
(1994) 202-212.
33. Dasgupta, D., “An Overview of Artificial Immune Systems and Their Applications”
in: Artificial immune systems and their applications”, Springer-Verlag: 3-18 (1998).
34. Weiss, V., Andor, L., Renner, G., Varady, T., Advanced surface fitting techniques,
Computer Aided Geometric Design Vol 19, p. 19-42, 2002
35. Lee, T. C. M.,, On Algorıthms For Ordınary Least Squares Regressıon Splıne Fıttıng:
A Comparatıve Study, J. Statist. Comput. Simul., Vol. 72(8), Pp. 647–663, 2002.