Automating CAD assembly constraints using supervised deep learning
Hyvärinen, Joonas (2021)
Hyvärinen, Joonas
2021
Konetekniikan DI-ohjelma - Master's Programme in Mechanical Engineering
Tekniikan ja luonnontieteiden tiedekunta - Faculty of Engineering and Natural Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2021-08-02
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202107126284
https://urn.fi/URN:NBN:fi:tuni-202107126284
Tiivistelmä
Assembly constraints determine the relative position and allowed movements between CAD models in assemblies, which are an integral part of computer aided design. They comprise both the expertise of CAD designers and information on the purpose of the assembly. Automation of the assembly constraint adding process supports designers by decreasing the design time and enhancing the user experience. This thesis discusses and evaluates a method for automating assembly constraints using supervised deep learning and the convolutional neural network architecture. It investigates the most relevant information of a CAD model to maintain a real-time capable data presentation, as well as the requirements for dataset generation from pre-existing assemblies.
The most relevant information to be extracted from CAD models was investigated through literature review and empirical research. An adjacency graph-based approach was selected based on its benefits compared to other commonly used data presentations in CAD model classification. A method for converting the graph into a matrix presentation was discussed and validated. A data augmentation algorithm for cases in which exact normalization of graph data is difficult was tested to increase the classifier performance. The data extraction method was used on professionally designed CAD assemblies to collect datasets for training, validation and testing of the convolutional neural network model. To test the theory in a real environment, an initial software implementation was developed, and its real-time suitability validated as a part of the Vertex G4 mechanical CAD system.
The analysis showed a strong correlation between data quantity and classifier model performance. The results indicate that augmenting the collected data using the presented methods leads to superior performance compared to a baseline dataset. A classification accuracy of up to 95.46% was reached using the larger matrix presentation and the augmented dataset. Utilization of the presented augmentation method increases the classifier performance by up to 4.7% on average on the calculated performance metrics. Balancing the datasets by making the quantity of each constraint equal led to worse performance than non-augmented data especially in differentiating distance constraints from coincident constraints. Overall, it can be concluded that the presented method is adequate for assembly constraint classification and real-time CAD design workflow. The thesis advances the state of research in the CAD model related machine learning field. Kokoonpanoehdot määrittävät CAD -mallien suhteellisen sijainnin ja sallitut keskinäiset liikkeet kokoonpanoissa, jotka ovat olennainen osa tietokoneavusteista suunnittelua. Ne sisältävät sekä suunnittelijoiden asiantuntemusta että tietoa kokoonpanon tarkoituksesta. Kokoonpanoehtojen asettamisprosessin automatisointi tukee suunnittelijoita vähentämällä suunnitteluaikaa ja parantamalla käyttäjäkokemusta. Tässä opinnäytetyössä käsitellään ja arvioidaan menetelmä kokoonpanoehtojen automatisoimiseksi hyödyntäen ohjattua syväoppimista ja konvoluutioneuroverkkoarkkitehtuuria. Työ tutkii CAD-mallien oleellisimpia tietoja reaaliaikaiseen toimintaan kykenevän datan muodolle sekä vaatimuksia jo olemassa olevien kokoonpanojen käytölle datajoukkojen luomisessa.
Merkityksellisimpiä CAD-malleista kerättäviä tietoja tutkittiin kirjallisuuskatsauksen ja empiirisen tutkimuksen avulla. Vierusgraafiin perustuva lähestymistapa valittiin sen hyötyjen perusteella muihin CAD-mallien luokittelussa yleisesti käytettyihin datan muotoihin verrattuna. Menetelmä graafin muuntamiseksi matriisiesitykseksi käsiteltiin ja validoitiin. Luokittelijan suorituskyvyn parantamiseksi testattiin datan lisäysalgoritmia tapauksissa, joissa graafimuotoisen datan tarkka normalisointi on vaikeaa. Datan keräysmenetelmää käytettiin ammattimaisesti suunnitelluille CAD-kokoonpanoille datan keräämiseksi konvoluutioneuroverkkomallin koulutusta, validointia ja testausta varten. Teorian testaamiseksi todellisessa ympäristössä kehitettiin alustava ohjelmistototeutus ja vahvistettiin sen reaaliaikainen soveltuvuus osana mekaanista CAD-järjestelmää, Vertex G4:ää.
Analyysi osoitti vahvan korrelaation datamäärän ja luokittelumallin suorituskyvyn välillä. Tulokset osoittavat, että kerätyn datan lisääminen esitetyillä menetelmillä johtaa parempaan suorituskykyyn verrattuna lähtötason datajoukkoon. Jopa 95,46%:n luokittelutarkkuus saavutettiin käyttämällä suurempaa matriisiesitystä ja laajennettua datajoukkoa. Esitetyn lisäysmenetelmän käyttö lisää suorituskykyä keskimäärin jopa 4,7% lasketuilla suorituskykymittareilla. Datajoukkojen tasapainottaminen tekemällä kunkin kokoonpanoehdon määrä yhtä suureksi johti huonompaan suorituskykyyn kuin alkuperäisellä datalla koulutettu malli. Etenkin mallin kyky erottaa etäisyysehtoja yhtenevyysehdoista oli huonompi. Kaiken kaikkiaan voidaan päätellä, että esitetty menetelmä on sopiva kokoonpanoehtojen luokittelulle ja reaaliaikaiselle CAD-suunnittelun työnkululle. Opinnäytetyö edistää tutkimustilaa CAD-malliin liittyvällä koneoppimisalalla.
The most relevant information to be extracted from CAD models was investigated through literature review and empirical research. An adjacency graph-based approach was selected based on its benefits compared to other commonly used data presentations in CAD model classification. A method for converting the graph into a matrix presentation was discussed and validated. A data augmentation algorithm for cases in which exact normalization of graph data is difficult was tested to increase the classifier performance. The data extraction method was used on professionally designed CAD assemblies to collect datasets for training, validation and testing of the convolutional neural network model. To test the theory in a real environment, an initial software implementation was developed, and its real-time suitability validated as a part of the Vertex G4 mechanical CAD system.
The analysis showed a strong correlation between data quantity and classifier model performance. The results indicate that augmenting the collected data using the presented methods leads to superior performance compared to a baseline dataset. A classification accuracy of up to 95.46% was reached using the larger matrix presentation and the augmented dataset. Utilization of the presented augmentation method increases the classifier performance by up to 4.7% on average on the calculated performance metrics. Balancing the datasets by making the quantity of each constraint equal led to worse performance than non-augmented data especially in differentiating distance constraints from coincident constraints. Overall, it can be concluded that the presented method is adequate for assembly constraint classification and real-time CAD design workflow. The thesis advances the state of research in the CAD model related machine learning field.
Merkityksellisimpiä CAD-malleista kerättäviä tietoja tutkittiin kirjallisuuskatsauksen ja empiirisen tutkimuksen avulla. Vierusgraafiin perustuva lähestymistapa valittiin sen hyötyjen perusteella muihin CAD-mallien luokittelussa yleisesti käytettyihin datan muotoihin verrattuna. Menetelmä graafin muuntamiseksi matriisiesitykseksi käsiteltiin ja validoitiin. Luokittelijan suorituskyvyn parantamiseksi testattiin datan lisäysalgoritmia tapauksissa, joissa graafimuotoisen datan tarkka normalisointi on vaikeaa. Datan keräysmenetelmää käytettiin ammattimaisesti suunnitelluille CAD-kokoonpanoille datan keräämiseksi konvoluutioneuroverkkomallin koulutusta, validointia ja testausta varten. Teorian testaamiseksi todellisessa ympäristössä kehitettiin alustava ohjelmistototeutus ja vahvistettiin sen reaaliaikainen soveltuvuus osana mekaanista CAD-järjestelmää, Vertex G4:ää.
Analyysi osoitti vahvan korrelaation datamäärän ja luokittelumallin suorituskyvyn välillä. Tulokset osoittavat, että kerätyn datan lisääminen esitetyillä menetelmillä johtaa parempaan suorituskykyyn verrattuna lähtötason datajoukkoon. Jopa 95,46%:n luokittelutarkkuus saavutettiin käyttämällä suurempaa matriisiesitystä ja laajennettua datajoukkoa. Esitetyn lisäysmenetelmän käyttö lisää suorituskykyä keskimäärin jopa 4,7% lasketuilla suorituskykymittareilla. Datajoukkojen tasapainottaminen tekemällä kunkin kokoonpanoehdon määrä yhtä suureksi johti huonompaan suorituskykyyn kuin alkuperäisellä datalla koulutettu malli. Etenkin mallin kyky erottaa etäisyysehtoja yhtenevyysehdoista oli huonompi. Kaiken kaikkiaan voidaan päätellä, että esitetty menetelmä on sopiva kokoonpanoehtojen luokittelulle ja reaaliaikaiselle CAD-suunnittelun työnkululle. Opinnäytetyö edistää tutkimustilaa CAD-malliin liittyvällä koneoppimisalalla.