C O U R S E    D E S C R I P T I O N S
   click on the course number below to access course page         62-706 | 48-746 | 48-724 | 62-146 | 62-238

62-706
Generative Systems
for Design

FALL

12 units

DESCRIPTION
    Rather than working directly with analogue media, such as drawings, designers can develop algorithms and computational models that can automatically generate design alternatives, based on custom inputs. We refer to such algorithms and models as generative systems

    Generative systems have been an important topic of research in the recent past decades, in books, courses, articles and research conferences in computer-aided architectural design. While earlier approaches were based on classical artificial intelligence and optimization, recently, a variety of computational techniques from different fields, such as parametric modeling, agent-based modeling or neural networks, are incorporated in the development of new generative systems. With recent developments in machine learning, we are reaching a point where we might not even have to explicit specify a new generative schema, but, instead, let it learn automatically from data or experience.

    Contemporary design education must be reviewed with the possibility of relying on autonomous or collaborative design systems for the synthesis of alternatives. Designers should be able to formulate their design with different computational techniques, both with the generative systems available on commercial applications and with custom developed generative systems.

    The main goal of the course is to foster the student's capacity to formulate design problems computationally, with emphasis on the synthesis of design alternatives. This course provides an overview of the main topics in Generative Systems, with historical notes and technical specifications. Along the semester, the students will address different design problems with different generative techniques. The course will address topics such as variational modeling, rule-based modeling, directed and dynamic simulation, optimization and learning. The appropriate datastructures, algorithms and models will be discussed and some implemented in the exercises and projects.

LEARNING OUTCOMES — In this course students will:

  • Apply elementary algorithmic thinking to design problems
  • Students will be able to formulate a design problem computationally and develop an appropriate generative system to synthesize solutions
  • For designers, it is an opportunity to understand the potential of generative systems not only for the automation of repetitive design tasks but also (and mainly) for the exploration of innovative design solutions
  • For non-designers, it is an opportunity to understand how computational logic can lead to creative applications outside of the regular demands of the industry or the consolidated problems in science

GRADING

    The course grade will be based on five homework assignments and small project. Each assignment contains questions about the formulation of design problems in different generative schemas and exercises to implement them as small projects. The students will choose one of the projects and extend it for an exhibition, with prototypes and interactive displays. This final project may be done by groups of two.
    The final grade is determined by the average of the four best assignment and project.

PREREQUISITE — At least Junior standing plus the following skills are desirable:

  • Familiarity with introductory college level math and logic
  • Design background and/or capacity to explore creative solutions.
  • Elementary programming skills (equivalent 15-112) or capacity to self-learn Python
  • GhPython (equivalent 48-724) or capacity to learn it on the fly.
  • Basic Grasshopper (equivalent 48-624) or capacity to learn it on the fly.

KEYWORDS

    Computational design; Generative Systems; Parametric and Variational Modeling; Rule-based systems: Fractals; L-systems; Structured Grammars; Shape Grammars; Simulation: Discrete, Directed and Dynamic; Optimization; Machine Learning

48-746
Shape Machine

FALL

9-12 units

DESCRIPTION
    A shape machine is any computational technology that fundamentally expresses the way shapes are represented, indexed, queried and manipulated.

    Here the shape machine is based on visual rules (shape rules) grounded in symbolic rules (programming language instructions) to provide a robust technology to individuals who use drawings and visual models to develop and communicate their ideas.

    A shape machine is intended to be a computational, visual and disruptive technology for shape cognition and computing, which intersects with such fields as design, artificial intelligence, computer science, and mathematics.

    We consider a particular kind of shape machine - spatial grammars - which have their origin in formal grammars for spatial composition. Grammatical approaches to designing offer an alternative to traditional approaches.  The goal of grammars is not to produce a single design as the final outcome, but, rather, to provide an understanding of the underlying spatial relations that come into play in an eventual design.   For over four decades, grammars have been studied extensively to understand style in architecture, engineering, design, fine art and ornament.  Recently, there has been an increasing application of grammatical ideas to other disciplines.

    Specifically, there is resurgent interest in implementing shape grammars for application. This is the emphasis of this course.

    There are four parts to this course which has the ingredients of a research seminar course plus elements of an independent study.

    • Part 0 gives a brief introduction to shape grammars and shape grammar implementation issues
    • Part 1 pertains to my work on shape grammar implementation.
    • Part 2 pertains to works of other researchers, their models and approaches both general and domain-specific.
    • Part 3 is the individual student project: development and production of their own shape machine.

    The main goal of the course is to foster the students' ability to explore the subject of rule-based shape cognition and computing through the lens of implementation. For designers and non-designers alike, the course offers an opportunity to develop much needed generative shape systems for visual computing

