Suganet

Suganet Su Dağıtım Şebekesi Optimizasyon Programı 

SUGANET

SUGANET Microsoft Visual Basic 6.0 ile yazılmış bir su dağıtım şebekesi optimum tasarım programıdır. SUGANET optimizasyon için Genetik Algoritma programını DLL (Dynamic Link Library) şeklinde, şebeke hidrolik hesapları için ise EPANET2programını kullanmaktadır. SUGANET ile şebeke dizaynında farklı çap ve tiplerde borular, çeşitli hidrolik yük kaybı bağıntıları, çeşitli tipte ayar vanaları, hazneler,  pompalar, tahliyeler ve yangın muslukları gibi su şebekesinde yer alabilecek tüm ekipmanlar kullanılabilmektedir. SUGANET kararlı bir hidrolik konum (Steady-State Simulation) için çözüm yapmakla beraber, birden fazla kararlı hidrolik konumlar (Extended-Period Simulation) için de çözüm yapabilmektedir. İzmir Atatürk Organize Sanayi Bölgesi şebekesindeki dört farklı hidrolik konum gibi, ya da daha kompleks şebekeler SUGANET ile kolaylıkla optimum olarak boyutlandırılabilmektedir.

Deneyimli mühendislerin bir hidrolik benzeşim modeli kullanarak optimizasyonda uyguladığı uzun, yorucu ve sıkıcı birçok deneme-yanılma hesaplamalarına SUGANETkullanıldığında gerek kalmamaktadır. Bu programın bir avantajı da mevcut bir şebekenin rehabilitasyonu veya genişletilmesi çalışmalarında da kullanılabilir olmasıdır.

SUGANET, mühendisin neye ne kadar önem verdiğini bir kaç parametreyi okuyarak öğrenir ve her çözüm sonucunda şebekeyi bu kriterlerle değerlendirir. Bulduğu en iyi çözümü verir. Karar verme işlemi şebekenin toplam maliyetine bakılarak gerçekleştirilir. Ancak, toplam maliyet içerisinde boru maliyetleri dışında bir de cezalar vardır. Cezalar hız, basınç ve hidrolik çözüm uyarılarına bağlıdır. Özel durumlar için hız ve basıncın belli miktarda ve belli sayıda aşılmasına da izin verilebilmektedir. İzin verilenden daha çok sayıda ya da miktarda sınır aşılmasında ceza uygulanır. Küçük çaplı borular kullanldığında hız ya da basınç sınırları aşılmakta, dolayısıyla boru tutarları az olsa dahi ceza puanlarıyla bir miktar artarak kötü çözüm olabilmektedir. Bu durum tecrübeli proje mühendisinin şebekeyi inceleyerek verdiği karara benzemektedir. Karar verme işlemi hem projecinin şebekeyi defalarca incelemesine gerek bırakmamakta hem de optimum sonuca ulaşılmasını sağlamaktadır.

 SUGANET’in Çalışma Aşamaları

 1.     Şebeke verileri (Boru çapları, uzunlukları, pürüzlülük değerleri, düğüm noktalarından çekilen su miktarları, arazi kotları, hazne su seviyesi ve hacmi, pompa vb. gibi yapılar ile ilgili bilgiler) okunur.

2.    Öngörülen GA operatörleri (kodlama tipinin seçilmesi, çaprazlama, seçme, mutasyon operatörlerinin seçilmesi), genetik algoritma parametreleri (topluluk sayısı, maksimum jenerasyon sayısı, çaprazlama olasılığı, mutasyon olasılığı) ve optimizasyon parametreleri (maksimum ve minimum hız ve basınç değerleri, hız ve basınç için ceza değerleri, tolerans değerleri, toleranslı düğüm noktası ve toleranslı boru sayısı) okunur.

3.     Optimizasyonla boyutlandırılacak borular seçilir.

4.     Şebeke tasarımında kullanılacak boruların iç çap değerleri, fiyatları, pürüzlülük değerleri okunur.

5.     Tasarıma girecek borular GA için seçilen kodlama tipinin özelliğine göre kodlanır.

6.     Başlangıç topluluk bireyleri rastgele oluşturulur.

7.     Her birey için boruların kodları çözülerek çap değerleri eşleştirilir ve hidrolik hesaplamalar yapılır.

8.     Her bir şebeke çözümünün maliyeti hesaplanır, basınç ve hız sınır değerlerini aşan şebeke çözümlerine ceza katsayılarıyla ek bir maliyet bindirilir.

9.     Bir sonraki jenerasyonu oluşturmak için eşleştirme havuzu oluşturulur.

10.  “En iyi olanlar hayatta kalır” prensibiyle çalışan seçme operatörü, uygun seçimleri yaparak bir sonraki jenerasyon için bireyleri seçer.

