Posted on January 29, 2016 @ 06:08:00 AM by Paul Meagher
In my last blog on constraint satisfaction I illustrated what constraint satisfaction is using a mathematical example, namely, solving a set of linear equations. In this blog I want to talk less formally about constraint satisfaction and other less formal approaches that have been suggested to solve such problems.
Constraints come in many forms, have different priorities, are more or less negotiable. When engineers are designing a building they have general constraints in the form of available funding and a time frame for the project. In addition that may have architectural drawings, building codes, zoning, neighborhood covenants and a host of other constraints that they must adhere to. On top of this they may also be constrained by ecological design principles to produce a building that works with the natural landscape, uses eco-friendly materials, and is energy efficient. From this large set of constraints emerges a design and a plan to erect a structure that meets as many of the constraints as possible.
It is well documented that engineers do not simply accept all the constraints that are handed to them, but often consider what happens if a constraint is relaxed, removed, or reinterpreted. The process of constraint satisfaction is a process of arriving at the set of constraints that appears to be feasible to work within. Solving a constraint satisfaction problem in such circumstances may be more about changing the working constraints than coming up with an elegant solution to existing constraints. The numerical example of constraint satisfaction might leave one with the impression that constraint satisfaction
is a simple 2 stage linear process when the reality is that posing and solving constraints is often a back and forth process.
What is oftentimes puzzling to me is the observation that increasing the number of constraints that apply to your work can enhance creativity rather than restrict it. It is as if creativity is channeled more productively when the number of constraints is increased. Freedom from constraints can sometimes be the enemy of creativity. If you are building a house and add the constraint that it has to be eco-friendly or green, then this constraint might encourage more creativity rather than less in the design of that building. It is also documented that innovation in the construction industry goes up significantly when new building code regulations come in.
Creativity is one approach to coming up with a solution given a set of constraints. The problem with relying upon creativity alone is that there is often a vast history of experience in tackling similar problems and it may be foolhardy to believe that you will out think all who have come before. Some areas of design have come up with design patterns that are proposed as solutions when you encounter problems of a certain type. One of the most famous examples comes from the architect Christopher Alexander who proposed 253 design patterns for towns, buildings and construction. If this is the type of problem
you are trying to solve than this is a template you might want to use for building it. You can adjust the template to fit the particulars of your
situation. Likewise in software development, there are a set of common software design patterns that you can use when confronted with a particular set of problem constraints. If you are unaware of these design patterns, then there is a good chance you will cobble something together that will fail in ways that could have been anticipated by those aware of these design patterns. Finally, there is ongoing work business design patterns that anyone starting up or running a business might consult to come up with strategies and tactics. Business Model Generation (2010) by Alexander Osterwalder & Yves Pigneur would be an example of such work.
Some say the value of design patterns consists mostly in giving a name to problem-solution pairs so that we can be more aware of them, can discuss them more easily, and potentially use them in our designs. The design pattern literature is one that I hope to examine in more detail in the future to get a better sense of how useful it might be. There are many in the fields of architecture, software design, and business strategy who believe design patterns are worth learning and using to solve problems of various sorts. In many cases there is not much new under the sun so if you are going to solve a common problem it makes sense to be aware of common solution tactics for that type of problem.
Permaculture Voices recently profiled an extreme example of a person who was up against the wall financially with his business and pivoted to work within a new set of constraints (and new business model) that allowed his business to thrive from that point onwards. This was actually the example that got me thinking more about how we often fail if we work within the wrong set of constraints and how we can succeed when we adopt a different set of constraints. The constraint of working with very little capital is one that many people fear but when we face it head on and adapt to it, then sometimes we might be more profitable because we are spending less capital on our operation than before and making way for more profit.
For this blog I consulted the book Innovating Minds: Rethinking Creativity to Inspire Change (2015), specifically the section on Made & Found Constraints (p. 139-146) for some useful discussion on the nature and role of constraints. They conclude that section with this comment:
Constraints of all sorts offer both guidance and goads. How we use, choose, or iteratively make and revise constraints profoundly propels the generation and refinement of innovative ideas. ~p. 146
I hope this blog series has helped to highlight the importance and role of constraint satisfaction in design, creativity and innovation.