Acknowledgments

Third-Party Machine Learning Architectures

HOOPS AI integrates open-source machine learning architectures to provide state-of-the-art CAD analysis capabilities. These models are located in the src/hoops_ai/ml/_thirdparty/ directory and are used under their respective open-source licenses.

Integrated Architectures

1. UV-Net - Graph Classification Architecture

Original Authors: Jayaraman, P. K., Sanghi, A., Lambourne, J. G., Willis, K. D. D., Davies, T., Shayani, H., & Morris, N.

Organization: Autodesk AI Lab

Year: 2021

License: MIT License

Source: https://github.com/AutodeskAILab/UV-Net

Location in HOOPS AI: src/hoops_ai/ml/_thirdparty/uvnet/

Jayaraman, P. K., Sanghi, A., Lambourne, J. G., Willis, K. D. D., Davies, T., Shayani, H., & Morris, N. (2021). UV-Net: Learning from Boundary Representations. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (pp. 11703-11712). https://doi.org/10.1109/CVPR46437.2021.01153

@inproceedings{jayaraman2021uvnet,
  title={UV-Net: Learning from Boundary Representations},
  author={Jayaraman, Pradeep Kumar and Sanghi, Aditya and Lambourne, Joseph G and Willis, Karl DD and Davies, Thomas and Shayani, Hooman and Morris, Nigel},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={11703--11712},
  year={2021}
}
  • Auto-complete of modeling operations in CAD software

  • Smart selection tools

  • Shape similarity search

  • Design recommendation systems

2. BrepMFR - Graph Node Classification Architecture

Original Authors: Zhang, S., Guan, Z., Jiang, H., Wang, X., & Tan, P.

Year: 2024

License: MIT License

Source: https://github.com/zhangshuming0668/BrepMFR

Location in HOOPS AI: src/hoops_ai/ml/_thirdparty/brepmfr/

Zhang, S., Guan, Z., Jiang, H., Wang, X., & Tan, P. (2024). BrepMFR: Enhancing machining feature recognition in B-rep models through deep learning and domain adaptation. Computer Aided Geometric Design, 111, 102318. https://www.sciencedirect.com/science/article/abs/pii/S0167839624000529

@article{zhang2024brepmfr,
  title={BrepMFR: Enhancing machining feature recognition in B-rep models through deep learning and domain adaptation},
  author={Zhang, Shuming and Guan, Zhiguang and Jiang, Han and Wang, Xiaojun and Tan, Ping},
  journal={Computer Aided Geometric Design},
  volume={111},
  pages={102318},
  year={2024},
  publisher={Elsevier}
}
  • Machining feature recognition in CAD/CAM workflows

  • Recognizing highly intersecting features with complex geometries

  • Automated process planning for CNC machining

  • Design for manufacturability analysis

Tech Soft 3D’s Role and Modifications

While HOOPS AI provides convenient wrappers (GraphClassification, GraphNodeClassification) to integrate these architectures into the Flow Model framework, the original authors retain full credit for their pioneering work.

Our contributions are limited to:

  1. Interface Adaptation: Implementing the FlowModel abstract interface for seamless integration with HOOPS AI workflows

  2. Storage Integration: Connecting to HOOPS AI’s data storage system (Zarr, DGL, etc.)

  3. Training Infrastructure: Enabling use with FlowTrainer and FlowInference components

  4. Error Handling and Logging: Enhanced debugging capabilities and error reporting

  5. Documentation: Technical documentation adapted for HOOPS AI users

We do NOT claim authorship of the underlying ML architectures. Users of HOOPS AI should cite the original papers when publishing results using these models.

MIT License Compliance

Both integrated models are distributed under the MIT License, which permits:

  • ✅ Commercial use

  • ✅ Modification

  • ✅ Distribution

  • ✅ Private use

  • Include the original copyright notice

  • Include the MIT license text

  • Acknowledge modifications made by Tech Soft 3D

HOOPS AI complies with these requirements by:

  1. Preserving original copyright notices in source files

  2. Including LICENSE files in _thirdparty/ subdirectories

  3. Clearly documenting modifications in technical documents

  4. Providing citation information in this documentation

  5. Maintaining this dedicated Acknowledgements document

Using These Models in Your Research

If you publish research results using HOOPS AI’s GraphClassification or GraphNodeClassification models, please cite:

  1. The original architecture paper (see BibTeX citations above)

  2. HOOPS AI (if relevant to your workflow):

Tech Soft 3D. (2025). HOOPS AI - Machine Learning Framework for CAD Data Analysis.
https://github.com/techsoft3d/hoops-ai

“This work uses the UV-Net architecture [1] and BrepMFR architecture [2] integrated into the HOOPS AI framework [3] for CAD data processing and machine learning.”