LEARNING OUTCOMES

    In this course students will be able to formulate, develop, and implement appropriate algorithms for shape representation and shape recognition.
GRADING
    The course grade will be based on homework assignments and course project. Each homework assignment will be related to the readings and will include at least one programming exercises. This final project may be done in groups.

PREREQUISITE

    Working knowledge of a programming language with graphics capability and the language's IDE is essential

KEYWORDS

    Shape grammars; Shape algorithms; Shape cognition; Shape rule; Rule application; Generative modeling; Parametric modeling; Rule-based modeling; Graph-based modeling;
48-724
Scripting and
Parametric Design

FALL A2

6 units

DESCRIPTION
    This course is to prepare students for modeling architectural geometry through scripted development of parametric schemes for architecture applications. This course supplies the basis of understanding parametric geometric construction mechanisms.

    This is a half-semester course serves two purposes: to reinforce the fundamentals of parametric modeling, and to introduce students to basic scripting with a focus on algorithms related to form making. The course consists of lectures, computer cluster instruction and assignments.

    In this mini-course we deal with:

    • Generative Geometry Construction — the lectures here focus on customizing procedures for generative design via programming.

    • Introduction Computational Algorithms — the lectures provide an introduction to applicable computational algorithms, such as procedural modeling techniques

LEARNING OUTCOMES — In this course student will:

  • Understand the core structures and workflows of parametric modeling.
  • Manipulate complex data flows toward desired design outcomes.
  • Apply algorithmic thinking to design problems.
  • Model complex forms and relationships using geometric concepts and parametric tools.
  • Become familiar with basic scripting syntax, program flow, and geometry manipulation in Rhino.
  • Possess the critical skills necessary to question the limits and biases of a software interface.
  • Have begun to develop a sensibility for generative modeling uniquely your own.

GRADING

    The course grade will be based on three homework assignments of increasing difficulty. Each assignments may include optional bonus exercises worth additional points.

PREREQUISITE

    Basics of Grasshopper (equivalent to 48-624) and familiarity with Python (equivalent to 15-110)

    Students are expected to have familiarity with the basics of parametric modeling and the fundamentals of object-oriented programming — simple basic principles of working with an object-oriented programming language (Python).

62-146
Looking at
Making

SPRING
(Doha Campus)

9 units

SYNOPSIS
    This is an elective course for students with no prior background in modeling or fabrication &emdash; in this course, we take a look at 'making' through basics of design thinking and process, 3D-modeling, 3D-scanning and 3D-printing. Exercises include a monthly 3D-prints + a final 3D-print project. There will be a research paper on making associated with this course.

