This project re-engineers PhysicsX's mesh-to-physical-property prediction pipeline by replacing their DiffusionNet Encoder with a novel Latent Meta Attention (LMA) encoder. The primary goal is to demonstrate superior latent compression and enhanced or equivalent downstream performance in predicting physical properties from the latent space.
To develop and evaluate a new architecture that leverages Latent Meta Attention (LMA) for more efficient and effective encoding of 3D mesh data, specifically for use in building surrogate models predicting physical properties in simulation tasks. This involves a direct comparison against a baseline MLP encoder.
-
Superior Latent Compression: Achieve a more compact latent representation (
$z$ ) without sacrificing critical geometric information. - Enhanced or Equivalent Downstream Performance: Attain equal or better accuracy in surrogate models that predict physical properties from the latent space compared to a standard MLP,
- Modularity Provide a modular repository to scale and build future improvements and surrogate models with expanded datasets.
We utilize the MeshGraphNets dataset from DeepMind Research. For the current implementation, we focus on the Airfoil Flow task, where the surrogate model predicts the Average Pressure from the mesh data.
The pipeline consists of two main phases:
-
VAE Development (Encoder & Decoder): Two VAEs are developed:
- Baseline VAE: Uses an MLP encoder.
- Nemesis VAE: Incorporates the Latent Meta Attention (LMA) encoder. Both VAEs share an identical Modulated ResidualNet decoder, which learns an implicit representation via a Signed Distance Function (SDF).
-
Surrogate Modeling Pipeline: This phase leverages the learned latent spaces from the VAEs to predict physical properties (e.g., Average Pressure for airfoil flow). Separate surrogate models are trained for the latent spaces generated by the Baseline and Nemesis VAEs.
Nemesis/
├── data/ # Downloaded datasets
├── logs/ # Training logs
├── models/ # Saved VAE and Surrogate models
├── src/ # Source code
│ ├── data_processing/ # Data loading and preprocessing scripts
│ ├── models/ # Model architectures (Encoders, Decoders, Surrogates)
│ ├── training/ # Training and evaluation scripts (main.py)
│ └── utils/ # Utility functions
├── TestPlan.MD # Detailed project plan
├── README.md # Project overview (this file)
├── NEMESIS.md # Details on Nemesis Architecture (LMA)
├── LGM-1.md # Details on Baseline Architecture
├── setup_data.sh # Data setup script
└── Instructions.md # How to run the project
For detailed instructions on setting up the environment, downloading data, and running the training scripts, please refer to Instructions.md.