[1] Jayaraman et al., “UV-Net: Learning from Boundary Representations”, CVPR 2021

[2] Zhang et al., “BrepMFR: Enhancing machining feature recognition…”, CAGD 2024

[3] Tech Soft 3D, “HOOPS AI”, 2025

License Texts

MIT License

Copyright (c) 2021 Autodesk AI Lab

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
MIT License

Copyright (c) 2024 Zhang Shuming and contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

For questions about:

  • Original UV-Net architecture: Contact Autodesk AI Lab or refer to the GitHub repository

  • Original BrepMFR architecture: Contact the authors or refer to the GitHub repository

  • HOOPS AI integration: Contact Tech Soft 3D support

Third-Party Dependencies

HOOPS AI relies on a comprehensive set of open-source libraries and tools. The following tables list all dependencies for both CPU and GPU installation modes.

Package Name

Version

torch

1.13.1

torchaudio

0.13.1

torchvision

0.14.1

torchmetrics

0.10.0

torch-geometric

2.3.1

pytorch-lightning

1.7.2

numpy

1.23.5

zarr

2.13.3

dask

2023.10.1

scikit-learn

1.5.2

pyarrow

11.0.0

python

3.9.21

pip

23.2.1

setuptools

75.1.0

wheel

0.44.0

pandas

1.5.3

scipy

1.13.1

h5py

3.12.1

hdf5

1.14.3

xarray

2024.3.0

partd

1.4.1

cloudpickle

3.0.0

zict

3.0.0

toolz

0.12.0

heapdict

1.0.1

tblib

1.7.0

ipykernel

(latest)

ipywidgets

(latest)

jupyterlab

(latest)

fairseq

0.12.2

prefetch-generator

(latest)

tensorboard

2.18.0

tensorboardX

(latest)

dgl

1.0.0

pyyaml

6.0.2

tqdm

4.67.1

matplotlib

3.9.3

networkx

3.2.1

distributed

2023.10.1

iterative-stratification

0.1.9

msgpack

(latest)

Package Name

Version

torch

1.13.1+cu117

torchaudio

0.13.1+cu117

torchvision

0.14.1+cu117

torchmetrics

0.10.0

torch-geometric

2.3.1

pytorch-lightning

1.7.2

numpy

1.23.5

zarr

2.13.3

dask

2023.10.1

scikit-learn

1.5.2

pyarrow

11.0.0

python

3.9.21

pip

23.2.1

setuptools

75.1.0

wheel

0.44.0

cuda-cudart

11.7.99

cuda-cudart-dev

11.7.99

cuda-cupti

11.7.101

cuda-libraries

11.7.1

cuda-libraries-dev

11.7.1

cuda-nvrtc

11.7.99

cuda-nvrtc-dev

11.7.99

cuda-nvtx

11.7.91

cuda-runtime

11.7.1

cuda-version

11.7

libcublas

11.10.3.66

libcublas-dev

11.10.3.66

libcufft

10.7.2.124

libcufft-dev

10.7.2.124

libcusolver

11.4.0.1

libcusolver-dev

11.4.0.1

libcusparse

11.7.4.91

libcusparse-dev

11.7.4.91

libnpp

11.7.4.75

libnpp-dev

11.7.4.75

libnvjpeg

11.8.0.2

libnvjpeg-dev

11.8.0.2

abseil-cpp

20220623.0

aiobotocore

2.4.2

aiohappyeyeballs

2.4.4

aiohttp

3.11.10

aioitertools

0.7.1

arrow-cpp

11.0.0

asciitree

0.3.3

async-timeout

5.0.1

aws-c-auth

0.7.4

aws-c-cal

0.6.2

aws-c-common

0.9.3

aws-c-compression

0.2.17

aws-c-event-stream

0.3.2

aws-c-http

0.7.13

aws-c-io

0.13.33

aws-c-mqtt

0.9.7

aws-c-s3

0.3.17

aws-c-sdkutils

0.1.12

aws-checksums

0.1.17

aws-crt-cpp

0.24.2

aws-sdk-cpp

1.10.57

blas

1.0

blosc

1.21.5

boost-cpp

1.85.0

botocore

1.27.59

bottleneck

1.4.2

brotli-python

1.0.9

bzip2

1.0.8

c-ares

1.19.1

ca-certificates

2024.12.14

cached-property

1.5.2

cccl

2.3.2

cffi

1.17.1

cftime

1.6.4

click

8.1.7

cloudpickle

3.0.0

colorama

0.4.6

cryptography

41.0.7

cytoolz

0.12.2

exceptiongroup

1.2.0

fasteners

0.16.3

freetype

2.12.1

frozenlist

1.5.0

gflags

2.2.2

giflib

5.2.2

glog

0.6.0

grpc-cpp

1.51.1

hdf4

4.2.15

hdf5

