sas@BFLY-VAX.BBN.COM (03/08/88)
I just got back from vacation and I cannot remember if I sent this out before I left or not, but: I was the lead engineer on the TK!Solver product back in the early 80's so I did a bit of constraint language research. Although TK!Solver was (and still is) a software product, the only publications are the manual itself and a number of software reviews. TK!Solver let you enter equations and then use a Newton-Raphson solver to find solutions. We tried to generalize the then popular MBA calculators which let you manipulate PV, FV, T and/or i and given three out of four compute the fourth. Inflation and interest rates were much higher then and MBA's worried about IRR instead of market share. TK!Solver was based on some work done by Milos Konopasek at U of Manchester, Georgia Tech and NCSU. While I might be able to find some copies of his papers, you could try looking them up under the name QAS or the Question Answering System. He used it to help teach textile engineering. TK!Solver made a number of improvements. If you want to follow this vein you might try finding Bob Light's MIT Mechanical Engineering thesis done in the mid 80's. He combined back solution techniques with more traditional CAD rendering techniques. I am not sure if anyone mentioned the Sutherland's MIT doctoral thesis which is kind of the grand daddy of constraint systems done in the early 60's. The stressed trestle example in Borning's 80-81 Thinglab paper (PARC, I think) originally appeared in this one. I'd also recommend Guy Steele's MIT thesis on a discreet state constraint system and Gosling's CMU thesis which uses a constraint system to compile closed form algebraic solutions to constraint problems. Depending on you interests in constraint systems you could look at Negroponte's Architecture Machines, an MIT press book which discusses the kinds of constraint systems actual designers would be interested in using. There were a number of architects working with constraint systems which have developed, at least partially, into modern CAD systems. You might try looking up some papers by Tim Johnson, Yona Friedman, or Masanori Nagashima if you are interested in this sort of thing. These systems tried to be useful during the early stages of design, rather than during the final drafting. Most of these languages were visual rather than textual, but a solution was found by adding and manipulating constraints. If you are interested in the interaction of generative grammatical constraints and explicit situational constraints (as are often found in natural structures) I'll mention the SAR design people based in Eindhoven, though I am only familiar with the MIT contingent including Habraken, Gerzso and Govela. (I won't mention the fascinating politics of this design methodology although there are a number of good stories). For more on the interaction of constraint and construction you should check out the classic On Growth and Form by Thompson (or is it Thomas) which turns up now and then. Still jet lagged after all these years, Seth