GSP(ID:4922/gsp002)Space planning languagespace planning language Related languages
References: in Donald E. Walker, Lewis M. Norton (Eds.): Proceedings of the 1st International Joint Conference on Artificial Intelligence IJCAI-69, Washington, DC, May 1969. William Kaufmann, 1969 view details in Donald E. Walker, Lewis M. Norton (Eds.): Proceedings of the 1st International Joint Conference on Artificial Intelligence IJCAI-69, Washington, DC, May 1969. William Kaufmann, 1969 view details in Emerging Methods in Environmental Design and Planning, Moore, G. (Ed.), The MIT Press, Cambridge, Massachusetts, 1970 view details in Proceedings of EDRA 1 "Environmental Design Res. Assoc. Conf.", H. Sanoff and Cohn (Eds.), North Carolina State U. School of Design, Raleigh, N.C., 1970. view details in [ACM] CACM 13(04) (April 1970). view details in [ACM] CACM 13(04) (April 1970). view details The Description of Objects and Spaces In GSP, all objects and spaces are specified in terms of areas and points. The areas are of three types: 1. Available Space - which represents empty areas that are available for receiving other types of spaces. An example of Available Space would be an empty room; 2. Solids - which represent areas of space occupied permanently or semipermanently. Typical Solids are walls, furniture, machinery, or landscaping; 3. Use Spaces - which demark those spaces used temporarily, such as a access space, spaces required for the swing of a door, or the space needed to utilize a piece of equipment or furniture. Extract: The Description of Relations The Description of Relations GSP incorporates a primitive language in the Relation Definition subsystem for describing relations between objects. Each relation defined by the user is translated into a test which the problem solving subsystems in GSP use to evaluate arrangements. A relation is defined by a name designating its type and a set of arguments, i.e. qualifying variables, enclosed in parentheses. Currently, the GSP system incorporates five types of relations. They are: ADJACENCY (A,B,SB) - This relation specifies that object B must have all the border of its SB side adjacent to a side of object A. If A is a space, rather than an object, this relation requires that B be adjacent to one of its borders; DISTANCE (A,B,F,PTA,PTB) - This relation defines that Point Number PTA on object A be less than F units away from Point Number PTB on object B. PTA and PTB are both optional arguments. If either one or both are omitted, distance is measured from the center of the object; SIGHT (A,B,PTA, PTB) - This relation defines that Point PTA on object A be visible from Point PTB on object B; no solid objects may lie in the space directly between them. If a point is not defined for an object, the relation assumes that all of the object facing the other object must be visible; ACCESS (A,B,D) - This relation defines that a pathway must exist between object A and object B that is at least D units wide along its whole lengtH, for access, use, or maintenance. No Solids may lie in this path; ORIENTATION (A,B,SB) - This relation defines the orientation of object B in respect to A. Specifically, the side of object B denoted by SB, (A number from one to four, as described earlier) is to be oriented toward object A. Each of these relations may also be used in their negative form also. Thus one may wish to define that an object not be visible from a certain point or that two objects be greater than a certain distance apart. The above five relations were originally implemented because they seem to be universal to almost all spatial arrangement problems. Many other relations are required for particular applications. The kinds of relations that could be included in a GSP-type system are open-ended; those required for particular applications can be easily added to the current system. For instance, we are now developing a special GSP package that includes drainage, cutand- fill, and vehicular flow relations and special operators for site planning use. Other relations are expected to be required for applications to other specific problem domains. Extract: Operators for Manipulating Objects Operators for Manipulating Objects All of the GSP location operators rely on two primitive operators for actually placing and moving objects. The first, called TRANSLATE, places an object in a space in a defined location. The location is specified by the X and Y coordinates of its upper left corner. TRANSLATE rejects those locations given to it that violate the overlap conditions. If the object is to be rotated, this action is carried out by ROTATE, the other primitive operator. It rotates objects or spaces in ninety degree increments any number of positive or negative times in either direction. (Thus three positive rotations equal one negative rotation.) While a human user will not be likely to need more than two increments of a rotation in either direction, the automatic location operators, described below, do. In the interactive design mode, the user of GSP may directly call TRANSLATE and ROTATE to form arrangements. In the other design modes, and sometimes in the interactive mode as well, it is desirable for the systemto search out and propose locations of its own. GSP accomplishes this by incorporating routines that, when called, select locations with certain characteristics and pass these to TRANSLATE (and if need be ROTATE) which tries to place the object in the computed location. If the object cannot be located there, or if the user or system call the routine again, it will generate another location with the specified characteristics. For each routine, the locations generated and their sequence of generation are well defined. Because a dimension can be divided in infinitely many ways, there are an infinite number of locations for most objects. In reality, the infinite number need never be considered; only a few have characteristics that distinguish them and these are the ones we wish GSP to consider. GSP relies on a heuristic process that, for any arrangement, selects a set of empty loca~ tions which are likely to include those which satisfy design relations. All locations considered by the GSP automatic location operators can be characterized as a set. The set is defined as follows. Decompose into rectangles the unassigned Available Space ~n the current arrangement, using the vertical and horizontal edges of the space and objects in it as cutting planes. See Figure Five. We call each rectangle thus formed an empty domain. All locations where two sides of the object align with two perpendicular edges of an empty domain are considered members of the location set. We call all locations in this set the first order locations. They include all significant adjacent locations, all corner locations, and all those at the corner of "zones" within the total space. New empty domains GSP incorporates three automatic location operators. The first generates the complete set of first order locations, and the other two generate well-defined subsets. Each operator sequentially generates another location with appropriate properties each time it is called. They return a new arrangement of the specified space, with the object placed in the next legal location with the desired properties. The three automatic location operators and the properties of the locations they generate are: 1. SCAN - sequentially generates complete set of first order locations. It sequentially considers placing the object in each of them and considers the object in its four orientations. SCAN is the most general automatic location operator available to GSP; 2. PERIMETER - This operator sequentially generates the subset of first order locations for an object which are adjacent to the wall of the space; 3. BOUNDARY - sequentially generates the subset of all first order locations which are adjacent to an already located object. These operators allow the user of GSP to partially define the characteristics of the locations he wishes to consider for a particular object. The locations generated by any operator may be further evaluated by the relation tests. With the above described basic capabilities, a user can define spaces and objects and in the interactive design mode, arrange them and apply relations to the arrangements that he has created. As each operation is carried out, he may ask for the resulting arrangement, either in approximated form on the teletype or more completely from the plotter. For any arrangement he has generated, he may call for and receive a fully dimensioned plan from the plotter. [...] With extensions, such as quantity take-offs, automatic sizing and analysis of structural and mechanical systems, and easy inclusion of written notes on the drawing, this mode of operation may significantly decrease the time and cost required for producing contract documents. in [ACM/IEEE] Annual ACM IEEE Design Automation Conference Proceedings of the June 1971 design automation workshop on Design automation, Atlantic City, New Jersey, United States view details in Proceedings of the Second International Joint Conference on Artificial Intelligence (IJCAI), September 5 - 8, 1971, London, England view details in [ACM] CACM 15(02) (Feb 1972) view details |