ML guided User Assistance for 3D CAD Surface Modeling: From Image to
Customized 3D Mouse Model
MSc Advanced Product Design Engineering & Manufacturing
By
GEORGIOS KONSTANTINOS KOURTIS
Abstract
The design of 3D CAD surfaces, notably in mouse design, often necessitates a specialized
understanding and expertise. This thesis presents an innovative approach that harnesses machine learning
(ML) to facilitate 3D CAD surface modeling. The primary objective is to develop a demonstration
platform that uses ML to process user input, identify the most similar pre-existing design from a database,
and guide the user in modifying the chosen design to meet their specific requirements. The demonstration
platform will offer step-by-step guidance, assisting users in adapting the suggested mouse surface design
to match their design preferences. This ML-guided approach aims to inspire users to explore more
inventive designs while saving both time and costs by streamlining the design process. The pivotal
project objectives encompass the development of a machine learning model capable of interpreting user
input and identifying the closest match from an existing database of designs, the construction of an
interactive demo that integrates with 3D CAD software, and the preparation of a comprehensive report
documenting all stages of the project. The implementation of the proposed demo will yield a more
efficient and streamlined surface modeling experience for users. The machine learning model, trained on
a robust dataset of user inputs and mouse designs, will facilitate the identification and modification of an
existing design, effectively assisting users in achieving their design goals. In summary, this thesis seeks
to synergize ML and CAD surface modeling, offering enhanced assistance to users. The anticipated
outcome includes a demo and machine learning model that are poised to significantly advance the process
of 3D CAD surface design, particularly for mouse design, optimizing creativity, efficiency, and user
satisfaction.
ML guided User Assistance for 3D CAD Surface Modeling: From Image to Customized 3D Mouse Model
1. ML guided User Assistance for 3D CAD Surface Modeling: From Image to
Customized 3D Mouse Model
MSc Advanced Product Design Engineering & Manufacturing
By
GEORGIOS KONSTANTINOS KOURTIS
SUPERVISOR
VASILEIOS SAGIAS
UNIVERSITY OF WEST ATTICA – KINGSTON UNIVERSITY LONDON
DEPARTMENT OF MECHANICAL ENGINEERING
SEPTEMBER 2023
2.
3. I hereby declare responsibly that this thesis is entirely my own work, and no part of it has been copied
from printed or electronic sources, translated from foreign sources, or reproduced from the works of
other researchers or students. Where I have relied on ideas or texts from others, I have made every effort
to clearly specify it through the use of references, adhering to academic ethics.
4.
5. Abstract
The design of 3D CAD surfaces, notably in mouse design, often necessitates a specialized
understanding and expertise. This thesis presents an innovative approach that harnesses machine learning
(ML) to facilitate 3D CAD surface modeling. The primary objective is to develop a demonstration
platform that uses ML to process user input, identify the most similar pre-existing design from a database,
and guide the user in modifying the chosen design to meet their specific requirements. The demonstration
platform will offer step-by-step guidance, assisting users in adapting the suggested mouse surface design
to match their design preferences. This ML-guided approach aims to inspire users to explore more
inventive designs while saving both time and costs by streamlining the design process. The pivotal
project objectives encompass the development of a machine learning model capable of interpreting user
input and identifying the closest match from an existing database of designs, the construction of an
interactive demo that integrates with 3D CAD software, and the preparation of a comprehensive report
documenting all stages of the project. The implementation of the proposed demo will yield a more
efficient and streamlined surface modeling experience for users. The machine learning model, trained on
a robust dataset of user inputs and mouse designs, will facilitate the identification and modification of an
existing design, effectively assisting users in achieving their design goals. In summary, this thesis seeks
to synergize ML and CAD surface modeling, offering enhanced assistance to users. The anticipated
outcome includes a demo and machine learning model that are poised to significantly advance the process
of 3D CAD surface design, particularly for mouse design, optimizing creativity, efficiency, and user
satisfaction.
Georgios Konstantinos Kourtis iii
6.
7. Acknowledgements
This thesis is the culmination of my research work in the field of ML and CAD Automation, focusing on
"ML guided User Assistance for 3D CAD Surface Modeling: From Image to Customized 3D Mouse
Model." Its central objective is to design a demo that offers users comprehensive guidance and assistance
throughout the process of 3D CAD surface modeling. The project entails developing a machine learning
model capable of analyzing user actions and providing suggestions that align with design parameters
such as surface size, shape, and curvature. I have chosen to delve into this specific field due to my keen
interest in exploring the intersection of ML, CAD Automation, and their potential applications.
I would like to express my sincere gratitude to my friends and colleagues, George, Giannis, and Nikos,
whose unwavering support and assistance have been invaluable throughout these two years. Their
willingness to lend a helping hand whenever I needed it has been a testament to their exceptional
character and unwavering dedication. Additionally, I extend my heartfelt appreciation to my supervisor,
Prof. Vasileios Sagias, for his invaluable guidance throughout the thesis and for igniting my interest in
R&D Digitalization through CAD automation.
Above all, I am profoundly grateful to my family and my girlfriend, Vivi, as their unwavering support has
been the cornerstone of my accomplishments. They have placed their trust in me, supported my decisions,
celebrated my successes, and provided strength and encouragement during both moments of triumph and
adversity. It is thanks to their unwavering belief in me that I have found the courage to pursue my dreams.
Georgios Konstantinos Kourtis
Denmark, September 2023
Georgios Konstantinos Kourtis v
15. Chapter 1
Introduction
1.1 Problem Area
The fusion of machine learning and computer-aided design (CAD) software is poised to revolutionize
the manufacturing industry. The advent of these technologies has created unique opportunities for
innovation, efficiency, and improvement in the product development process. The problem area this thesis
focuses on is situated at the intersection of three key technologies: CAD, Application Programming
Interfaces (APIs), and Machine Learning (ML). By exploring and understanding the potential synergies
between these areas, this study aims to provide insights and develop solutions for automating 3D surface
modeling in CAD.
The intersection of machine learning and 3D CAD modeling brings forth a wealth of possibilities for
numerous industries. Below is a small highlight of a few sectors where this synergy could revolutionize
traditional processes.
• Jewelry design, with its intricate and complex surfaces, stands to gain immensely from machine
learning guidance in 3D CAD modeling. Designers, especially novices, could considerably enhance
their productivity and precision, thereby translating their creative visions into tangible art more
effectively (Gupta, Damani, and Narahari 2018).
• In industrial design, complex geometric prototypes and products can be crafted more efficiently
using machine learning. This intelligent system could expedite the design process, reduce costs,
and thereby accelerate the speed to market (Li and Wang 2023).
• Architects leveraging 3D CAD for designing structures with elaborate geometries could also benefit
significantly. Machine learning could enable them to push the envelope of creativity and design
ambition, while simultaneously curbing time and cost expenditures (Chaillou 2019).
• In the realm of automotive design, vehicles’ prototypes and components often feature complex
curves and surfaces. With machine learning offering modeling guidance, designers could conceive
more aerodynamic and efficient designs, reducing the design timeline and costs (Shimizu et al.
2021).
Georgios Konstantinos Kourtis 1
16. 1. Introduction
1.2 Introduction and Overview of CAD, ML, and ML in CAD
1.2.1 APIs in CAD
Application Programming Interfaces, more commonly known as APIs, play a crucial role in ensuring
software interactivity. Essentially, APIs define the methods and data formats that allow different software
applications to communicate with each other. When we bring this concept into the realm of Computer-
Aided Design (CAD), APIs take on a transformative role. They provide programmers with the means
to both automate and customize CAD software. This opens the door to more efficient workflows and a
higher degree of precision and consistency in the design process (Zbiciak, Grabowik, and Janik 2015).
Further, APIs are the foundational tools that facilitate the creation of applications capable of directly
interacting with CAD software. This interaction is critical as it automates a significant number of tasks
that would traditionally require manual input and oversight, thereby streamlining the overall design
process.
Beyond serving as mere facilitators of automation, APIs in CAD environments also enable a higher
degree of customization. Designers and engineers can leverage APIs to tailor the CAD software to their
unique needs, thereby increasing productivity and reducing the chances of error (Abidin and Zahid 2019).
They can create scripts and plugins to automate repetitive tasks, integrate the CAD software with other
systems, or even develop entirely new features. As such, APIs in CAD not only improve the efficiency of
the design process, but also its flexibility and adaptability.
1.2.2 Machine Learning
Machine Learning (ML), a branch of artificial intelligence, is a method of data analysis that automates
the construction of analytical models. It involves designing and applying algorithms capable of learning
from and making predictions or decisions based on data. In essence, machine learning enables computers
to handle new situations through analysis, self-training, observation, and experience (Janiesch, Zschech,
and Heinrich 2021). As datasets grow larger and computations become more complex, machine learning
has emerged as a vital component of technological innovation across a diverse range of industries.
Notably, machine learning algorithms have the capacity to improve over time. They can learn from
their mistakes, adapt to new data, and gradually improve their predictions or decisions. This makes
them particularly useful for tasks that involve large amounts of data or complex computations, where
manual analysis would be time-consuming or impractical. Additionally, machine learning algorithms can
uncover patterns and insights within the data that might be difficult or impossible for humans to detect.
These capabilities make machine learning a powerful tool for a variety of applications, ranging from
predictive analytics to autonomous systems.
1.2.3 Machine Learning in CAD
The merger of machine learning and CAD opens up a world of remarkable possibilities. Machine
learning has the potential to augment the functionality and capabilities of CAD software, leading to
improvements in the speed, efficiency, and quality of the design process. For instance, machine learning
algorithms can learn from existing CAD models to predict and generate new designs, automate the
detection of design errors, or even optimize designs for specific criteria (Rapp et al. 2022).
2 Georgios Konstantinos Kourtis
17. Introduction and Overview of CAD, ML, and ML in CAD
Moreover, machine learning can facilitate the creation of more intelligent CAD systems. These
systems can learn from user interactions and adapt to individual users’ preferences and habits, making
the design process more intuitive and user-friendly. They can also incorporate knowledge from various
sources, such as design standards or historical design data, to provide users with real-time design
suggestions and feedback.
Despite the promising possibilities that machine learning brings to the table, its application within
CAD is still an emerging field. Many potential benefits remain untapped, and there are significant
challenges to overcome, such as the complexity of CAD data and the need for large amounts of training
data. Nonetheless, the potential of machine learning in CAD is immense, and its exploration is a
fascinating journey that promises to reshape the landscape of design technology (Kahng 2023).
Figure 1.1: Visualization of Machine Learning Software: Processing 3D Model Data and Leveraging
Advanced Techniques for Production.
As mentioned before, the problem area for this thesis stems from a desire to leverage these
technologies —APIs, CAD, and Machine Learning— to create an innovative solution for automating 3D
surface modeling. By developing an API that uses machine learning to predict and generate 3D models
based on user input, a more intuitive, efficient, and user-friendly design process is going to be created. At
the following chapters, a deeper analysis into the state of the art in these areas is going to be happen, in
order to identify gaps where this research can contribute.
Georgios Konstantinos Kourtis 3
18.
19. Chapter 2
State of the Art
2.1 CAD Automation through API
As already mentioned in the introductory section, the vast landscape of CAD (Computer-Aided
Design) APIs (Application Programming Interfaces) is becoming a powerhouse for design and
manufacturing innovation. As an interface that allows various software components to communicate,
CAD APIs have played a critical role in automating design tasks, integrating multiple engineering
software systems, enabling generative design methodologies, and extracting advanced features from
CAD models.
As we delve into CAD API applications and advancements, we will spotlight five notable works that
each highlight a different aspect of CAD automation, prioritizing those most relevant to our work scope
and gradually shifting towards those with lesser relevance to our specific domain. These papers unfold
the possibilities of CAD APIs in automating design tasks, thereby transforming the traditional design
methodologies into more streamlined, efficient, and dynamic processes. They explore a broad range of
topics from enhancing automation in the design process to utilizing APIs to bridge gaps between different
CAD software. Each paper showcases how CAD APIs can re-engineer design workflows, driving a
significant shift from manual to automated design processes, thereby setting a dynamic context for the
discussions to follow.
Figure 2.1: CAD BASED PRODUCT DESIGN A CASE STUDY: Part design process of spur gear and
Assembly process flow of a wheel.
The paper titled "CAD BASED PRODUCT DESIGN: A CASE STUDY" (Kyratsis et al. 2019)
makes a contribution to the field of CAD automation by showcasing the application of the Application
Programming Interface (API) of SolidWorks™. This paper underscores the crucial role of design in the
product lifecycle, emphasizing the need for speed and adaptability in the design modification stage.
Georgios Konstantinos Kourtis 5
20. 2. State of the Art
One salient feature of this study is the development of an automated design application to streamline
the design process of a complex product: a bicycle. This application is built upon the premise of
automating repetitive and time-consuming tasks, saving valuable time and resources while maintaining a
high standard of product quality.
An aspect of this case study is the use of VBA in order to facilitate the creation of a user-friendly
interface, thereby enabling designers to quickly and effectively implement design changes. Such
automation not only accelerates the design process but also empowers designers to easily customize
various aspects of the bicycle design such as size, frame style, color, wheels, handlebar, saddle, etc.
The application follows a straightforward input-output workflow. The user inputs necessary data
into an easy-to-use interface divided into five tabs. On completing the input process, a command button
initiates the design process, culminating in a fully assembled and parametrically designed model of
a bicycle. In addition, the system produces a rendered model of the bicycle, applying the specified
attributes for illustration purposes.
In addition to automation, the case study highlights the flexible nature of the API, which can be used
to create simple and effective tools that serve various purposes in product design and manufacturing. Thus,
the paper extends the conversation around CAD automation, demonstrating the tremendous potential of
APIs in optimizing design processes for a wide range of products.
Furthermore, the paper also encompasses a literature survey, which discusses several tools developed
with the aid of different API systems. This includes applications for automatic design and manufacturing,
specialized tools for specific purposes like artificial measuring, machining simulation, robot simulation,
and more.
Figure 2.2: Real time object customization in CAD system: Developed GUI is activated in NX10 system.
The paper "Real time object customization in CAD system" (Abidin and Zahid 2019) presents a
6 Georgios Konstantinos Kourtis
21. CAD Automation through API
new approach to object customization in CAD (Computer Aided Design) systems that allows real-time
modification of 3D models. The traditional approach to modifying a CAD model relies heavily on manual
editing. However, this proposed tool aims to simplify the process, speed it up, and reduce the likelihood
of mistakes.
The program is developed using Visual Basic (VB) and a custom Graphical User Interface (GUI),
integrated into the NX10 CAD/CAM software interface. The research paper provides a method to
translate 3D model modification instructions into programming codes using Journaling tools in the NX
interface. These codes are then linked to the GUI, allowing the user to make real-time changes to the
model with minimum process steps.
A significant advantage of this method is the capacity to modify the 3D model in real time, which
was a limitation in the traditional process, as changes could only be made after setting parameter values,
thus making the modification process not instantaneous.
This tool has substantial potential applications in industries like furniture design where modifications
in terms of size, shape, and additional compartments are commonplace. By automating these
modifications, designers can save time and reduce repetitive tasks, thereby minimizing potential errors
and improving productivity.
The tool is also evaluated based on its performance in reducing process steps and time spent modifying
the 3D model in the CAD system. The authors, therefore, suggest that this tool could have wide-ranging
impacts on various industries by allowing real-time customization and modification of designs.
The paper "A basic automated CAD modelling approach for an IC engine piston" (Sirigiri and
Esanakula 2022) introduces an automated Computer-Aided Design (CAD) modeling approach for
creating and improving designs of Internal Combustion (IC) engine pistons. Recognizing that traditional
CAD techniques are time-consuming and that even small alterations can have significant effects on the IC
engine assembly, the authors propose an automation method that leverages parametric modeling, CAD
software, SolidWorks, and a customized Graphical User Interface (GUI). They suggest that this approach
not only reduces design and modeling time but also allows for efficient reuse of design data. The authors
also discuss related concepts such as Knowledge-Based Engineering (KBE), Design Automation, the role
of Application Programming Interfaces (APIs), and Visual Basic (VB) in their proposed methodology.
The paper "Automated CAD Modelling of Mechanical Components" (Joshi et al. 2017) addresses the
repetitive and time-consuming process of modeling similar components in the manufacturing industry.
The authors propose a method to automate geometric CAD modeling, thereby enhancing productivity
and reducing the chances of errors. The paper highlights the limitations of existing CAD software
and traditional modeling methods, such as human errors, the high skill level required, high costs, and
limited shape variation accommodation. The authors suggest automation through customizing the CAD
software according to the Application Programming Interface (API) could resolve these issues, enhancing
efficiency, minimizing errors, and potentially reducing costs.
The paper, "Generation of rule-adhering robot programs for aluminum welding automatically from
CAD" (Tran et al. 2023) presents an innovative method for the automatic generation of robot welding
programs from CAD (Computer-Aided Design) data, particularly catering to the growing demand for
Georgios Konstantinos Kourtis 7
22. 2. State of the Art
product customization. The developed programs consider specific welding conditions and requirements,
thereby ensuring appropriate welding operations and maintaining structural integrity. To attain this,
the paper leverages information extracted from a topological analysis of tessellated geometry local to
the weld joint, in combination with available CAD API functions. The approach is implemented using
Siemens NX and the Robotics Toolbox for Python and tested on different node configurations and a
stiffener piece. The paper emphasizes that this system can generate programs that comply with the
allowed welding operations provided a solution exists, significantly advancing the capabilities of robotic
welding in manufacturing industries.
8 Georgios Konstantinos Kourtis
23. ML Intergration into CAD systems
2.2 ML Intergration into CAD systems
The incorporation of Machine Learning (ML) into the realm of Computer-Aided Design (CAD) has
opened up an exciting frontier, accelerating innovation and pushing the boundaries of design technology.
This convergence of disciplines has given birth to numerous robust and sophisticated systems, each
demonstrating the profound impact of blending ML’s analytical prowess with CAD’s design intricacies.
In the rapidly evolving landscape of ML, it’s a challenging task to capture the full scope of its
integration into CAD. Our primary aim is to showcase ten examples of this integration, prioritizing those
most relevant to our work scope. We will analyze each of these instances, gradually shifting towards
those with lesser relevance to our specific domain. Each instance represents a significant contribution to
the field, successfully weaving together ML and CAD into a well-defined system, generating insightful
research and serve as a testament to the potential that lies at the intersection of these two dynamic fields.
Figure 2.3: Deep CAD/CAE framework of the 3D Conceptual Wheel.
"Integrating Deep Learning into CAD/CAE System: Generative Design and Evaluation of 3D
Conceptual Wheel" (Yoo et al. 2021) illustrates how deep learning has been integrated into the CAD/CAE
framework, specifically during the conceptual design phase. The framework automatically generates
3D CAD designs and evaluates their engineering performance, signifying a significant advancement in
CAD/CAE system development.
In essence, this research outlines a deep learning-based CAD/CAE framework that combines
generative design, CAD/CAE automation, and advanced machine learning technologies. This holistic
approach seeks to address the early stages of the design phase by automatically generating and evaluating
3D CAD data. The focus is on establishing viable conceptual designs early on, thereby increasing
efficiency and improving outcomes.
The framework introduces several key components that contribute to the overall process:
Georgios Konstantinos Kourtis 9
24. 2. State of the Art
• 2D generative design: Leveraging deep learning, this component generates multiple potential
designs based on pre-set constraints.
• Dimensionality reduction: This process helps manage the complexity of the design space and
efficiently represents the design candidates.
• Design of experiment (DOE) in latent space: This procedure helps explore and understand the
design space.
• 3D CAD automation: This part automates the creation of 3D CAD models from the designs
generated.
• Transfer learning: The system employs transfer learning techniques to apply knowledge from one
problem and apply it to another.
• CAE automation: Here, the framework evaluates the generated designs from an engineering
standpoint.
• Visualization and analysis: The final component enables designers to visualize and analyze the
conceptual designs for further refinement.
One of the standout benefits of this approach is the capability to automatically generate a large
number of feasible 3D wheel CAD models and provide immediate predictions for modal analysis results.
This is done without necessitating an extensive 3D CAD/CAE modeling process, thereby reducing the
time typically needed for these stages.
The proposed framework allows designers to instantly evaluate the engineering performance of new
designs, omitting the need for engineers to manually review them. By having AI generate and evaluate
a large number of CAD models, the designer can focus on selecting and refining the most promising
candidates for detailed designs.
Figure 2.4: SketchGraphs: Example sketch (left) and a portion of its geometric constraint graph (right).
Constraints are denoted as edges that either act on a primitive as a whole or some subcomponent of the
primitive.
"SketchGraphs: A Large-Scale Dataset for Modeling Relational Geometry in Computer-Aided
Design" (Seff et al. 2020) introduces a new data set, "SketchGraphs," which comprises 15 million sketches
extracted from real-world CAD models. The sketches are represented as geometric constraint graphs,
10 Georgios Konstantinos Kourtis
25. ML Intergration into CAD systems
thereby enabling training Machine Learning models to reason about and synthesize parametric CAD
designs. This dataset facilitates exploration of program synthesis and induction, further strengthening the
tie between Machine Learning and CAD.
The creation of this Dataset aims to make significant strides in combining machine learning models
with CAD, thereby bringing about more effective and efficient design workflows. This is crucial because
this area sits at the crossroads of graphics, relational reasoning, and program synthesis, making it a
challenging yet fertile ground for innovation and advancement.
The paper draws parallels between the process of designing physical objects in a parametric CAD
system and constraint programming. It highlights that both involve defining rich geometric structures
through an implicit program.
Below is a deeper look at the key points mentioned in the paper:
• Modular Approach to Design: The paper emphasizes that modern physical object design mirrors
modular programming, where simple subcomponents are put together to form a more complex
assembly. In parametric CAD, parts start as a collection of 2D sketches composed of geometric
primitives, like line segments, circles, and more. These primitives have associated parameters, and
their final configuration is determined through specified constraints.
• Using ML to Construct and Reason about Object Designs: Machine learning models can be trained
on the SketchGraphs dataset to learn to construct and reason about object designs. Such models,
when adapted to CAD, can suggest subsequent steps based on partial geometry, or offer corrections
for implausible operations. They can also infer the underlying feature history when provided with
visual observations of a part or sketch, allowing for direct modification in CAD software.
• Understanding Human-Designed Structures for AI Research: The paper underscores the relevance
of understanding human-designed structures for AI research. By learning to reason about the
creation of objects, AI could identify hierarchical structures, long-range symmetries, and functional
constraints that would be difficult to infer from vision alone.
• Application of SketchGraphs Dataset: The dataset can be used to train models for various
applications, including autocompleting partially specified geometry (conditional completion),
automatically applying natural constraints reflecting likely design intent (autoconstrain), and
inferring CAD from images.
The potential application of this work to our own project is possible. The dataset could be used to train
a machine learning model that can predict 3D geometry based on a user’s 2D sketches, thereby providing
real-time feedback and guidance during surface model design. This could improve user experience,
reduce errors, and streamline the design process.
Georgios Konstantinos Kourtis 11
26. 2. State of the Art
Figure 2.5: CAD Defeaturing Using Machine Learning: Defeaturing example.
In the paper, "CAD Defeaturing Using Machine Learning" (Owen, Shead, and Martin 2019) a novel
machine-learning-based method to defeature CAD models for tetrahedral meshing is described. This
technique uses machine learning predictions of mesh quality for geometric features of a CAD model
before meshing, improving meshing outcomes by presenting a prioritized list of suggested geometric
operations to users. The training of machine learning models uses a combination of geometric and
topological features from the CAD model and local quality metrics for ground truth. The application of
Machine Learning in this context shows its ability to predict potential problem areas and thus improve
CAD outcomes.
The authors of the paper argue that manual defeaturing requires significant time, effort, and expertise.
A user must identify irrelevant features and carefully use advanced software tools to remove them. This
process relies heavily on the user’s understanding of the physics being simulated, the process of mesh
generation, and the expected quality of the resulting mesh.
The proposed system aims to streamline this process. It presents users with a ranked list of geometric
entities in the CAD model that are likely to result in suboptimal mesh quality. For each entity, it provides
a set of suggested modifications, ranked by their predicted ability to improve mesh quality. Users can
then preview, adjust, and implement these modifications as needed. The system uses machine learning to
predict the effect of each modification on mesh quality, enabling more efficient and effective defeaturing.
The researchers acknowledge that while their method offers a "greedy" approach to defeaturing by
suggesting solutions to each problem in isolation, it may not necessarily provide the optimal solution
for the overall model. However, they argue that it provides a principled, data-driven starting point,
particularly for users with less experience.
While previous works have applied machine learning to shape recognition and classification in CAD
models, the authors claim that their approach is novel in using machine learning to predict and improve
mesh quality outcomes.
Overall, this paper presents a novel use of machine learning to improve the process of defeaturing in
CAD models, potentially saving time and improving the quality of subsequent computational simulations.
12 Georgios Konstantinos Kourtis
27. ML Intergration into CAD systems
The authors’ approach also provides a way for less experienced users to begin defeaturing, guided by
predictions from trained models.
The possibility of future research extending this approach to other aspects of CAD model preparation,
such as correcting interactions between different parts of a model, has also been discussed.
Figure 2.6: Machine Learning for Object Recognition in Manufacturing Applications: Feature recognition
results example
In "Machine Learning for Object Recognition in Manufacturing Applications" (Yun et al. 2023)
the authors review Machine Learning techniques for recognizing objects, features, and constructing
process plans, providing insight into its implementation in various smart manufacturing applications.
They emphasize the potential of Machine Learning for feature recognition in manufacturing.
The goal is to enable rapid information sharing among manufacturers, suppliers, customers, and
governments. This development is in line with global trends towards advanced manufacturing concepts
like "Industry 4.0", "Monozukuri", "Factories of the Future", and "Industrial Internet".
The paper notes the potential of Machine Learning, combined with big data, to generate more profit
across various industries. Specifically in manufacturing, ML can be used for predicting tool wear, which
is difficult to do with traditional model- or physics-based predictive models. Such predictive maintenance
in Machine Learning improves machine intelligence and can potentially automate conventional decision-
making procedures in manufacturing.
The authors also discuss the traditional iterative process for production planning, which involves
designers, manufacturers, and process planners. They note that this process is time-consuming and
costly, and often relies on the experience or skill of manufacturing personnel. However, as experienced
personnel retire, there’s a need for strategies to replace this knowledge within the cyber manufacturing
framework.
The authors see great potential in the use of machine learning for automated feature recognition
Georgios Konstantinos Kourtis 13
28. 2. State of the Art
(AFR) from the drawings, which traditionally relies heavily on human experience. Despite the challenges
in automating the process due to complexity and interaction of features, the authors believe that ML has
the potential to enhance this process significantly.
In this study, the authors review the techniques for recognizing objects for manufacturing a CAD
model using Machine Learning. They explore feature recognition techniques from the CAD model and
estimating manufacturability before computer-aided process planning (CAPP).
Therefore, the significance of this paper lies in its exploration of the potential of machine learning in
automating the process of feature recognition and manufacturability estimation in the context of cyber
manufacturing, thereby addressing the challenges of the traditional production planning process.
In the study, "Comparing CAD part models for geometrical similarity: A concept using machine
learning algorithms" (Bickel et al. 2021) a method for comparing a newly designed part with a pool of
validated models to identify the most similar one is proposed. This approach has significant potential
for reducing development costs, shortening the production start-up time, and improving product quality.
Utilizing Machine Learning algorithms, CAD part models are segmented into specific, manufacturing
relevant groups, and similarities between segmented geometries are identified. The process involves
global similarity comparison, part segmentation, and local similarity comparison. The study shows how
Machine Learning has a notable potential for efficiency in CAD workflows.
The paper titled "Explaining and Interpreting Machine Learning CAD Decisions: An IC Testing
Case Study"(Krishnamurthy et al. 2020) presents a methodology to elucidate and comprehend machine
learning decisions within the context of Computer-Aided Design (CAD) flows, focusing specifically on a
case study in VLSI testing. The proposed methodology aims to offer designers a deeper understanding of
the "black box" machine learning models/classifiers by providing human-readable explanations based on
commonly understood design rules or novel design rules.
As described in the "Survey of Machine Learning for Electronic Design Automation" (Gubbi et al.
2022) demand for semiconductor ICs has risen, and with the slowdown of Moore’s law, the focus has
turned towards machine learning to enhance EDA and CAD tools and processes. These ML-based tools
span various stages of IC design, from Synthesis and Physical Design to Static Timing Analysis (STA),
Design for Test (DFT), Power Delivery Network analysis, and Signoff. This integration offers exciting
new trends and future perspectives in the VLSI-CAD domain.
Another promising development is the application of machine learning for geometry processing.
The class "Autonomous Geometry Processing Using Machine Learning & Forge" (Jadhav et al. 2019)
addresses the challenge of extracting geometrical information from STL mesh models for manufacturing
applications. Machine learning techniques offer a solution by identifying features in mesh data and
supporting efficient geometry processing. The integration of Autodesk Forge for data translation and
viewing and the utilization of AWS cloud infrastructure showcases the potential for extensive automation
in manufacturing processes.
The merging of AI-based Computer-Aided Engineering (CAE) with automated product design
presents a novel approach to optimizing engineering workflows. The paper "AI-based Computer Aided
Engineering for automated product design - A first approach with a Multi-View based classification"
14 Georgios Konstantinos Kourtis
29. ML Intergration into CAD systems
(Krahe et al. 2019) discusses the development of an AI-based assistant system to facilitate the design
process. This system leverages machine learning to extract implicit knowledge from existing CAD models
and suggest useful next design steps, thereby reducing design redundancy and promoting error-free,
efficient production.
Finally, "Machining feature recognition based on deep neural networks to support tight integration
with 3D CAD systems" (Yeo et al. 2021) provides an example of integrating 3D CAD systems tightly
with deep neural networks. By using feature descriptors as inputs to neural networks, the proposed
method recognizes machining features, thereby effectively overcoming problems that can arise during
the format conversion of 3D models.
Georgios Konstantinos Kourtis 15
30. 2. State of the Art
2.3 Surface Design
Advanced modelling is an upgrade of basic modelling that ends in surface modelling, which is
basically a digitised version of freehand drawing, or designing structures with the use of mathematical
curves, representing processes in nature. (Vukašinović and Duhovnik 2019, p. 2)
In order to comprehend the objectives and the forthcoming steps of this project, it is critical to
understand in depth the concept of Surface Design modelling, mentioned earlier. Surface design
encompasses the techniques and methodologies used to create the exterior elements, specifically the
surfaces, of a three-dimensional model or object. It is a branch of CAD design which has gained
prominence in various industries owing to its ability to generate complex and highly detailed design
elements that add aesthetic and functional value to the product.
Surface design is heavily reliant to linear elements, generally referred to as curves. They represent
an edge or a connection between two points. A surface can be formed by linear elements related to
one another in some relationship. In the Cartesian coordinate system we normally use orthogonality at
the intersections between linear elements (curves) (ibid., p. 11). The interpenetration of orthogonally
connected linear elements (curves) is used to present a surface. B-splines curves, that are very often
used in computer graphics and modellers are a powerful tool in computer geometry in their own right;
however, they lack further flexibility due to the B-splines being unable to exactly describe the curves
in the family of conic sections (i.e., parts of circles, ellipses, parabolas or hyperbolas). For this reason,
the need arose to rationalise B-splines by adding to each control point of a B-spline a new parameter wi
(the fourth coordinate), referred to as the weight. It allows an accurate determination of the effect of the
control point. A rational form of a non-uniform B-spline (NURBS) that introduces control-point weights
is defined as: (ibid., p. 20)
P(t) =
∑n
i=1 Pi ·wi ·Ni,k(t)
∑n
i=1 wi ·Ni,k(t)
(2.1)
Specifically Non-Uniform Rational B-Splines (NURBS) (Piegl 1991), enable designers to depict an
extensive range of shapes, from straightforward 2D entities to complex 3D forms with a high degree of
accuracy and precision. The design process using NURBS begins with basic shapes known as primitives,
which are then modified and combined to achieve the desired surface design.
Surface design in CAD relies on a range of commands and tools to generate and manipulate surfaces.
Some common tools include the ’Loft’, ’Boundary Surface’, ’Sweep’, and ’Revolve’ commands. Each
command brings its unique possibilities and complexities to the design process.
16 Georgios Konstantinos Kourtis
31. Surface Design
Figure 2.7: Visualization of the Loft command in Solidworks.
• Loft: The loft command allows the creation of a surface or a solid that transitions between multiple
cross-section profiles (Adams 2019). The complexity lies in the correct placement and alignment of
these profiles, ensuring that the lofted surface transitions smoothly between them. Poorly aligned profiles
can lead to a twisted or distorted surface. Moreover, managing the loft’s complexity increases when the
number of profiles increases or when they significantly vary in shape or size. If we wanted to simplify this
into a high-level pseudo-mathematical description, we might say that for each point Pi in the first shape,
we find the corresponding point Qi in the second shape, and then interpolate a smooth path between them,
forming a surface. The surface is defined by:
F(u,v) = (1−v)·P(u)+v·Q(u) (2.2)
Where:
• F(u,v) is the point on the lofted surface
• P(u) and Q(u) are the points on the first and second shapes, respectively
• u parameterizes the points along the shapes
• v parameterizes the loft between the shapes 0 ≤ v ≤ 1
Figure 2.8: Visualization of the Boundary Surface command in Solidworks.
Georgios Konstantinos Kourtis 17
32. 2. State of the Art
• Boundary Surface: This command is used to create a surface within a boundary defined by multiple
curves. The key challenge here is ensuring that the boundary curves are correctly aligned and provide a
coherent definition for the surface. If the boundary curves are not suitably aligned or if they intersect, the
surface may end up being disjointed or malformed (Lombard 2016). Similarly to the ’Loft’ command,
we could try to simplify this into a high-level pseudo-mathematical description. Assuming that there
are two main boundary curves B1(u) and B2(u), and two additional edge curves E1(v) and E2(v) that
connect the ends of B1 and B2. In this case, the boundary surface can be parameterized by two variables
u and v, and is defined as follows:
F(u,v) = (1−u)·E1(v)+u·E2(v)+(1−v)·B1(u)+v·B2(u) (2.3)
Where:
• F(u,v) is the point on the boundary surface
• B1(u) and B2(u) are the main boundary curves, parameterized by u
• E1(v) and E2(v) are the edge curves, parameterized by v
• u parameterizes the blend between the edge curves (0 ≤ u ≤ 1)
• v parameterizes the blend between the boundary curves (0 ≤ v ≤ 1)
Figure 2.9: Visualization of the Sweep command in Solidworks.
• Sweep: Is an surface extrusion tool that enables the user to extrude a profile along a drawn route,
such as a circle, square, or complicated form (JavaTpoint 2023). The challenge lies in ensuring that the
profile remains correctly oriented relative to the path throughout the sweep. If the path curve has abrupt
changes in direction, the sweep can result in self-intersecting or twisted surfaces. Additionally, managing
the scale of the profile along the path can add another layer of complexity. If we wanted to simplify this
into a high-level pseudo-mathematical description, we might say that for a profile curve P(u), we extrude
it along a path curve Q(v). The resulting surface could be defined as:
18 Georgios Konstantinos Kourtis
33. Surface Design
F(u,v) = P(u)+v·Q(u) (2.4)
Where:
• F(u,v) is the point on the swept surface.
• P(u) is the point on the profile curve.
• Q(u) is the point on the path curve.
• u parameterizes the points along the profile curve.
• v parameterizes the sweep along the path curve, with 0 ≤ v ≤ 1 indicating the beginning and end
of the path, respectively.
Figure 2.10: Visualization of the Revolve command in Solidworks.
• Revolve: The revolve command creates a surface or a solid by rotating a profile curve around an axis
(DesignTechAcademy 2017). The main challenge here is managing the continuity and smoothness of the
surface at the seam where the start and end of the revolve meet, especially in the case of a non-circular
profile.The ’Revolve’ command in CAD takes a profile curve or shape and rotates it around an axis. If
we wanted to simplify this into a high-level pseudo-mathematical description, we might say that for a
profile curve P(u), we rotate it around an axis defined by a line L. The resulting surface could be defined
in polar coordinates as:
F(u,θ) = P(u)·R(θ) (2.5)
Where:
• F(u,θ) is the point on the revolved surface.
• P(u) is the point on the profile curve.
• R(θ) is a rotation matrix for an angle θ.
• u parameterizes the points along the profile curve.
Georgios Konstantinos Kourtis 19
34. 2. State of the Art
• θ parameterizes the revolution around the axis, with 0 ≤ θ ≤ 2π indicating a full revolution around
the axis.
While surface design has greatly expanded the possibilities of 3D modelling, it comes with a unique
set of challenges that make it a demanding aspect of CAD work.
All these commands mentioned earlier, require an intricate understanding of geometric principles and
a high degree of spatial visualization. The designer needs to predict how the chosen profiles, paths, or
boundaries will interact to form the final surface.
Moreover, achieving high-quality surface design involves more than just correct command execution.
The designer must also understand how the parameters of these commands (such as the degree of the
surface, the number of control points, or the constraints between surfaces) influence surface quality. For
example, an increase in the number of control points may provide more flexibility to shape the surface
but may also lead to an unnecessarily complex surface that is difficult to manipulate.
Also, one significant difficulty lies in controlling the continuity and smoothness of surfaces. Creating
a smooth transition between adjoining surfaces can be a complex task, requiring an understanding of
the underpinning mathematical principles of NURBS and the toolsets available in the CAD software.
Ensuring the correct joining of surfaces is a crucial yet difficult task that requires attention to detail.
Improperly joined surfaces can lead to gaps or overlaps, which can pose significant issues during
downstream applications like simulation or manufacturing.
Finally, the accurate representation of surfaces in CAD can pose a challenge due to the inherent
approximation nature of NURBS-based surface modelling. This could potentially result in minor
discrepancies between the intended design and the final model. Addressing these discrepancies often
requires iterative refinement of the surface, further adding to the complexity of the surface design process.
20 Georgios Konstantinos Kourtis
35. Analysis of Selected Model: The Computer Mouse
2.4 Analysis of Selected Model: The Computer Mouse
In the realm of objects that manifest the delicate blend of aesthetic and functional design, the computer
mouse stands out. It is a ubiquitous tool that provides an optimal case study for this thesis due to its
multifaceted design that blends simple and complex surfaces. Crafting such designs necessitates the use
of advanced CAD techniques, such as loft, boundary surface, revolve, and sweep commands.
Figure 2.11: An ordinary laser computer mouse.
These techniques are very important in shaping the ergonomic and precision-oriented form of the
computer mouse. Consequently, they serve as an exploration platform for advanced modelling and
surface design techniques.
The methodology employed in this thesis incorporates a specialized software macro operating within
a CAD environment, which suggests the computer mouse as a design project. This approach integrates
with a Machine Learning model, adding a layer of automation and intelligence to the design process.
Figure 2.12: 3 standard consumer mice types. From left to right: Typical laser mouse, gaming mouse and
ergonomic mouse.
The designs we focus on in this study are predominantly standard consumer mice, covering a range
of models from typical laser mice and gaming mice to ergonomic mice. The purpose is to explore
designs that have proven to be effective and popular among users, rather than venturing into untested,
unconventional designs. The ergonomic form of these mice, driven by considerations for user comfort
and efficiency, offers a rich area for our investigation.
The typical laser mouse constitutes the most prevalent type of computer mouse, equipped with
Georgios Konstantinos Kourtis 21
36. 2. State of the Art
universally recognized features. It generally possesses two buttons, located on the left and right for
performing primary selection and command actions, and a central scroll wheel which serves the dual
function of navigation and an additional button. The defining characteristic of the laser mouse lies in
its use of light-emitting diodes (LEDs) and an imaging array of photodiodes. These components detect
movement relative to the underlying surface, a technological leap from the mechanical mouse which
relied on internal moving parts in conjunction with its optics. This transition not only enhanced precision
but also contributed to the overall durability of the device (Elliott 2004).
The gaming mice are specifically designed for use in computer games. They typically employ a
wider array of controls and buttons and have designs that differ radically from traditional mice. Some
mice have been designed to have adjustable features such as removable and/or elongated palm rests,
horizontally adjustable thumb rests and pinky rests. Some mice may include several different rests with
their products to ensure comfort for a wider range of target consumers. Gaming mice are held by gamers
in three styles of grip (Houghton 2015):
• PalmGrip: the hand rests on the mouse, with extended fingers.
• ClawGrip: palm rests on the mouse, bent fingers.
• Finger −TipGrip: bent fingers, palm does not touch the mouse.
The ergonomic mouse, as the name suggests is intended to provide optimum comfort and avoid
injuries such as carpal tunnel syndrome, arthritis, and other repetitive strain injuries. It is designed to fit
natural hand position and movements, to reduce discomfort. When holding a typical mouse, the ulna
and radius bones on the arm are crossed. Some designs attempt to place the palm more vertically, so the
bones take more natural parallel position (Evoluent 2023). Some limit wrist movement, encouraging arm
movement instead, that may be less precise but more optimal from the health point of view. A mouse
may be angled from the thumb downward to the opposite side – this is known to reduce wrist pronation.
22 Georgios Konstantinos Kourtis
37. Chapter 3
Primary Objectives and Expected
Deliverables
3.1 Primary Objectives
The primary objectives of this project include:
• Developing a machine learning model capable of interpreting user input (in the form of an
uploaded image) and finding the closest match from an existing database of 20 mouse surface
designs. This model represents a crucial innovation in creating a more intuitive and responsive
design environment.
• Constructing an interactive demonstration platform that offers guidance to users as they modify the
suggested mouse design to meet their specific needs. This demo will be instrumental in showcasing
the potential of integrating ML with 3D CAD workflows.
• Enhancing design efficiency by significantly reducing the time and cost associated with traditional
surface modeling processes. By leveraging ML’s predictive and analytical power, we aim to
streamline the design process and lower the number of iterations required.
3.2 Expected Deliverables
Upon the successful completion of the project, the following deliverables are anticipated:
• A machine learning model, expertly trained on a robust dataset of user inputs and mouse designs,
that can effectively identify the closest match to a user-provided image. This model will be central
to our goal of making CAD design more interactive and user-centered.
• A working demonstration platform that seamlessly integrates with 3D CAD software, providing
ML-guided directions for users to adapt the suggested mouse surface design to their preferences.
• A comprehensive final report that documents every stage of the project, from the initial design and
development phases through to final testing and review. This report will serve as both a record of
the completed work and a blueprint for future advancements in this field.
The combination of an interactive macro and a machine learning model will guide users through the
process of adapting existing mouse models based on their specific preferences. This approach effectively
leverages ML technology to assist in CAD modeling, making the process of model adaptation more
user-friendly and accessible, particularly for non-expert users.
Georgios Konstantinos Kourtis 23
38.
39. Chapter 4
Project Methodology
4.1 Selection of Methodology
Selecting an appropriate project methodology is a critical aspect of any research undertaking. The
methodology provides the project’s backbone, outlining the systematic sequence of steps to be followed
for successful completion. Given the intricacies involved in the project that have been analysed in the
previous chapters, the Agile methodology has been chosen, a methodology which offers flexibility and
adaptability, ideal for the project’s dynamic nature.
Figure 4.1: Visualization of Agile Methodology.
The Agile methodology emerged from the Agile Manifesto, a document authored by 17 software
developers in 2001(Hazzan and Dubinsky 2014). The manifesto proposed an alternative to traditional
linear product development processes, focusing instead on collaboration, customer satisfaction and
flexibility. The methodology’s foundational principles are embodied in four pillars and twelve principles
that guide Agile projects.
The four pillars prioritize individuals over processes and tools, working software over comprehensive
documentation, customer collaboration over contract negotiation, and response to change over following a
plan. These values emphasize the importance of team collaboration, customer satisfaction, and flexibility
in project execution.
The twelve principles of Agile methodology further elaborate these values, emphasizing customer sat-
isfaction, adaptability, regular delivery of value, effective communication, and continuous improvement,
among others.
The Agile methodology can be beneficial even for solo projects, as it promotes an iterative approach,
continuous improvement, and customer-centric development (Hollar 2006). Each project phase is broken
down into manageable ’sprints’ that focus on achieving specific goals. This approach facilitates constant
improvement and adaptation, making it an ideal fit for this project.
Georgios Konstantinos Kourtis 25
40. 4. Project Methodology
4.2 Application of the selected Methodology in the Project
Figure 4.2: Visualization of the Project’s Methodology Based on Agile Methodology.
The Agile methodology will be systematically applied across different phases of the project:
Phase 1: Literature Review & Qualitative Research
Sprint 1: Conduct literature review on ML, API, Automation in CAD, Surface Design and their
interconnections. This sprint will provide a theoretical foundation for the project.
Sprint 2: Perform User observations to understand their needs and challenges in 3D CAD surface
modeling. This sprint will initiate the data collection for the machine learning dataset.
Phase 2: Problem Definition & Design
Sprint 3: Define the problem the API will solve based on the findings from the initial research. Draft
the initial design for the API and the machine learning model.
Sprint 4: Justify the choice of using a mouse as a 3D surface for the project, considering both the
theoretical and practical implications. Update the API and machine learning model design as needed.
Phase 3: Development & Iterative Improvement
Sprint 5: Begin developing the API, keeping user needs and challenges at the forefront. Continue
26 Georgios Konstantinos Kourtis
41. Application of the selected Methodology in the Project
data collection for the machine learning model.
Sprint 6: Continue the development, focusing on addressing the problems identified in the research.
Begin training the machine learning model with the collected data.
Sprint 7: Test and refine the API based on the results. Continue to train and refine the machine
learning model.
Phase 4: Evaluation
Sprint 8: Design a user study to evaluate the effectiveness of the API and the machine learning model.
Analyze the results and refine the API and machine learning model further, if necessary.
Phase 5: Documentation & Dissemination
Sprint 9: Document the project process, API, machine learning model, and findings. Consider where
to publish or present the work for maximum impact.
The Agile methodology’s iterative approach ensures the project remains adaptable to changing
requirements and findings, making it the optimal choice for this research.
Georgios Konstantinos Kourtis 27
42.
43. Chapter 5
Qualitative Research
5.1 Introduction to Qualitative Research
In order to understand and to help users to produce a 3D CAD surface model and to develop an
effective and user-oriented ML model, it is essential to develop a research approach that can capture the
richness and depth of these challenges. As such, this project adopts a qualitative research approach.
Qualitative research focuses in understanding a research query as a humanistic or idealistic approach.
Though quantitative approach is a more reliable method as it is based upon numeric and methods that
can be made objectively and propagated by other researchers. Qualitative method is used to understand
people’s beliefs, experiences, attitudes, behavior, and interactions. It generates non-numerical data (Kalra,
Pathak, and Jena 2013). This methodology is suited the project as it will help gain a deeper understanding
of user behavior, their interaction with the CAD software, and their design goals.
Figure 5.1: Basic difference between Qualitative and Quantitative Research.
The primary functions of qualitative research in this project are fourfold:
1. User Understanding: The research approach will entail an in-depth analysis of how users interact
with the CAD program and specifically, their behavior when they intend to design a mouse.
Qualitative research is going to provide unique insights into the user behavior and engagement,
contributing to our understanding of how the user operates within the CAD environment.
2. Identifying Challenges: The qualitative research will employ interactive discussions, question-
naires, and observations to uncover the challenges users face (Hancock, Windridge, and Ockleford
2007) while interacting with the CAD program and during the mouse design process. This might
include issues such as finding a suitable model to start with or understanding how to customize a
Georgios Konstantinos Kourtis 29
44. 5. Qualitative Research
model. Identifying these challenges is going to be important in refining the macro and ML models
to enhance their effectiveness and afterall the user experience.
3. Guiding ML Model Development: The two-step ML process—where one model identifies
whether the uploaded image represents a mouse, and the second matches the image to an existing
CAD mouse surface model—is going to be tailored based on the insights obtained from qualitative
research. This ensures the ML models are responsive to user needs and behaviors, thereby
improving the accuracy of model matching and the overall user experience.
4. Evaluating ML Suggestions: Once the ML models have been implemented and the matched
model is opened in the CAD application, qualitative research will be used to assess the effectiveness
of the model matching process and the utility of the instructions provided for model modification.
It will offer insights into whether the ML suggestions are useful, how they are being implemented
by the users, and areas for potential improvement.
In the forthcoming sections of this chapter, we will delve deeper into the specific qualitative research
methodologies chosen for this study, explaining our reasoning behind each choice. Further, we will
provide an overview of some outcomes from our interactive discussions, observations, and questionnaires,
highlighting key insights and interpretations from these findings. To allow for a comprehensive
understanding of our research, we have included all data and detailed user responses in the appendix.
30 Georgios Konstantinos Kourtis
45. Qualitative Research Methodology
5.2 Qualitative Research Methodology
In this project, we implement a qualitative research to delve into the complexities of user interactions
with 3D CAD software when tasked with designing a mouse. Our primary objective is to comprehend
how an integrated machine learning model can simplify and enhance this process, thus providing a
user-centric and streamlined experience.
Our methodology encompasses several crucial components:
• Observation: Our methodology initiates with an empirical observation of 10 users while they
engage with (K. M. DeWalt and B. R. DeWalt 2011) the CAD software, specifically tasked with
designing a surface. As the observation process kicks off, users will be provided with a preview
of the surface they are expected to design along with straightforward guidelines. Furthermore,
they will be given an already completed surface and the assignment of modifying it to a pre-
specified outcome. This offers us a dual perspective on how users approach both the creation and
modification of a surface. The observation extends to their choice of commands and their responses
to challenges that arise during the process. This approach is aimed at garnering valuable insights
into user behavior, strategy, and problem-solving techniques.
• Interviews and Questionnaires: After those 10 users have been observed interacting with the
CAD software and attempting to design a surface, we follow up with in-depth interviews and
questionnaires (Codó, Dans, and Wei 2008). The goal of these is to explore their intended strategies,
the specific CAD commands they were thinking of using, the difficulties they encountered, and how
they planned to resolve those issues. This will help us understand their mindset, problem-solving
approach, and expectations when designing a surface.
• Analysis: The data gathered from observations, interviews, and questionnaires is meticulously
scrutinized. We search for discernible patterns, themes, and correlations in users’ responses and
behaviors (Thorne 2000). This analysis aids in the further refinement of our machine learning
model and the design assistance tool, aiming to make them more aligned with users’ needs and
design behaviors.
• Implementation and Evaluation: Once users begin working with the ML-assisted design process,
we adopt qualitative methods to evaluate its efficacy (Patton 1990). We seek feedback on their
experiences with the model, the provided instructions, the challenges faced, and their overall
opinion on the use of an ML-assisted approach in their design process. This feedback is critically
analyzed and used to enhance and fine-tune the system to better serve its users. This component is
going to be presented after the finish of the project at the final chapters.
Briefly, each of these methods has been chosen for its unique potential to illuminate different aspects
of users’ interactions with the 3D CAD software when designing a mouse, and together they form a
comprehensive research approach that considers users’ experiences from multiple angles. In the following
sections, we will elaborate further on the rationale for choosing these specific qualitative research methods
- observation, interviews, and questionnaires - and their implementation in our study.
More specifically, we will describe the characteristics of the users who will be observed and
interviewed, such as their level of experience with CAD software, which may affect their interaction
Georgios Konstantinos Kourtis 31
46. 5. Qualitative Research
with the tool and their ability to design a mouse. Also explaining the structure of our interviews and
questionnaires is going to be happen, sch as if they will be open-ended or structured, and the key themes
or topics they will cover.
Overall, it should be stated that the primary methodology for all qualitative research procedures
(how the experiments were held, how we selected the participants, how we collected the data etc)
was derived from the scientific foundations outlined in the Fourth chapter of the book "Human-
Computer Interaction: An Empirical Research Perspective" (MacKenzie 2013).
32 Georgios Konstantinos Kourtis
47. User Observation
5.3 User Observation
5.3.1 Participants
The participant group for this study was carefully curated, featuring a total of 10 individuals with
diverse experiences and varying degrees of proficiency with the CAD software (in this case, SolidWorks).
The intention behind this heterogeneity was to include a wide spectrum of user perspectives, hence
eliminating the potential for bias towards any specific user group and enabling the generalization of our
research findings.
An inclusive recruitment approach was followed, inviting participants of all genders and races,
and from diverse backgrounds. This ensured a representation of various perspectives and enabled the
consideration of different strategies adopted by individuals from different backgrounds and with diverse
thought processes.
The participants were selected based on the following criteria:
• Experience: The participant pool spanned from novices, who are still familiarizing themselves
with the basic commands of the SolidWorks software, to the experienced users who have been
using the software for several years for various projects.
• Frequency of use: The selected participants also varied based on the frequency of their interaction
with the software. This ranged from occasional users to those who are highly dependent on the
software and interact with it daily.
• Nature of use: To ensure a comprehensive analysis, participants who use the software for a range
of purposes were selected. This included those who use it for academic research, professional
work, personal projects, or simply as a hobby.
5.3.2 Observable Tasks and Procedure
The observational study adopted a systematic experimental approach. All participants were asked
to complete two tasks, each designed to simulate common scenarios in the CAD software SolidWorks
(as ibid. stated it’s called a "within-subjects assignment" because each participant is tested on the same
assignment). The experiment was conducted in a controlled environment, ensuring that the observed
results are solely based on the user interactions with the CAD software, thus eliminating potential
confounding factors.
• Task 1 - Designing a Surface: Each participant was provided with a step-by-step guide in PDF
format (see Appendix) for designing a specific surface. The objective of this task was to observe
user strategies and identifying potential emerging problems when creating a new surface design
based on given instructions.
• Task 2 - Modifying a Finished Surface: In this task, participants were given a completed surface
model along with a set of instructions to modify it in a specified manner (see Appendix). The
purpose of this task was to understand user approaches in modifying an existing surface and
identify challenges faced during this process.
Georgios Konstantinos Kourtis 33
48. 5. Qualitative Research
Participants accessed the researcher’s computer via a remote desktop connection to perform the tasks.
A dual-monitor setup was utilized, where one monitor displayed the PDF instructions and the other
one ran the SolidWorks software. Each task was time-bound, with a maximum duration of 30 minutes,
although it was expected that participants would complete the Task 1 within 20 minutes and Task 2 within
10 minutes.
Communication during the experiment was limited to text-based messages exchanged through a
notepad application to ensure minimal disturbance. Participants were asked to document any problems
they encountered during the tasks.
All tasks were recorded to capture user interactions with the software and their problem-solving
approaches. If a participant was unable to complete a task within the stipulated 30-minute timeframe,
they were instructed to cease the task, even if not fully completed.
Figure 5.2: Snapshot of the User Observation Setup: SolidWorks program open on one monitor, with
task instructions displayed on the second monitor.
The aim of this controlled experiment was to gather qualitative data on user interactions with the CAD
software during specific tasks and to identify difficulties or challenges users may encounter. The collected
data will be instrumental in refining the API and machine learning model in our study, contributing to a
more user-centric design and functionality.
Task 1 - Designing a Surface
The ideal finished CAD model for the Task 1 can be observed below.
Figure 5.3: Task 1: Designing a Surface (Finished Model).
34 Georgios Konstantinos Kourtis
49. User Observation
We captured some generic data during the completion of Task 1. The summary of findings and
analysis are presented below:
• Completion Rate: Out of the 10 participants, 8 managed to complete the task within the given
timeframe, with 6 finishing within the expected 20-minute timeframe.
• Assistance Requests: Three out of ten participants experienced difficulties during the process,
specifically while designing the lofted surface, and sought clarification via text communication.
• Completion Time: The completion times varied among participants. A breakdown of the time
taken is as follows:
– 1 participant completed the task in less than 10 minutes.
– 3 participants completed the task between 10 to 15 minutes.
– 2 participants completed the task between 15 to 20 minutes.
– 2 participants took between 20 to 30 minutes to complete the task.
– 2 participants were unable to complete the task within the 30-minute timeframe.
The quickest completion time recorded was 9 minutes and 11 seconds, while the median time was
approximately 16 minutes.
• Command Time Consumption: Among the four surface commands used in the task, the loft
command proved to be the most time-consuming for participants. On the other hand, the surface
fill command was found to be the least time-consuming.
Figure 5.4: User Observation Task 1 Findings Visualisation Graphs.
Georgios Konstantinos Kourtis 35
50. 5. Qualitative Research
Task 2 - Modifying a Finished Surface
The ideal finished CAD model for the Task 2 can be observed below, along with the given CAD
model to modify.
(a) Given Model (b) Ideal Finished Model
Figure 5.5: Task 2 - Modifying a Finished Surface.
For Task 2, the guidance provided is primarily text-based, instructing the user on how to modify an
existing surface model. The primary visual aid provided is an image showcasing the ideal end-result
of the modifications.In addition to this primary visual aid, two supplemental images are available for
reference. These images illustrate the ideal appearance of Sketch1 and Sketch2 after the necessary
adjustments have been made. These additional visual aids are hidden by default but can be accessed by
the user should they require extra guidance.
We captured some generic data during the completion of Task 2. The summary of findings and
analysis are presented below:
• Completion Rate: Out of the 10 participants, 10 managed to complete the task within the given
timeframe, with 9 finishing within the expected 10-minute timeframe.
• Assistance Requests: Two out of ten participants experienced difficulties during the process, and
ask permission to see the two supplemental images that illustrate the ideal appearance of Sketch1
and Sketch2 after the necessary adjustments.
• Completion Time: The completion times varied among participants. A breakdown of the time
taken is as follows:
– 2 participants completed the task in less than 3 minutes.
– 3 participants completed the task between 3 to 6 minutes.
– 4 participants completed the task between 6 to 10 minutes.
– 1 participant took between 10 to 20 minutes to complete the task.
– 0 participants were unable to complete the task within the 20-minute timeframe.
The quickest completion time recorded was 2 minutes and 40 seconds, while the median time was
approximately 8 minutes.
• Command Time Consumption: Among the 3 modifications made the Sketch 2 was the most time
consuming.
36 Georgios Konstantinos Kourtis
51. User Observation
Figure 5.6: User Observation Task 2 Findings Visualisation Graphs.
Georgios Konstantinos Kourtis 37
52. 5. Qualitative Research
5.4 Interviews
The interview phase of our study serves as an important complement to the observations made in the
prior phase. This phase aims to delve deeper into the experiences and thoughts of the ten individuals who
participated in the user observation task.
5.4.1 Design of Interviews Questions and Their Objectives
Ten questions are designed to explore the user’s attitudes, understandings, and challenges when
dealing with surface design in SolidWorks. Three of them (Questions 3,7 and 8) have a follow-up
question. The responses will further enhance our understanding and help us formulate more effective
strategies to design both the ML model and the API that facilitates it.
The question asked are the following:
1. Can you describe shortly your overall experience with designing surfaces in SolidWorks?
Objective: To understand the participant’s experience with surface design in SolidWorks, providing
insights that may guide the design of the macro and the machine learning model.
2. What are the most common challenges you face when designing surfaces?
Objective: To identify common problems and difficulties in surface design that the model and
macro could potentially address.
3. How comfortable are you with the existing toolset for surface design? What improvements would
you suggest?
Objective: To assess the participant’s comfort level with the current tools and collect suggestions
for improvements that could inform the model and macro’s functionality.
4. Have you found any particular functionalities or features of the surface design module to be
superfluous or unnecessary?
Objective: To identify any functionalities or features perceived as unnecessary that the model and
macro should avoid incorporating.
5. Are there any functions or tools that you wish were included in the surface design module?
Objective: To uncover potential additions or changes that the model and macro could integrate to
enhance the surface design process.
6. How often do you use assistance or reference materials (such as tutorials, guides, etc.) while
working on surface design?
Objective: To understand the participant’s dependence on external resources during surface design,
informing the potential level of guidance provided by the model and macro.
7. How do you handle complex surface design tasks? Can you describe briefly your approach or
process?
Objective: To gain insights into the strategies and methods used by the participant in tackling
complex surface design tasks, guiding the approach the model and macro should take.
8. Can you recall any specific projects where designing surfaces in SolidWorks was particularly
difficult or frustrating? If so, can you describe the problem and how you resolved it?
Objective: To explore specific examples of challenges faced and solutions applied in surface design
that the model and macro can learn from.
38 Georgios Konstantinos Kourtis
53. Interviews
9. How does your experience with surface design in SolidWorks compare to your experience with
other CAD software, if any?
Objective: To obtain comparative feedback between SolidWorks and other CAD software, which
could provide broader insights into potential features for the model and macro.
10. Do you feel that your understanding and use of surface design tools have improved over time?
Objective: To assess the participant’s self-perceived growth and learning curve in using surface
design tools, potentially influencing the level of adaptability incorporated into the model and
macro.
5.4.2 Interviews Procedure and Findings
The interview process was structured to ensure insightful responses from the participants. All
interviews were conducted in a manner that encouraged open and detailed responses, while avoiding
unnecessary digression or over-extended discourse.
Each interview began with a set of specific questions. While participants were given the freedom to
express themselves, they were gently guided to maintain focus and relevance to the topic at hand.
Although responses of "yes" or "no" were generally discouraged, such instances served as
opportunities to prompt the participant for further explanation or clarification.
The interview process with the 10 participants revealed some insights regarding the surface design
process in SolidWorks. The common themes that emerged were:
• A level of discomfort with the existing toolset, with many participants suggesting a need for more
intuitive tools.
• The desire for more straightforward and user-friendly tools.
• A high reliance on external resources when handling complex design tasks.
• Recurring challenges encountered during certain complex surface design tasks.
Below an analysis of participant responses on a question-by-question basis is presented:
1. Can you describe shortly your overall experience with designing surfaces in SolidWorks?
A significant proportion of participants shared that they had a challenging experience with surface
design in SolidWorks. Many participants acknowledged difficulties, particularly when confronted
with more complex tasks.
2. What are the most common challenges you face when designing surfaces?
Participants primarily reported the challenge of knowing what they wanted to design but struggled
with how to initiate the design process.
3. How comfortable are you with the existing toolset for surface design? What improvements would
you suggest?
The majority of participants expressed discomfort with the current toolset, suggesting improvements
aimed at a more straightforward and intuitive design process.
Georgios Konstantinos Kourtis 39
54. 5. Qualitative Research
4. Have you found any particular functionalities or features of the surface design module to be
superfluous or unnecessary?
Participants’ responses varied, with some finding all tools necessary while others suggested that
some features were redundant.
5. Are there any functions or tools that you wish were included in the surface design module?
Most participants expressed a desire for tools that simplify the process of surface design and a
need for more user-friendly commands.
6. How often do you use assistance or reference materials (such as tutorials, guides, etc.) while
working on surface design?
The dependency on external resources was high among participants, pointing out the need for more
integrated guidance within the software.
7. How do you handle complex surface design tasks? Can you describe briefly your approach or
process?
Participants typically resort to trial and error methods, supplemented by external resources for
handling complex tasks.
8. Can you recall any specific projects where designing surfaces in SolidWorks was particularly
difficult or frustrating? If so, can you describe the problem and how you resolved it?
Participants were able to recall specific projects where they faced challenges (such as a design of a
mold and a design of a airplane shell).
9. How does your experience with surface design in SolidWorks compare to your experience with
other CAD software, if any?
Participants generally found surface design equally challenging in SolidWorks compared to other
CAD software, suggested that the surface design in Geometric programs (like Rhino) were easier.
10. Do you feel that your understanding and use of surface design tools have improved over time?
Participants reported some improvement in their understanding and use of tools over time, but
progress was often slow and required considerable effort.
40 Georgios Konstantinos Kourtis
55. Interviews
In order to distill and visually represent the core takeaways from our interviews, we have created a
series of graphs, as depicted below.
Figure 5.7: Interviews Visualisation Charts.
Georgios Konstantinos Kourtis 41
56. 5. Qualitative Research
5.5 Questionnaires
5.5.1 Design and Rationale of Questionnaires
The questionnaire it was presented to the same ten users who participated in the initial qualitative
research. The questionnaire was provided to them as a one-page PDF, and they submitted their responses
directly on the document.
The design of the questionnaire aims to gather insights into participant experiences and perceptions
regarding surface design in SolidWorks. The questionnaire is divided into two parts. The first
section comprises Likert scale questions, enabling respondents to indicate their level of agreement
or disagreement with a series of statements. The second part consists of multiple-choice questions,
designed to capture participant behavior and preferences while using the software.
Likert Scale Questions
1. The existing toolset for surface design in SolidWorks is easy to use.
Rationale: To assess the perceived usability of the SolidWorks toolset and identify potential
usability issues.
Options: 1) Strongly Disagree, 2) Disagree, 3) Neither Agree nor Disagree, 4) Agree, 5) Strongly
Agree
2. I often struggle with complex surface design tasks in SolidWorks.
Rationale: To gauge the frequency of difficulties encountered with complex designs and identify
areas requiring improvement.
Options: 1) Strongly Disagree, 2) Disagree, 3) Neither Agree nor Disagree, 4) Agree, 5) Strongly
Agree
3. I frequently use external resources (such as tutorials, guides, etc.) while working on surface
design.
Rationale: To measure the dependence on external resources, possibly indicating gaps in the
existing help materials or the toolset.
Options: 1) Strongly Disagree, 2) Disagree, 3) Neither Agree nor Disagree, 4) Agree, 5) Strongly
Agree
4. There are unnecessary features in the surface design module of SolidWorks.
Rationale: To ascertain if there are features considered redundant or not useful by users, informing
potential refinement of the toolset.
Options: 1) Strongly Disagree, 2) Disagree, 3) Neither Agree nor Disagree, 4) Agree, 5) Strongly
Agree
5. I believe that the inclusion of machine learning assistance in design would be beneficial.
Rationale: To understand user receptiveness towards the incorporation of machine learning in the
software.
Options: 1) Strongly Disagree, 2) Disagree, 3) Neither Agree nor Disagree, 4) Agree, 5) Strongly
Agree
Multiple-Choice Questions
42 Georgios Konstantinos Kourtis
57. Questionnaires
6. What is your most preferred source of assistance or reference while working on surface
design?
Rationale: To comprehend users’ preferred mode of support, informing the development of help
resources.
Options: a) Online tutorials, b) Guides within the software, c) Colleagues or peers, d) None, e)
Other (please specify)
7. How often do you encounter difficulties when designing surfaces in SolidWorks?
Rationale: To quantify the frequency of difficulties faced by users, assisting in the usability
assessment of the software.
Options: a) Always, b) Often, c) Sometimes, d) Rarely, e) Never
8. Which aspect of surface design do you find the most challenging?
Rationale: To identify specific areas of the design process that pose challenges, aiding in targeted
improvements.
Options: a) Initial design phase, b) Refining the design, c) Finalizing the design, d) Other (please
specify)
9. How often do you find yourself needing to modify your surface designs after they have been
completed?
Rationale: To understand the frequency of post-completion modifications, indicating initial design
accuracy and potential improvements.
Options: a) Never, b) Rarely, c) Sometimes, d) Often, e) Always
10. In general, do you prefer to start a design from scratch, or modify an existing one?
Rationale: To gain insights into user preferences regarding their design approach, shedding light
on their design workflow.
Options: a) Start from scratch, b) Modify an existing design, c) Depends on the project
Georgios Konstantinos Kourtis 43
58. 5. Qualitative Research
5.5.2 Questionnaires Results and Interpretations
The charts displaying the results of the questionnaire are presented below:
Figure 5.8: Questionnaire Results Charts.
44 Georgios Konstantinos Kourtis
59. Questionnaires
Upon observing the collected data, several trends and patterns emerge:
• Question 1: Responses to this question were quite mixed, with ’Agree’ and ’Neutral’ getting 3
and 4 votes respectively. This suggests that most respondents find the SolidWorks toolset fine but
not the easiest.
• Question 2: Most respondents either ’Agreed’ or ’Strongly Agreed’ with the statement, indicating
that complex surface design tasks in SolidWorks can be challenging.
• Question 3: Here, ’Agree’ was the most common response, followed by ’Strongly Agree’ and
’Neutral’. This suggests that many respondents rely on external resources when working on surface
design, indicating a potential gap in the existing help materials or toolset.
• Question 4: ’Agree’ and ’Disagree’ were the most common responses, suggesting that opinions
are quite divided on whether there are unnecessary features in the surface design module.
• Question 5: The majority of respondents either ’Agreed’ or ’Strongly Agreed’ with the statement,
indicating a general positive attitude towards the potential of machine learning assistance in design.
• Question 6: ’Online tutorials’ and ’Colleagues or peers’ were the most commonly preferred
sources of assistance, suggesting that interactive methods of learning and assistance are highly
valued.
• Question 7: Responses were evenly distributed across ’Always’, ’Often’, ’Sometimes’, and
’Rarely’, suggesting a range of experiences among respondents with regard to the difficulty of
designing surfaces in SolidWorks.
• Question 8: Most respondents identified the ’Initial design phase’ and ’Refining the design’ as the
most challenging aspects.
• Question 9: ’Sometimes’ and ’Often’ were the most common responses, suggesting that post-
completion modifications are a fairly frequent occurrence.
• Question 10: The majority of respondents prefer to either ’Modify an existing design’ or decide
based on the project. This suggests that many respondents appreciate the flexibility to adapt
existing designs to fit their needs.
Georgios Konstantinos Kourtis 45
60. 5. Qualitative Research
5.6 Findings Analysis
Through the analysis of observational tasks, interview responses, and questionnaires, a understanding
of user experiences with surface design in SolidWorks has been achieved. The following points summarize
the key insights drawn from integrating all these tools:
• Challenges and Design Workflow: From the observational tasks, it was noted that there was a
significant difference between Task 1 (designing a surface) and Task 2 (modifying a surface). Task
1 had a lower completion rate and longer completion times, indicating the increased complexity
and challenge in designing a new surface from scratch. This insight corroborates the interview
responses, where participants reported difficulties with initiating the design process and handling
complex tasks. These findings highlight the meaning of a strong kick-start process (at the initial
step) of the design workflow.
• User Comfort and Toolset: Interview responses pointed to a general discomfort with the existing
SolidWorks toolset for surface design. Participants expressed a desire for more intuitive and
user-friendly tools. This is further reflected in the questionnaire results, where respondents agreed
or strongly agreed with the statement that complex surface design tasks in SolidWorks can be
challenging. These findings highlight the necessity for improving the design workflow or maybe
creating a new one.
• Dependence on External Resources: Both the interviews and questionnaire responses showed a
high dependence on external resources like tutorials and assistance from colleagues. This points
to potential gaps in the existing help materials within SolidWorks and indicates that users might
benefit from more integrated guidance.
• Specific Challenges: Certain commands and operations were identified as more time-consuming
or challenging, such as the Surface Loft command in Task 1 and modifications to Sketch 2 in Task
2. This suggests that these areas could be modified to reduce the perceived complexity.
• Comparison with Other Software and Learning Curve: Participants generally found surface
design equally challenging in SolidWorks compared to other CAD software, but they reported that
geometric programs like Rhino were easier to use. This feedback suggests room for improvement
in the intuitiveness of SolidWorks surface design tools.
In conclusion, it becomes clear that there are opportunities for improvements, particularly in the
program intuitiveness, guidance, and possibly rebuilt the whole CAD design workflow. Therefore, our
future enhancements to SolidWorks should are going to be focused on those areas.
46 Georgios Konstantinos Kourtis
61. Chapter 6
Design and Development Guidelines
6.1 Design and Development Guidelines Introduction
Design and Development Guidelines Definition
This chapter focuses on the formulation of the Design and Development Guidelines, serving as
a roadmap for the design and development of the model. These guidelines are a combination of the
Quantitative or Qualitative Limitations, Functional or Structural Limitations, Functional Requirements,
and Characteristics of the model that is going to be designed and developed (Evgenios Skourboutis and
Fotiadis 2015). A clear, coherent set of Design and Development Guidelines will contribute significantly
to the efficiency and effectiveness of the final model (Benedikt Reimlinger and Meboldt 2020).
Figure 6.1: Design and Development Guidelines.
Quantitative or Qualitative Limitations Definition
Quantitative or Qualitative Limitations pertain to the extent or range of something (Evgenios
Georgios Konstantinos Kourtis 47