Monday, October 19, 2009

Virtual Modelling and 'Real Life'

This posting is dedicated to my father, who must deal in practical terms that which Et in Arcadia Ego deals with in conceptual terms.

First, some definitions. For the purposes of this discussion, a model is a data object that attempts to store and possibly manipulate information. The information stored is broken into elements - those discreet objects of information which are the atomic pieces of a model. Each element may have one or more fields of information associated with it - these fields are intimately connected to the element, and describe portions of the element. If the model is a vocabulary of natural language, the elements are nouns while their fields are adjectives. Each noun can have more than one adjective, and two different nouns may have the identical adjectives. Got it?

A database is, in one sense, nothing more than an attempt to model some aspect of the world. An H.R. database, for example, is an abstracted model of all of the personnel of a company. A security database (or individual file) is a collection of log-ins, passwords, and other identity data for some group of people - a model of those people cast through a certain perspective. The database that supports Google Maps is a virtual model of the geographical layout of the Earth.

Of course, virtual modeling goes much further than this. CAD/CAM systems are virtual models of real world objects. Even a chess program is a virtual model of a physical game - except that often an exact instance of that game has no physical representation. Computer programming, in a sense, is configuring the meta-model of a computer to model accurately some aspect of real life.

Computer models are judged by several criteria. One is how closely they correspond to that aspect of the world they are meant to model; an H.R. database that excludes real employees or includes false ones is a poor model. We may call this criteria completeness. A second criteria is association of information: a model that incorrectly associates informational fields to other informational fields is considered less useful: A security database that does not correctly relate the password to the correct log-in is not useful. We'll call this interconnection accuracy. Third is the degree of interconnection of informational fields - whether all information fields that can usefully be related to one another are usefully related to one another. We can call this interconnection volume. Fourth is the number of fields collected for each element; robustness. Fifth is how finely the model is divided into individual elements; discreetness. And lastly, how large of a section of the world the model is attempting to capture, and thus how many elements it has; scope.

As computer storage becomes cheaper, more readily available, more accurately and precisely searchable, and smaller, computer models of larger and larger size become possible. This has led to large increases in scope, discreetness, and completeness. It is now possible for the U.S. Census Bureau to collect the GPS coordinates of every front door in the U.S. Meanwhile, Google has captured fairly high resolution photographs of most of the Earth's surface, and is collecting streetfront photos of many major urban centers.

The principle of completeness strongly impels these organizations to attempt to collect every element that should be part of their model. Privacy advocates argue that such data-collection violates personal privacy principles; a reasonable argument. Debate can be had on this topic, but there is no doubt that such concerns degrade the usefulness of these models.

Animals, in a sense, collect data and create models of the world around them. One aspect about the process is in the automatic scaling off discreetness that most animals seem to be innately capable of. If a computer captures a photo of a living room, it tends to treat it as one large, atomic element. Thus far, the problem of teaching a computer to break a photo into more discreet elements (increase the model's discreetness) has been difficult. However, humans have no trouble identifying a lamp, a chair, a rug, and so on in a photograph. We seem to be able to scale up the discreteness of our model of the world almost at will.

Googlebombing for a cause: 


Doc Anne said...

Consider driving on the freeway during rush hour with construction ahead. You decide that there is too much slow down before you so you observe that there is a ramp ahead that you can use to find a side street to go around the block. You glance in your mirrors to see if there might be a break in traffic so you can switch lanes. There is a semi in the right lane; you calculate the amount of space open, the speed needed to move into that space before the semi does, you hit your signal and move smoothly into the lane. The semi does not hit you, you have enough room between you and the car in front of you and you can move into the off-ramp.
What kind of calculus has your brain used to make all these moves and calculations? It amazes me to even think about this.
Don't even get me started on watching a child turn into a functioning human in a year....
Humans rule, computers drool!!

Lord Carnifex said...

To a certain extent. If the road and its conditions, and the size, position, and velocities of all vehicles were programmed as a virtual model into a computer with a decent physics engine, it would be relatively simple to ask it for a solution.

The problem is that a modern computer with only visible light optical sensors, would be unable to properly construct the model on it's own. It would require either human intervention to enter the data, or some sort of radar or laser imaging peripherals.

Of interest to me is this hypothetical inability to recieve optical data, identify "car", "truck", "car", and so on, and then calculate the size and velocity of those objects from multiple frames of optical data.

Doc Anne said...

Yes, to collect all that data, and don't forget the 'feeling' of where the edges of your own car are, process it, and act on it all within seconds. It would be slightly difficult for a computer to act quickly enough no matter how the data was input. Even people who have not had much experience with 'car' and 'driving' can do a reasonable job at it. Of course, the child growing into a driving human has had a great deal of experience moving their body and other objects through the environment. Perhaps it goes back to the question 'can computers learn?'