Denizaltılar için klas kuralı tabanlı yapısal dizayn yazılımı geliştirilmesi
Development of a submarine structural design software based on class rules
Yazar: MERT KAYGUSUZ
Danışman: DR. ÖĞR. ÜYESİ SERDAR AYTEKİN KÖROĞLU
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Gemi ve Deniz Teknoloji Mühendisliği Ana Bilim Dalı / Gemi İnşaatı ve Gemi Makineleri Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2019
Konu: Gemi Mühendisliği = Marine Engineering

Özet:
Bu çalışmada ABS loydunun denialtılarının yapısal dizaynı için belirlemiş olduğu kurallar çerçevesinde optimum yapısal dizayn tasarımı yapmak üzere bir yazılım geliştirilmiştir.
Giriş bölümünde ilk olarak klas kuruluşları ele alınmıştır. Bu kuruluşlar, denizcilik sektöründe denetim aşamasını üstlenen kurumlardır. Klas kuruluşları, üretilecek veya tamiri yapılcak deniz araçlarının dizayn aşamasından üretim ve seyir tecrübelerine kadar uzanan geniş bir yelpazede denetim gerçekleştiren kurumlardır. Her klas kuruluşunun kendi kural ve standartlarını açıkladığı dökümanları ve yazılımları bulunmaktadır. Bu çalışmada da ABS klasının denizaltıları için belirlediği "Underwater Vehicles, Sytems and Hyperbaric Facilities (2019)" adlı kuraldan yararlanılmıştır.
Çalışmanın ikinci kısmında, çalışmada baz alınan ABS kuralları ayrıntılı biçimde incelenmiştir. Denizaltının temel olarak ayrıldığı geometrik alanlar bu kısımda tanımlanmıştır. Konik ve silindirik alanlara göre incelenen bölümler için belirlenmiş olan standartlar başlıklar halinde incelenmiştir:
	Stifnerler arasındaki mukavemet (inter-stiffener strength)
	Bütünsel burkulma mukavemeti (overall buckling strength)
	Stifnerler için stres limitleri (stress limits)
	Stifner burulmalı burkulma (stiffener tripping)
	Stifnerlerin lokal burkulması (local buckling)
	Stifnerlerin atalet sağlama kriterleri (inertia requirements)
Çalışmanın üçüncü kısmında, kurulacak olan optimizasyon modeli tanıtılmıştır. Optimizasyonun ne olduğu, nasıl çalıştığı, kullanılan optimizasyon algoritmaları ve optimzasyonun sağladığı faydalar bu bölümde açıklanmıştır. Çalışmada kullanılan ardışık kuadratik programlama (Sequential quadratic programming) yöntemi de bu bölüm içerisinde kısaca tanıtılmıştır. Bu yönteme başlangıç noktaları verebilmek adına LHS (Latin Hypercube Sampling) methodu kullanılmıştır. Optimizasyon sürecinde, sınırları çizilmiş uzay çerçevesinde optimum sonuca ulaşabilmek için farklı farklı başlangıç noktaları kullanmak gereklidir.  LHS yöntemi, bahsedilen farklı başlangıç noktalarının uzayda homojen bir şekilde dağılmasını sağlamaktadır. Bu da belirlenen nokta sayısına göre uzayı en verimli biçimde taramayı sağlamaktadır. LHS yöntemine göre belirlenen noktalar analiz edilerek optimum sonuç program içerisinde güncellenmektedir. LHS ile üretilen bütün noktalar analizden geçtikten sonra (optimum sonuç bulunduktan sonra) sonuçlar rapor dosyasına yazdırılır.
Çalışmanın dördüncü bölümünde, ortaya konulan yazılımın yapısı, işleyişi, kullanıcı arayüzü, veri girdi formatları, programın arkasında çalışan hesaplama algoritması ve ortaya çıkan rapor ayrıntılı biçimde incelenmiştir. Programın kullanıcı arayüzü C# programlama dilinde, hesaplama modülü ise Python programlama dilinde geliştirilmiştir. Aradaki veri transferini gerçekleştirmek için ise JSON veri formatı kullanılmıştır. Kullanıcı arayüzünde alınan veriler bir JSON dosyasına yazıldıktan sonra hesaplama modülünün yer aldığı Python'da geliştirilmiş yazılım tarafından okunup optimizasyon hesapları gerçekleştirilmiştir. Optimizasyon sonuçları kullanıcıya rapor olarak ".txt" formatında sunulmaktadır.
Çalışmanın beşinci bölümünde, farklı geometrik özellikler taşıyan denizaltı modelleri birkaç farklı malzeme tipi için optimizasyon yazılımına sokularak sonuçları değerlendirilmiştir. Sonuçlar, optimizasyon için kurulan hacimsel hedef fonksiyonları üzerinden değerlendirilmiştir. Elde edilen sonuçlara göre optimizasyon öncesi geliştirilen dizaynlarda optimizasyon sonrası hedef fonksiyonlarında ciddi azalmalar gözlemlenmiştir. Yani optimizasyon sürecinin başarılı olduğu gösterilmiştir.

