How To Design A City

An Alternative Implementation

One way to create an expert system for designing a city is to use a semantic network. Another method of showing how to design a city is to use the object-attribute-value implementation, otherwise known as Triplets. Triplets allow someone to see detailed information about an object. This is done by first stating the object, then stating one of its attributes (i.e. color, size, etc). Then you give that attribute a value (i.e. color is green, size is small, etc). This implementation shows the design in more detail than is normally shown with a semantic network, because it requires the inclusion of the individual specifics of each object. In a semantic network, you draw nodes, which are the objects, and connect them using arcs, which are labeled show the relationship between the objects. The semantic network can become extremely complicated with a large number of nodes and arcs, especially since more than one arc can point to an object. Now here is an example of implementing the design of a city using the object-attribute-value implementation.

First of all, we need to start broad. The first object is going to be the city. The City object has many different attributes itself. One of its main attribute will be its name. In this example, the city's name is going to be Charlotte. Another attribute of the City object is the county where the city is located. Charlotte's County value Mecklenburg. If a specific type of location were not specified for the attribute then there would be several different answers for the value, like North Carolina, Piedmont, and North America. The object-attribute-value implementation can have objects with many different attributes and values, as seen with the example of the Charlotte object. Here is a list of other attributes that are possible:


OBJECTS ATTRIBUTES VALUES

City Name Charlotte
Charlotte County Mecklenburg
Charlotte State North Carolina
Charlotte Universities UNC Charlotte
Charlotte Transportation Buses
Charlotte Roads Tryon St
Charlotte Sewer System Sewer Pipes
Sewer System Sewer Pipes Sewage
Charlotte Buildings Skyscraper
Skyscraper Name Two First Union Center
Two First Union Center HVAC System Duct
Duct Material Aluminum
HVAC System Energy Source Electricity
Electricity Source McGuire Nuclear Plant
McGuire Nuclear Plant Fuel Uranium
Two First Union Center Businesses Adams Law Firm
Adams Law Firm Floor Number 21
Adams Law Firm Employer Thad Adams
Charlotte Building House
House Inhabitants Humans
House Bedrooms 3
House Style 2 Stories

As can be seen from the previous example, an object-attribute-value implementation can get extremely in-depth very quickly, not unlike a semantic network. The major difference between the two schemas is the method of visualization used to display/describe the information. The semantic network is a graphical approach that can be viewed by following the flow of the arcs from node to node. The object-attribute-value implementation is a chart format that references an object and its properties by providing facts about them. In both the semantic network and the object-attribute-value implementations, the problem of "How to Design a City" was only slightly touched. Showing the relationships among every object in a city would require an extremely complex diagram. Creating an expert system for designing a city would probably take several years to design, develop and test.

Return to Group #01 Main Page.
Go to Project description.
View Semantic Network schematic (.gif format- 23K).
View Semantic Network schematic (.jpg format- 123K).

Return to the Programmer's Palace.