Splinelearner: A generative learning system to extract design constraints of a product represented by b-spline surfaces
Splınelearner: B-spline yüzeyler ile ifade edilen ürünün tasarım kısıtlarını jeneratiıf öğrenim yoluyla belirleme
- Tez No: 673375
- Danışmanlar: DOÇ. DR. ERKAN GÜNPINAR
- Tez Türü: Yüksek Lisans
- Konular: Makine Mühendisliği, Mechanical Engineering
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2021
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Lisansüstü Eğitim Enstitüsü
- Ana Bilim Dalı: Makine Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Makine Tasarım ve İmalat Bilim Dalı
- Sayfa Sayısı: 106
Özet
Günümüzde bilgisayar destekli tasarım (CAD) programları, herhangi bir mühendislik çalışmasında bir model tasarlamak için gerekli olan en önemli araçlardan birisi haline gelmiştir. Bu sayede, bir tasarımcı veya mühendis kullanabildiği herhangi bir CAD programı sayesinde istediği tasarımı kolayca modelleyebilir, analiz edebilir ve üretime hazır hale getirebilir. Ancak gerçek bir mühendislik sürecinde, istenilen nihai tasarıma tek seferde ulaşılamaz, tasarım kademeli bir süreç sonucunda elde edilir. Bu süreç içerisinde birden fazla tasarım ve model oluşturulacağından, tasarımcıların modelleri değerlendirmesi ve çeşitlendirmesi için çok fazla zaman ve çaba harcaması gerekmektedir. Bu yüzden bu süreç esnasında harcanan her zaman hem tasarımcı hem de firma için maddi bir kayıp anlamına gelmektedir. Bu nedenle bu işlemi kolaylaştırmak ve tasarımcıların ihtiyaçlarını karşılamak için sürekli olarak çok sayıda farklı çalışmalar yapılmaktadır. Bu amaçla, bu tez çalışmasında Jeneratif Tasarım (GD) metodu ile, kullanıcı değerlendirmeleri üzerinden, bir modelin kullanıcı tarafından kabul edilen veya kabul edilmeyen, kullanıcıya özel tasarım özelliklerini makine öğrenim algoritması ile öğrenerek, istenilen modelleri ve onları oluşturacak kısıtlamaları bulan bir program oluşturarak kullanıcılara tasarımlarını çeşitlendirecek ve istedikleri tasarımı bulmalarına yardımcı olacak bir tasarım platformu geliştirmektir. Ürün tasarımı, tasarım (boyutsal) parametreleri ile bir CAD modelini içerir. Jeneratif tasarım (GD) sistemi ise daha sonra bu parametreleri değiştirerek yeni tasarımlar oluşturmak için kullanılmaktadır. Bu tasarım parametreleri bir ürünün tasarım uzayında mevcut olan iyi tasarımları bulmak için kullanılan tasarım kıstaslarıdır. Her ne kadar bu parametreler manuel olarak belirlenebilse de bu işlem deneyimli tasarımcılar için bile doğru şekilde gerçekleştirmesi zor bir işlemdir. Normal bir CAD programında tasarım yaparken kullanılan parametrik tasarım kısıtlamalarının (eş merkezlilik, diklik, paralellik, mesafe) aksine, GD sistemlerinde tasarım alanı çok fazla kısıtlandığında, tasarım kısıtlarının dışında kalan kullanıcı tarafından istenilebilecek bazı tasarımları yok edebilirken, yeterince iyi belirlenmemiş tasarım kısıtları, istenmeyen tasarımlar oluşturabilir ve kullanıcıya fayda sağlamak yerine tasarım sürecine zarar verebilir. Bu nedenle oluşturulacak GD sistemi, bir tasarımın ve parametrik olarak yapılan modifikasyonlardan sonra elde edilen modelin görsel geçerliliğini belirlemeli ve bu modelleri oluşturan parametrelerin aralıklarını bulabilmelidir. Bu bilgilerin ışığında, bu tez çalışmasını gerçekleştirmek için öncelikle öne sürülen sistem, geniş bir modelleme çeşidine sahip otomatik bir yüzey modifikasyon aracına sahip olmalı ve oluşturulan bu modellerin kullanıcılar tarafından görsel olarak değerlendirilip, sistem tarafından tasarım kısıtlarını öğrenilmesini sağlayacak bir yapay zekâ modülüne sahip olmalıdır. Bu sebeple önerilen yöntem; modelleme, öğrenme ve doğrulama olmak üzere üç ana bölümden oluşmaktadır. İlk olarak bir model üzerinde tanımlanabilecek anlamlı veya anlamsız sonsuz sayıda farklı deformasyon mevcuttur ve bunların tek bir yöntem ile başarılı bir şekilde belirlenmesi mümkün değildir. Öne sürülen yöntemimizde verilen modelin tasarım uzayı içerisinde mümkün olduğunca çok sayıda birbirinden farklı tasarımlar oluşturabilecek ve bununla birlikte mümkün olan en az sayıda parametreden oluşan bir modifikasyon yöntemi gerekmektedir. Bu ihtiyaçlar doğrultusunda, B-Spline yüzeyinde kullanılmak üzere, içerisinde hem modifikasyon hem de sınırlandırma için kullanılan konik tabanlı modifikasyon eğrilerini bulunduran, çok sayıda yüzey oluşturacak, az sayıda tasarım (deformasyon) parametresine sahip olan yeni bir eğri tabanlı deformasyon tekniği önerilmiştir. Modifikasyonların oluşturduğu yüzeylerin kalitesini artırmak adına ayrıca bir yüzey düzeltme algoritması da bu aşamaya dahil edilmiştir. Daha sonra geliştirilen bu yüzey deformasyon aracı, SplineLearner adı verilen bir tasarım ara yüzü içerisine Jeneratif Öğrenme süreci gerçekleştirmek için entegre edilmiştir. Bu sayede verilen herhangi bir yüzey için, bu araç yardımıyla sadece tek bir tuş ile rastgele modifikasyonlar yapılarak yeni tasarımlar elde edilebilir. Tezin ikinci aşamasında, oluşturulan bu modellerin kullanıcının tasarım istekleri doğrultusunda kabul edilebilir olup olmadıklarını belirleyecek bir metot öne sürülmüştür. Bu metotta, modelleri sadece görsel niteliklerine göre değerlendirmek üzere, SplineLearner ara yüzü tarafından yeni yüzey tasarımları oluşturularak kullanıcılara gösterilir ve bu modeller kullanıcılar tarafından kabul edilebilir veya edilemez olarak değerlendirerek, kullanıcıların kendi tercihlerini içeren bir veri seti oluşturulmuştur. Kullanıcıların yaptığı bu sınıflandırmalar basit bir algoritma ile belirlenemeyeceği ve her kullanıcıya özel olması gerektirdiğinden dolayı, bu işlem günümüzde de sıkça kullanılan makine öğrenme algoritması kullanılarak gerçekleştirilmiştir. 7 farklı makine öğrenimi (MÖ) algoritması arasında testler yaptıktan sonra, XGBoost algoritması MÖ algoritması olarak seçilmiş ve SplineLearner ara yüzüne entegre edilmiştir. Bu MÖ algoritması sayesinde metodumuz herhangi bir kullanıcının tasarım istekleri doğrultusunda istenilen yüzey tasarımları için gerekli parametreleri, algoritmanın ürettiği matematiksel model sayesinde tahmin etme özelliği kazanmıştır. Ayrıca normal bir tasarım uzayında kabul edilebilir modellerin sayısı görece, istenmeyen modellere oranla fazla olabileceğinden, bu dengesizliği önlemek için elde edilen matematik model (bazı kullanıcı değerlendirmelerinden sonra) geçerli ve geçersiz tasarımları dengelemek için de kullanılmıştır. Bu yöntemler SplineLearner ara yüzüne eklendikten sonra bir sonraki kısımda bahsedilecek testler şu şekilde gerçekleştirilmiştir. Öncelikle, SplineLearner ara yüzü üzerinden kullanıcılar belirli bir modelin herhangi bir makine öğrenimi modeli desteği olmadan rastgele üretilen deformasyonlarını değerlendirir. Daha sonra değerlendirilen model sayısı belli bir değere ulaştığında, kullanıcı verisi öğrenilerek bir MÖ modeli oluşturulur. Bu aşamadan sonra üretilecek modeller MÖ desteği ile üretilmektedir. Kullanıcı toplamda 3 kere MÖ modeli eğitimi olmak üzere bu işlemi sürdürür ve istenilen veri sayısına ulaşıldıktan sonra süreç tamamlanır. Son olarak, öne sürülen yöntemlerin doğruluğunu kanıtlamak için, bir araba modelinin gövde parçalarının (kaput, tavan, yan paneller ve bagaj) B-Spline yüzey modelleri kullanılarak, iki farklı kullanıcı çalışması yapılmıştır. Her kullanıcı çalışmasına 10 kişi katılmış, toplamda 30 kişi üzerinden testler gerçekleştirilmiştir. İlk kullanıcı çalışmasında, önerilen eğri tabanlı deformasyon yöntemi yukarıda belirtilen dört yüzey üzerinde gerçekleştirilmiştir. Bu testin sonuçlarının gösterdiği üzere %25 başarıya sahip rastgele oluşturulan modeller önerilen yöntem kullanıldıktan sonra %75-80 aralığında bir başarı oranına ulaşmıştır. İkinci kullanıcı çalışmasında öne sürülen deformasyon yönteminin başarısını gözlemlemek üzere 2 farklı deformasyon metodu (nokta temelli ve kontrol noktası temelli) kullanılarak aynı testler sadece kaput modeli üzerinde gerçekleştirilmiş ve karşılaştırma yapılmıştır. İkinci kullanıcı testi, önerilen yöntemin başarısını doğrulamak için kullanılmıştır. Bu testlere göre öne sürdüğümüz yöntem diğer yöntemlere göre model çeşitliliği ve kullanıcının istediği kabul edilebilir modelleri gösterme açısından çok daha başarılı bir performans sergilemektedir.
Özet (Çeviri)
Product design involves a computer-aided design (CAD) model with its design (dimensional) parameters. A generative design (GD) system can then be utilized to generate new designs by modifying these parameters. Even though these design parameters can be determined manually, defining these parameters properly is a tedious problem to solve (even for experienced designers). While over-constrained design space can discard valid designs, under-constrained design space can generate undesired designs which easily prone to error. Therefore, there is a need for a GD system to determine the visual validity of a design and its parameters that are obtained after parametric modification. In this context, this thesis introduces an approach to learn visual (i.e., design) constraints of a CAD model (represented using B-spline surfaces) by means of user feedbacks. This study consists of three parts: First, a novel curve-based deformation technique in B-spline surfaces has been proposed, which has a few design (deformation) parameters that will create various surfaces by utilizing both modification and limit curves. A refinement step is also added into the deformation process to increase surface quality. Secondly, a generative learning framework called SplineLearner is introduced. Via a generative learning process, the proposed framework generates random designs, which are shown to the user(s) for visual validity classifications. A machine learning algorithm, XGBoost, is used to learn validity of designs from their evaluations. A mathematical model is then computed that can perform prediction for a design to be valid or not. Because the probability of the number of invalid designs is higher, the mathematical model is also integrated into SplineLearner (after some user interactions) to prevent an imbalance between the numbers of valid and invalid designs. Finally, as a proof of concept, B-spline surface models of a car body parts (hood, roof, side, and trunk) are utilized, and two user studies are conducted to demonstrate the efficacy of the proposed method. The first user study is conducted to prove the performance of the proposed curve-based deformation method. The second one is for comparing our method with the existing approaches in literature. According to the user study results, our system, SplineLearner, outperforms over the baseline techniques.