Grow Function: Generate 3D Stacked Bifurcating Double Deep Cellular Automata based organisms which differentiate using a Genetic Algorithm...

Related tags

Deep Learning GrowF
Overview

GrowF

Banner

Grow Function: Generate 3D Stacked Bifurcating Double Deep Cellular Automata based organisms which differentiate using a Genetic Algorithm...

TLDR; High Def Living Trees that you can breed, trim and mint as NFTs on Solana, Ethereum, Cardano and other blockchain networks.

This demo represents the current state of the codebase. If anyone wishes to join this project, please contact or fork.

Written in Python using the Blender Library

Current state of development https://www.youtube.com/watch?v=BUarQzuhj1c

Installation

  • Install Blender if you don't already have it
  • Open treegen.blend

Once opened, you can generate whatever tree is currently there by default by going to the scripting tab, opening tree.py and pressing the Run button

The Metaverse Needs Trees

Let's Face it, it's hard to model trees that are realistic in any 3D modeling platform. Much less, make them lowpoly or high poly, or ready for video games or kinematics and physics. But if you think about it, it's hard to make believable trees because trees are grown, not sculpted by nature. They the results of a bunch of growth patterns that came together to form what we categorize as trees or even any type of plant. The bifurcation structure of a tree is everywhere. You needen't go as far as looking at the human nervous system, or in the structure of folders in your computer, to see that same tree organization. Imagine having a tree that you can plant on top of a structure like a stone sculpture in VR and watch it's roots eating through the walls and stone in hyper-real time. Imagine breeding trees to be a specific color or give a specific type of fruit, or growing them in zero gravity. Imagine planting a garden and watching your plants and trees grow together over time and generations.

We Have the Technology

Recent developments in the fields of Cellular Automata and Genetic Algorithms have led to the possibility of growing living organisms in higher dimensions. Many projects like Lenia, The Life Engine and even VR games like Playne, and Inward have made a big deal of living organisms in games and tech culture. These living organisms can behave like bacteria, like larger soft-bodied oganisms, or like Trees. On a scientific level, there exist virtual living ecosystems of over 500,000 plants in simulations like the ones seen in the paper "Synthetic Silviculture: Multi-Scale Modeling of Plant Ecosystems". These large or multi-scale simulations are focused on larger scale simulations, creating realistic, yet estimated details, (albeit through rigorous scientific analysis to approximate reality).

But that begs the question, how high definition can one go in creating growing 3D systems? Can cell differentiation be accquired by genetic algorithm in new and spontaneous ways which account for ecosystem? This project aims to advance toward answering those questions, starting with what we think will end up being hi-res tree models, but could end up as anything.

I think it's possible to go to infinite resolution by making a growth protocol that is forward compatible, so that the computers of the future which operate on orders of magnitude of higher parallelism can show the same tree you minted in 2022, in much higher detail.

The Blockchain? Why?

Well, trees, and other living virtual organisms can be owned. The 3D Models of their life progression can be included in games using Non-Fungible Tokens (NFTs). If you can own any unique digital item, why not own a tree that you have bred, or trimmed, or simply that you found in a VR game somewhere. Think about trimming, or when trees bear fruits that have specific properties or visual peculiarities. Each branch of the tree can be removed, the fruits or leaves, (or whatever ends up growing on a bifurcation) can be separated from the tree, recorded as removed in the tree's history (affecting it's model forever). Just like with real trees, the seeds in those fruits can be minted and given to friends or sold, reflecting the value that you have added to the tree by planting and growing it somewhere in the Metaverse. It could end up seeding virtual forests, or being used as CG set pieces in movies or video games depending on who buys it from you.

You might also like...
An Active Automata Learning Library Written in Python

AALpy An Active Automata Learning Library AALpy is a light-weight active automata learning library written in pure Python. You can start learning auto

Double pendulum simulator using a symplectic Euler's method and Hamiltonian mechanics
Double pendulum simulator using a symplectic Euler's method and Hamiltonian mechanics

Symplectic Double Pendulum Simulator Double pendulum simulator using a symplectic Euler's method. The program calculates the momentum and position of

This is a clean and robust Pytorch implementation of DQN and Double DQN.
This is a clean and robust Pytorch implementation of DQN and Double DQN.

DQN/DDQN-Pytorch This is a clean and robust Pytorch implementation of DQN and Double DQN. Here is the training curve: All the experiments are trained