11.  Topluluğun en iyi bireyi hiçbir işleme tabi tutulmadan bir sonraki jenerasyonun ilk üyesi olarak atanır (elitizm).

12.  Seçilen bireyler eşleştirme havuzunda çaprazlama ve mutasyon operatörlerine tabi tutularak bir sonraki jenerasyon oluşturulur.

13.  Topluluğun tüm bireyleri aynı oluncaya kadar veya belirtilen maksimum jenerasyon sayısına ulaşılıncaya kadar 7. adımdan 12. adıma kadar yapılan işlemler tekrarlanır.

14.  Yeniden farklı başlangıç toplulukları oluşturmak için 6. adıma dönülür, rastgele sayı üreticisi yardımıyla farklı başlangıç toplulukları oluşturulur ve işlemler tekrarlanır. Bu adım SUGANET’de “Genetik Çalışma” olarak adlandırılır. Örneğin, bu alana 10 değeri girilmesi halinde program 10 farklı başlangıç topluluğu ile çalışarak en iyi çözüme ulaşmaya çalışır.

15.  Verilen hidrolik kriterleri sağlayan en ucuz çözüm elde edilir.

 Genetik Algoritma (GA) Programı

 SUGANET içerisinde yer alan GA programı Darwin’in “En iyiler hayatta kalır” prensibi ile çalışmaktadır. David Goldberg'in Pascal diliyle yazdığı programdan yararlanılarak geliştirilen Genetik Algoritma Microsoft Visual C++ ile programlanmıştır. GA programını kör bir arama motoruna benzetebiliriz. GA programı bir topluluk (başlangıçta bu topluluk rasgele oluşturulur) ile başlar ve bu topluluk üzerinde çaprazlama, seçme ve mutasyon gibi yöntemlerin uygulanmasıyla problemin her aşamasında en iyiye doğru gidiş sağlanır.

 GA Aşamaları:

1.     Kodlama: Karar değişkeni olarak borular ikili ya da tamsayı olarak kodlanırlar. SUGANET’in GA programında ikili kodlama ve tamsayı kodlama seçenekleri bulunmaktadır.

2.     Başlangıç:  n adet kodlanmış topluluk başlangıç için rasgele oluşturulur.

 Şebeke borularının ikili kodlanması örneği

 

Boru No: 1

Boru No: 2

Boru No: 3

Boru No: 4

Boru No: 5

Boru No: 6

Boru No: 7

Boru No: 8

Boru No: 9

BoruNo:10

1.Birey

01

00

10

11

00

10

10

01

00

11

2.Birey

00

10

11

01

01

00

11

11

10

01

 00-100mm      01- 150mm     10-200mm     11-250mm

3.     Uyumluluk: Her bireyin uygunluk değerleri belirlenir. Bu uygunluk değeri şebekedeki hız ve basınç kriterlerinin sağlanmasına karşılık şebekenin maliyet fonksiyonudur ve bu maliyet için minimizasyon yapılmaktadır.

4.     Seçim: Yeni nesildeki bireylerin uygunluk fonksiyonuna göre turnuva, rulet tekerleği ya da rasgele olarak seçilmesi işlemidir. Bu çalışmada kullanılan turnuva operatörü; topluluktaki bireyler arasından belirli miktarda rastgele bireyler seçilerek aralarındaki uygunluk fonksiyonu yüksek olan bireylerin tutulması esasına dayalı olarak çalışır.

5.     Çaprazlama: Seçilen bireyler eşleştirilerek yeni bireyler oluşturulur.SUGANET’in GA programında tek noktalı, iki noktalı ve tek düze çaprazlama operatörleri bulunmaktadır.

0110110011/0101001                                         011011001/01010101

1001000100/1010101                                         100100010/10101001

6.     Mutasyon: Mutasyon olma olasılığına göre seçilen bireyin kromozomlarındaki bir bitin ya da tamsayının değiştirilmesi işlemidir.  

01101100110101001

01101100110001001 

7.     Elitizm: Mevcut topluluktaki uygunluk değeri en iyi olan bireyin doğrudan yeni topluluk havuzuna aktarılmasıdır. Bir jenerasyondaki en iyi birey çaprazlama ve mutasyon gibi operatörlerle bozularak kaybolabilir. Bu işlem, en iyi bireyin kaybolmaması için hiçbir işleme tabi tutulmadan diğer jenerasyona aktarılması, böylelikle en iyi bireyin korunması amacı ile yapılır.

8.     Yeni topluluk havuzu: Yeni oluşan bireylerin bir havuza alınması, eski bireylerin atılmasıdır.

9.     Sonuç: Topluluktaki bireylerden birisi istenilen sonucu veriyorsa algoritmanın sona erdirilmesidir.

10.   Döngü: 2. adıma geri dönülmesidir.