Generative Design

Generative Design for Soft Robotics

This project is an exploration into the potential of machine learning algorithms for automated design of soft robotics systems. Through investigating genetic algorithms, reinforcement learning, and interactive design interfaces, we developed a comprehensive approach to optimizing kinetic geometries.

The research progresses from basic algorithmic exploration to a sophisticated system combining hardware and software for evolving designs based on both computational logic and human preference.

Genetic Algorithms

A genetic algorithm is a search heuristic that is inspired by Charles Darwin's theory of natural evolution. This algorithm reflects the process of natural selection where the fittest individuals are selected for reproduction in order to produce offspring of the next generation.

Learn more about Genetic Algorithms

Key Learnings:
  • Takes a large number of attempts from multiple agents to get optimised
  • Does not track what the fittest agent did right
  • Unable to adapt well to changing conditions

Cartpole Agent

Cartpole problem is one of the most common testbeds for machine reinforcement learning algorithms. In this particular demonstration, the agent uses random and noise methods to optimise its behaviour.

Key Learnings:
  • Even in its most trivial form, reinforcement learning has potential

Maze Seeking Agent

The agent's purpose here is to reach the target located in the center of the gridworld. It uses a Q-learning algorithm to do so.

It learns from its own past experiences of navigating the maze, and builds up its memory as it goes. Eventually, it gets close to perfect. But it can also adapt itself to new conditions. This is demonstrated by setting up boulders while the agent is still moving.

This study also demonstrates the dilemma of exploration vs exploitation, something which is still an unsolved problem in the discipline of machine learning.

Key Learnings:
  • Resilient to changing conditions, which is good since architectural environments are constantly changing and imperfect
  • Still lacks an human interface

Final Project: Magnakit Evolution System

This project is an exploration into the potential of Genetic Algorithms (GA) for automated design of stiff rods and air-muscles based kinetic geometries. It starts with a brief background, which includes the genesis of the research, history and relevant applications of GA.

The hardware components of Magnakit are discussed, along with the simulator's developed in parallel to the hardware, followed by details of a manual design interface which enables quick and fast digital design of geometries.

The development and results of an objective GA are illustrated and discussed, which is a completely automated method of evolving designs based on a logic understood by the computer, i.e. displacement in +x direction after a certain time interval. And finally, the development and results of an interactive GA, which evolves design based on ratings provided by the user through an easy to use interface is described.

After gathering results from the three different methods of design, they are compared and each method's strengths and weaknesses, and their suitable applications are projected. It ends with a discussion about secondary learnings which have come out of this thesis and are worth exploring in the future.

  • Date: 2017-2018
  • Category: Machine Learning, Soft Robotics
  • Technologies: Genetic Algorithms, Q-Learning, Python
  • Institution: University College London
  • Type: Master's Thesis
  • Advisor: Prof. Sean Hanna