Matlab geliştirme ortamı olarak kullananlara oldukça kolaylıklar sağlamaktadır. Burada özellikle tasarlanmış olan GUI yardımıyla sistemi kurmak veya matlab içerisinde M-Filelar ile sistemi yaratma seçenekleri vardır. Ayrıca giriş çıkış ilişkilerini ve kuralları da görselleştirmesi önemli bir avantajdır.
Burada görmekte olduğumuz FL Toolbox içerisinde bahsettiğimiz editörler yer almakta aynı zamanda görsel olarak sistem açıklanmaktadır.
Öncelikle FIS (Fuzzy Interference System) editöründen bahsedicek olursak. Sistemin temel olarak yönetildiği panel budur. Burada giriş çıkış değişkenleri eklenebilmekte,. Fuzzy Setin türü belirlenmekte ve Lojik ifadeler tanımlanabilmektedir. Aynı zamanda menüdeki özelliklerle sistemin .fis uzantılı olarak kaydedilmesi veya var olan bir sistemin açıklanması sağlanmaktadır.
Buradaki giriş veya çıkışlar üzerindeki işlem yapmak, üyelik fonksiyonlarının tiplerinin belirlenmesi ve bulanıklaştırılarak sözel değişkenlere dönüştürülmesi sağlanmaktadır. Function editörü aşağıdaki gibi bir arayüze sahiptir.
Buradaki gibi üyelik fonksyonları oluşturulduktan sonra kural tabanının yaratılması için ise rule editör bulunmaktadır. Burada girişlerle çıkışlar arasında mantıksal ilişkiler IF-ELSE kalıplarında yaratılmaktadır.
Ayrıca elde edilen sonuçların görüntülenmesi içinde kuralların ve giriş çıkışların görülebileceği birer arayüz hazırlanmıştır. Bunlarda Rule Viewer ve Surface Viewer olarak adlandırılmıştır.
Bulanık mantık editör haricinde M-Filelar üzerinden de kod yazarak kontrol edilebilir. Öncelikle FL Toolbox ile yaratılmış .fis uzantılı bir dosyanın açılması gerekmektedir. Bunun için
>> readfis(‘isim.fis’)
Buradaki işlem sonucunda bize FIS yapısında bir nesne yaratılmaktadır ve bunun üzerinden sistemimize ait bilgilere ulaşabilmekteyiz.
>> evalfis(0.5,[girisler])
Bu fonksiyon sayesinde de giriş değerleri için olan çıkış matrisi elde edilmektedir. Bulanık elemanın input, output değerleri ile bunlar değiştirilmekte veya yeni üyelik fonksiyonları yaratılabilmektedir.
>> a = readfis(‘isim.fis’);
>> a.input(1).name='service';
>> a.input(1).range=[0 10];
>> a.input(1).mf(1).name='poor';
>> a.input(1).mf(1).type='gaussmf';
>> a.input(1).mf(1).params=[1.5 0];
>> a.output(1).name='tip';
>> a.output(1).range=[0 30];
>> a.output(1).mf(1).name='cheap'
>> a.output(1).mf(1).type='trimf';
>> a.output(1).mf(1).params=[0 5 10];
>> a.rule(1).antecedent=[1 1];
>> a.rule(1).consequent=[1];
>> a.rule(1).weight=1;
>> a.rule(1).connection=2;
Bunun yerine tekbir fonksyon ilede bilgileri girmek mümkündür.
>> a=addvar(a,'input','service',[0 10]);
>> a=addmf(a,'input',1,'poor','gaussmf',[1.5 0]);
Şeklinde de giriş ve çıkış fonksiyonları veya üyelik fonksiyonları yaratmak mümkündür.
>> gensurf(a)
Bu komut sayesinde de giriş çıkış ilişkisinin görselleştirilmesi sağlanmaktadır.