Skip to main content

The toolbox for the generative design of physical objects

Project description

Logo of GEFEST framework

tests

Build Status

docs

Documentation Status

license

Supported Python Versions

support

Telegram Chat

gitlab

GitLab mirror for this repository

funding

Acknowledgement to ITMO Acknowledgement to NCCR

GEFEST (Generative Evolution For Encoded STructures) is a toolbox for the generative design of physical objects.

In core it uses: 1. Numerical modelling to simulate the interaction between object and environment 2. Evolutionary optimization to produce new variants of geometrically-encoded structures

The basic abstractions in GEFEST are Point, Polygon, Structure and Domain. Architecture of the GEFEST can be described as:

/docs/img/workflow.png

The evolutionary workflow of the generative design is the following:

/docs/img/evo.png

The dynamics of the optimisation can be visualized as (breakwaters optimisation case):

/docs/img/breakwaters.gif

How to use

All details about first steps with GEFEST might be found in the quick start guide.

Tutorals for more spicific use cases can be found tutorial section of docs.

Project Structure

The latest stable release of GEFEST is on the main branch.

The repository includes the following directories:

  • Package core contains the main classes and scripts. It is the core of GEFEST framework;

  • Package cases includes several how-to-use-cases where you can start to discover how GEFEST works;

  • All unit and integration tests can be observed in the test directory;

  • The sources of the documentation are in the docs.

  • Weights of pretrained DL models can be downloaded from this repository.

Cases and examples

Note: To run the examples below, the old kernel gefest version, which can be installed on python 3.7 with:

pip install git+https://github.com/aimclub/GEFEST.git@4f9c34c449c0eb65d264476e5145f09b4839cd70
  • Experiments with various real and synthetic cases

  • Case devoted to the red blood cell traps design.

Migrated examples can be found in cases folder of the main branch.

Current R&D and future plans

Currently, we are working on integration of new types of physical objects with consideration of their internal structure.n

The major ongoing tasks:

  • to integrate three dimensional physical objects

  • to implement gradient based approaches for optimization of physical objects

Documentation

Detailed information and description of GEFEST framework is available in the Read the Docs

Contribution guide

The contribution guide is available in the page

Acknowledgments

We acknowledge the contributors for their important impact and the participants of the numerous scientific conferences and workshops for their valuable advice and suggestions.

Contacts

Supported by

National Center for Cognitive Research of ITMO University

Citation

@article{starodubcev2023generative,

title={Generative design of physical objects using modular framework}, author={Starodubcev, Nikita O and Nikitin, Nikolay O and Andronova, Elizaveta A and Gavaza, Konstantin G and Sidorenko, Denis O and Kalyuzhnaya, Anna V}, journal={Engineering Applications of Artificial Intelligence}, volume={119}, pages={105715}, year={2023}, publisher={Elsevier}}

@inproceedings{solovev2023ai,

title={AI Framework for Generative Design of Computational Experiments with Structures in Physical Environment}, author={Solovev, Gleb Vitalevich and Kalyuzhnaya, Anna and Hvatov, Alexander and Starodubcev, Nikita and Petrov, Oleg and Nikitin, Nikolay}, booktitle={NeurIPS 2023 AI for Science Workshop}, year={2023}}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gefest-0.1.0.tar.gz (3.9 MB view details)

Uploaded Source

Built Distribution

gefest-0.1.0-py3-none-any.whl (3.9 MB view details)

Uploaded Python 3

File details

Details for the file gefest-0.1.0.tar.gz.

File metadata

  • Download URL: gefest-0.1.0.tar.gz
  • Upload date:
  • Size: 3.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for gefest-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cd941347fde7c878d8e66ff7622468e9f0b7bb74db8583ce1032d70db299e1f6
MD5 31681648427f7ceaf8ad2580440c6120
BLAKE2b-256 56d15dc1956de5e41cd60104f3a5c4747e845690d45c1ec42f9c6b422970fe24

See more details on using hashes here.

File details

Details for the file gefest-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gefest-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for gefest-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 20849317fc4c11b34696067ad32fc9292cde4dcce8963b7575b10f5d69da047b
MD5 1c18d969210c1c1bcbe2c0a4a2001fa8
BLAKE2b-256 3a4e20710c8a17e60e54a3804c7e85f5946c514791861380e44b13a0d118a780

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page