Use deep learning, genetic programming and other methods to predict stock and market movements

StockPredictions Use classic tricks, neural networks, deep learning, genetic programming and other methods to predict stock and market movements. Both

Stacked Recurrent Hourglass Network for Stereo Matching
Stacked Recurrent Hourglass Network for Stereo Matching

SRH-Net: Stacked Recurrent Hourglass Introduction This repository is supplementary material of our RA-L submission, which helps reviewers to understan

Pytorch implementation for reproducing StackGAN_v2 results in the paper StackGAN++: Realistic Image Synthesis with Stacked Generative Adversarial Networks
Pytorch implementation for reproducing StackGAN_v2 results in the paper StackGAN++: Realistic Image Synthesis with Stacked Generative Adversarial Networks

StackGAN-v2 StackGAN-v1: Tensorflow implementation StackGAN-v1: Pytorch implementation Inception score evaluation Pytorch implementation for reproduci

Stacked Hourglass Network with a Multi-level Attention Mechanism: Where to Look for Intervertebral Disc Labeling
Stacked Hourglass Network with a Multi-level Attention Mechanism: Where to Look for Intervertebral Disc Labeling

⚠️ ‎‎‎ A more recent and actively-maintained version of this code is available in ivadomed Stacked Hourglass Network with a Multi-level Attention Mech

Implements Stacked-RNN in numpy and torch with manual forward and backward functions

Recurrent Neural Networks Implements simple recurrent network and a stacked recurrent network in numpy and torch respectively. Both flavours implement

With this package, you can generate mixed-integer linear programming (MIP) models of trained artificial neural networks (ANNs) using the rectified linear unit (ReLU) activation function

With this package, you can generate mixed-integer linear programming (MIP) models of trained artificial neural networks (ANNs) using the rectified linear unit (ReLU) activation function. At the moment, only TensorFlow sequential models are supported. Interfaces to either the Pyomo or Gurobi modeling environments are offered.

Owner
Nathaniel Gibson
Nathaniel Gibson
Genetic Algorithm, Particle Swarm Optimization, Simulated Annealing, Ant Colony Optimization Algorithm,Immune Algorithm, Artificial Fish Swarm Algorithm, Differential Evolution and TSP(Traveling salesman)

scikit-opt Swarm Intelligence in Python (Genetic Algorithm, Particle Swarm Optimization, Simulated Annealing, Ant Colony Algorithm, Immune Algorithm,A

郭飞 3.7k Jan 3, 2023
Nicholas Lee 3 Jan 9, 2022
Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more

JAX: Autograd and XLA Quickstart | Transformations | Install guide | Neural net libraries | Change logs | Reference docs | Code search News: JAX tops

Google 21.3k Jan 1, 2023
Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more

JAX: Autograd and XLA Quickstart | Transformations | Install guide | Neural net libraries | Change logs | Reference docs | Code search News: JAX tops

Google 11.4k Feb 13, 2021
Author's PyTorch implementation of Randomized Ensembled Double Q-Learning (REDQ) algorithm.

REDQ source code Author's PyTorch implementation of Randomized Ensembled Double Q-Learning (REDQ) algorithm. Paper link: https://arxiv.org/abs/2101.05

null 109 Dec 16, 2022
Code for the paper "JANUS: Parallel Tempered Genetic Algorithm Guided by Deep Neural Networks for Inverse Molecular Design"

JANUS: Parallel Tempered Genetic Algorithm Guided by Deep Neural Networks for Inverse Molecular Design This repository contains code for the paper: JA

Aspuru-Guzik group repo 55 Nov 29, 2022
A simple and lightweight genetic algorithm for optimization of any machine learning model

geneticml This package contains a simple and lightweight genetic algorithm for optimization of any machine learning model. Installation Use pip to ins

Allan Barcelos 8 Aug 10, 2022
PyGAD, a Python 3 library for building the genetic algorithm and training machine learning algorithms (Keras & PyTorch).

PyGAD: Genetic Algorithm in Python PyGAD is an open-source easy-to-use Python 3 library for building the genetic algorithm and optimizing machine lear

Ahmed Gad 1.1k Dec 26, 2022
A web-based application for quick, scalable, and automated hyperparameter tuning and stacked ensembling in Python.

Xcessiv Xcessiv is a tool to help you create the biggest, craziest, and most excessive stacked ensembles you can think of. Stacked ensembles are simpl

Reiichiro Nakano 1.3k Nov 17, 2022