DESCRIPTION

    Traditional principles of production are being challenged by concepts of highly customized and personalized objects. There is an increase in interest in do-it-yourself designing and making, with entrepreneurs accelerating this trend in the real world. This class offers students a self-instructional hands-on experience of DIY product design and fabrication. Over the course of a semester, students will work individually or in small groups to design customized and personalized products of their own and build them using an additive fabrication method, namely, 3D printing.

    Various aspects of the making are examined:

    Design

    We will briefly go over basic principles/techniques of design that are relevant and useful to your course exercises and project.

    Modeling

    There will be two parts to this topic. For the first part, there will be a brief introduction to the basics of 3D-modeling presented.

    Students are then expected to learn a conventional 3D-modeling software mainly through self-instruction &emdash; this includes the creation and analysis of objects and assemblies, generation of rendered images, and exporting for manufacture.

    For the second part, depending on the student's ability, I will provide an introduction to parametric or constraint-based 3D-modeling. There are three-fold reasons for this:

    • Contemporary approaches to modeling reflect designers wanting much more parametric control over the generative process; in turn, this enhances the efficiency with which they can navigate design variations, analyze design artifacts and explore design manifestations
    • The complexity of constructing geometry sometimes can be simplified allowing designers not only the ability to generate conceptual ideas but also to design the fabrication process
    • Designers have an interest in being able to compute and fabricate non-simple and sometimes intricate geometric forms that go beyond straightforward modeling exercise

    Scanning

    There will be two parts to this topic. For the first part, there will be a brief introduction to the basics of 3D-modeling presented.

    Printing

    Students will have a brief introduction to additive manufacturing (AM) fundamentals and applications using polymer-based and stereo lithographic AM printers. Every exercise will employ a 3D-printer.

    Project

    Students will be expected to apply these design and modeling principles and techniques to their projects. For the final project itself, students are expected to spend time on design, sketching, 3D model making, and fabrication. Students are expected to document and share their work for feedback and suggestions from others (mainly, students).

    LEARNING OUTCOMES

    In this course students will:

    • Understand the core concepts of designing, 3-D modeling, 3D-scanning and 3D-printing
    • Model complex geometric forms and relationships using parametric tools
    • Manipulate data flows toward desired designs
    • Develop a sensibility for making

    GRADING

    Students will be evaluated on the following requirements: Monthly Assignment (35 %) + Final Project (50 %) + Essay on a 3D print topic (15 %) Each monthly assignment involves a 3-D print

    Final Project

    The final project comprises: a sketch of your own design/choice + rendered images from your 3D model + the 3D print

    Essay

    Consider the essay as a research paper. I want each student to explore a single novel/advanced topic involving and relating to making and 3D printing. Each month they are expected to show periodic updates on the extent of your research and refinement of the outline for their essay. The essay is due at the end of the course.

    PREREQUISITE

      There are none except enthusiasm.

    KEYWORDS

      3D modeling software; 3d printing software; making; additive fabrication
62-238
Looking at
Shapes

SPRING
(Doha Campus)

9 units

SYNOPSIS
    This is an elective course &emdash; in this course &emdash; we take a visual and generative exploration of patterns, configurations, designs, phenomena in terms of geometry, data, or information through their shapes and spatial representations.

    The course is project based and relies upon the student's own background and interests.

DESCRIPTION

    I have an interest in spatial forms which pervades every aspect of life real and imagined, artistic and analytical which I would like to share.

    There are a number of ways a shape can be explored:
    as a work of art, as an aspect of science, as a geometric construct, as a topology of interconnections, as a means of representation, depiction and description, as a model of natural and artificial phenomena, processes, behavior and patterns &emdash; and sometimes, for providing clarity as an alternative to hard data and evidence.

    We will look at shapes from a variety of perspectives.

    The course is divided into a series of lectures, each based on a theme (or topic) and will essentially, taking the format of a discussion that I will lead and expect you to participate in.

    The choice of the topics will be determined by the strengths of the students in the class, however, the style of lecture will be based on my strengths. I usually vary the lecture topics from year to year.

LEARNING OUTCOMES

    In this course students will:

    • Understand core concepts of a selection of visual patterns drawn from design and nature
    • Apply elementary thinking to such visual problems
    • Model elementary spatial forms and relationships using geometric concepts
    • Begin to develop a sensibility for spatial forms and patterns

GRADING

    Assignments (worth 3 units) + Project (worth 5 units) + Class participation (worth 1 unit)

    The project has the following parts:

    • An outline
    • An initial presentation in class
    • A final presentation and
    • A project report

PREREQUISITE

    There is no prerequisite for this course although for those students with prior programming experience they might find it helpful in their project.

KEYWORDS

    Grids; Islamic Geometric Designs; Patterns and Symmetry; Grammatical Designs; Combinatorial Designs; Designs by discrete simulation; Designs based on continuous simulation; Evolutionary designs; Foldings and origami designs; Brands