Generative Design Primer
  • Welcome
  • Introduction to Generative Design
    • Computational Design
    • Generative Design
      • What is Generative Design?
      • Why should I use Generative Design?
      • What goes into a Generative Design Process?
        • Anatomy of each stage
      • Examples of Generative Design
        • MaRs Innovation District of Toronto
        • Furniture Design
        • A Further Analogy
      • Anatomy of a Good Generative Design Process
    • Visual Programming
    • Dynamo
    • Generative Design for Revit and Dynamo
  • Deeper Dive to Generative Design
    • Algorithms
      • What are Algorithms?
      • Generators
      • Evaluators
      • Solvers
    • Optioneering
    • Optimization
      • What is Optimization?
      • Objective Function
      • Constraints
      • Data
      • Defining Goals
    • Genetic Algorithms
      • What is a Genetic Algorithm?
      • Initialization phase
      • Evaluation Phase
      • Selection Phase
      • Crossover Phase
      • Mutation Phase
    • Other Techniques
    • Genetic Algorithm Q&A
  • Hello Generative Design for Revit and Dynamo!
    • Installing Generative Design
    • Setting up a Graph for Generative Design
    • Running Generative Design
    • Visualizing Results in Generative Design
    • Refinery Toolkit
      • Installing the Refinery Toolkit from the Dynamo Package Manager
      • Using the Refinery Toolkit
    • Space Analysis for Dynamo
      • Installing the Space Analysis for Dynamo package from the Dynamo Package Manager
      • Using the Space Analysis Package
    • Using Revit alongside Generative Design
      • Using Data from Revit
      • Remember Node Inputs
      • How to Test Revit Data Capture
      • Detailed Example Workflow
      • Sharing Logic and Results
      • Current Limitations
      • Accessing Generative Design Directly From Revit
  • Sample Workflows
    • Getting Started Workflows
      • Highest Point of a Surface
      • Minimum Volume and Maximum Surface
    • Architectural Workflows
      • Building Mass Generator
      • Building Positioning based on Solar Analysis
      • Office Layout
      • Grid Object Placement in a Room
      • Entourage Placement Exploration
    • MEP Workflows
      • Distributing Spotlights in an Office Space
    • Structural Workflows
    • BIM Workflows
      • Placement of views on sheets
    • Community Examples
      • Guidelines
      • List Of Examples
  • Generative Design in Your Office
    • What Generative Design Can Be Used For?
    • What Generative Design Can’t Be Used For?
    • How to Convince Senior Stakeholders of Using Generative Design?
    • The Role of a Generative Designer
    • Hiring a Generative Designer
  • Next Steps
    • Machine Learning
      • What is Machine Learning?
      • Is Generative Design Machine Learning?
      • Can Machine Learning and Generative Design Work Together?
  • Appendix
    • Glossary
    • Reference Material
    • Need Professional Help?
Powered by GitBook
On this page

Was this helpful?

  1. Deeper Dive to Generative Design
  2. Genetic Algorithms

What is a Genetic Algorithm?

PreviousGenetic AlgorithmsNextInitialization phase

Last updated 3 years ago

Was this helpful?

A genetic algorithm - specifically - is a kind of optimization algorithm that is popular in generative design applications.

Genetic algorithms tend to be very useful when your objective function is highly complex, subject to randomness, or is discontinuous.

In technical terms, it is an example of an 'adaptive heuristic algorithm'. You might also hear it referred to as an 'evolutionary algorithm' - this is because genetic algorithms were inspired by the process of evolution by natural selection.

In a genetic algorithm, the 'fittest' individuals (or the potential solutions) from a 'population' of possible solutions are selected for reproduction and their 'genes' are passed on to future 'generations'.

In generative design processes, the _'_genes' are the parameters of our model. These are the values that drive our design and will either consist of a single value or a range of acceptable values.

A typical genetic algorithm has five phases:

Each of these phases repeats itself over generations (or iterations), where each iteration uses the data from the previous generation to inform the next.

NSGA II
Initialization
Evaluation
Selection
Crossover / Reproduction
Mutation