Abstract:
In this work, a software known as "UWVS Structural Optimizer" has been developed in order to create the optimum structural design for submarines. UWVS Structural Optimizer produces optimum design report based on the rules which have been determined by ABS.
First, the organizations which deal with testing, inspection and certification in the help their clients in the improvement of shipping industry were introduced. These organizations help their clients to improve performance and reduce risks in design, producing, maintenance and operation stages. Each class organization has own documentation and sofwares with which clarifies their rules and standarts regarding amphibious vehicles. In this work, the rules of "Underwater Vehicles, Sytems and Hyperbaric Facilities (2019)" were put into operation in order to detemine the design standarts. Underwater Vehicles, Sytems and Hyperbaric Facilities (2019) has been created by ABS for regulating the standarts of submarine design. Furhermore; except for the class organization softwares, some other structural design and optimization softwares were mentioned in first part of this work.
In the second main chapter, the rules of Underwater Vehicles, Sytems and Hyperbaric Facilities (2019) were examined in a detailed way. UVSHF consists of 21 different sections. Each section explains different design or production regulations. In this work, the 6th chapter which is called "Metallic Pressure Boundary Components" was examined especially because that chapter regulates the structural design standarts. Nevertheless, other chapters were taken into account since all chapters determine the whole design standarts of underwater vehicles together. For example; in the 4th chapter, materials specifications have been described. The basic geometric definitions of submarines were explained in the 6th chapter of UVSHF. The illustrative hull components can be observed in this section. In this work, the standarts for cylinderical areas and conical transitions were expressed as sorted titles:
	Inter-stiffener strength
	Overall buckling strength
	Stress limits
	Stiffener tripping
	Local buckling
	Inertia requirements
In the third main chapter, the established optimization model was introduced. In this chapter, the following questions were also answered:
	What is optimization?
	How does optimization processes work?
	What is the benefits of optimization techniques?
	How could the optimization algorithms be implemented?
	What is the difference between unconstrained optimization and constrained optimization?
	On which study area are the optimization processes applied?
	Why are the optimization software being used?
In this work, sequential quadratic programming was used as the optimization method. Besides, Python – Scipy library was used so as to implement the method. In order to determine different initial points for sequential quadratic programming, LHS (Latin Hypercube Sampling) was used. With the aid of LHS method, the initial points are distributed homogeneously on the space that had been determined before the optimization process. This method allows us to scan that space in the most efficient way. After the evaluation of each point group, the optimum value of output parameters are updated. After the all initial points evaluations, the result of optimization are presented in the report file. In this chapter, the secant method was also introduced. This method was used for determining the root of an equation which has only one unknown.
In the forth main chapter, the following issues were dealt with:
	The structure of produced software
	The operation procedure of the software
	Software's GUI (Graphics User Interface)
	The format of input data
	The algorithm executing the optimization process
	The final report at the end of optimization process
The graphical user interface of the software was designed by using C# programming language. However, the remaining content issues were executed in the Python language.
Graphical user interface is composed of eight main parts. The First section includes a combo box which specifies the geometry of the section of the submarine. The User can choose using that combo box any of the following: cylinder, conical transition, hemispherical dished heads or ellipsoidal heads. In the second section, the user must determine a file name and enter basic data of the submarine. In 3, 4 or 5th sections, geometric data must be entered related to the particular geometry. The 6th section contains functional buttons for adding, deleting and starting the optimization process. A representative figure of structural elements can be observed in the 7th section. Moreover, the user can observe what he/she added the geometric parts of submarine in the 8th section. The data transfer between GUI and calculation module was executed by using JSON data format. JSON data format has the following advantages:
	It can be used in several programming languages.
	It can be easily produced either manually or by using any programming language.
	It can includes different data types such as lists, logical expressions, several number formats, strings, objects and so on.
	It can be used as a mini database.
JSON data is produced via GUI (namely in C#) by using a dynamic array which holds data. After that, this data is read from Python execution file. This means data is transferred from GUI to the main calculation engine. After the transfer process, the required optimization calculations are executed. Then, the results of the optimization are reported in ".txt" format.
Finally, the submarine models having different geometric properties and different design pressures were examined with UWVS Structural Optimizer in order to demonstrate the success of the optimization. Two of those examples were analysed with three different material types. These are ASTM A516 Grades 70, ASTM A537 Class 1 and ASTM A517 Grades A respectively. Besides, the last example was executed with respect to only the material type of ASTM A537 Class 1. Due to the different yield strength property of those materials, different optimization results emerged. The results of the optimization analyses evaluated considering the established objective functions that based on volume calculations. On the basis of obtained outcomes, it is observed that the value of objective functions decreased dramatically. This situation proves that the optimizations processes were ultimately successful.