1.14.3

heapdict

1.0.1

importlib-metadata

8.5.0

iniconfig

1.1.1

intel-openmp

2023.1.0

jinja2

3.1.4

jmespath

1.0.1

jpeg

9e

krb5

1.21.3

lerc

4.0.0

libabseil

20220623.0

libaec

1.1.3

libarrow

11.0.0

libboost

1.85.0

libboost-devel

1.85.0

libboost-headers

1.85.0

libbrotlicommon

1.0.9

libbrotlidec

1.0.9

libbrotlienc

1.0.9

libcrc32c

1.1.2

libcurl

8.11.1

libdeflate

1.22

libevent

2.1.12

libffi

3.4.2

libgoogle-cloud

2.7.0

libgrpc

1.51.1

libiconv

1.17

liblzma

5.6.3

libnetcdf

4.9.2

libpng

1.6.44

libprotobuf

3.21.12

libsqlite

3.47.2

libssh2

1.11.1

libthrift

0.18.0

libtiff

4.5.0

libutf8proc

2.8.0

libuv

1.48.0

libwebp

1.3.2

libwebp-base

1.3.2

libxml2

2.13.5

libzip

1.11.2

libzlib

1.3.1

locket

1.0.0

lz4

4.3.2

lz4-c

1.9.4

mkl

2023.1.0

mkl-service

2.4.0

mkl_fft

1.3.11

mkl_random

1.2.8

msgpack-python

1.0.3

multidict

6.1.0

netcdf4

1.7.2

numcodecs

0.12.1

numexpr

2.10.1

numpy-base

1.26.4

openssl

3.4.0

orc

1.8.2

packaging

24.2

pandas

1.5.3

partd

1.4.1

pluggy

1.5.0

pyarrow

11.0.0

pyarrow-hotfix

0.6

pyopenssl

23.2.0

pysocks

1.7.1

pytest

7.2.0

python

3.9.21

python-dateutil

2.9.0post0

python-lmdb

1.4.1

python_abi

3.9

pytz

2024.1

pyyaml

6.0.2

re2

2023.02.01

s3fs

2023.1.0

setuptools

75.1.0

snappy

1.1.10

sortedcontainers

2.4.0

sqlite

3.41.1

tbb

2021.8.0

tblib

1.7.0

tk

8.6.13

tomli

2.0.1

toolz

0.12.0

tornado

6.4.2

typing-extensions

4.11.0

typing_extensions

4.11.0

tzdata

2024b

ucrt

10.0.20348.0

utf8proc

2.6.1

vc

14.40

vc14_runtime

14.42.34433

vs2015_runtime

14.42.34433

wheel

0.44.0

win_inet_pton

1.1.0

wrapt

1.14.1

xarray

2024.3.0

xyzservices

2022.9.0

yaml

0.2.5

zarr

2.13.3

zict

3.0.0

zipp

3.21.0

zlib

1.3.1

zstd

1.5.6

absl-py

2.1.0

aiosignal

1.3.1

antlr4-python3-runtime

4.8

attrs

24.2.0

bitarray

3.0.0

bokeh

3.3.4

certifi

2024.8.30

charset-normalizer

3.4.0

contourpy

1.3.0

cycler

0.12.1

cython

3.0.11

dask

2023.10.1

distributed

2023.10.1

fairseq

0.12.2

filelock

3.16.1

fonttools

4.55.3

fsspec

2024.10.0

grpcio

1.68.1

h5py

3.12.1

hydra-core

1.0.7

idna

3.10

importlib-resources

6.4.5

iterative-stratification

0.1.9

joblib

1.4.2

kiwisolver

1.4.7

lxml

5.3.0

markdown

3.7

markupsafe

3.0.2

matplotlib

3.9.3

mpmath

1.3.0

networkx

3.2.1

numpy

1.23.5

omegaconf

2.0.6

pillow

11.1.0

portalocker

3.0.0

prefetch-generator

1.0.3

propcache

0.2.1

protobuf

5.29.1

psutil

6.1.0

pycparser

2.22

pydeprecate

0.3.2

pyparsing

3.2.0

pywin32

308

regex

2024.11.6

sacrebleu

2.4.3

scikit-learn

1.5.2

scipy

1.13.1

six

1.17.0

sympy

1.13.1

tabulate

0.9.0

tensorboard

2.18.0

tensorboard-data-server

0.7.2

tensorboardx

2.6.2.2

threadpoolctl

3.5.0

tqdm

4.67.1

werkzeug

3.1.3

yarl

1.18.3

ipykernel

(latest)

jupyterlab

(latest)

Note

PyTorch packages (torch, torchaudio, torchvision, torch-geometric, pytorch-lightning, torchmetrics) for GPU mode are installed separately via pip with explicit CUDA 11.7 support to ensure compatibility.