.

DOWNLOAD

 

 

 

......


2. Background & Philosophy


In Gibson's and Stephenson's novels we can even find practical instructions for authors of virtual worlds, for example:
· There are no collisions of avatars on the streets. Naturally - why would they? But, the exclusion of collision is the direct saving of processor time.
· There are no shadows on the streets for the same reason.
· Height of avatars is limited. That way we make the designers' job easier (doors, cars and movements).
· Limited speed. There is limited speed of data transfer in virtual worlds, as in the real world, or more precisely maximal bandwidth. But in virtual worlds teleportation is possible.
And so on...
Some of these requirements were approved and became a part of the ISO/IEC 14772 (VRML 97) specification, and in recommendation of working groups of Web 3D Consortium. VRSpace server relies upon recommendation of the Living Worlds working group of Web 3D consortium and also relies on available open-source software.

One of the important requirements, albeit only implicated in SF novels, is portability: cyberspace works on Ono-Sendai consoles same as on the consoles of other manufacturers, but it looks better on better consoles (from Gibson's Neuromancer novel). VRSpace literary implements this: bigger frame rate means more objects in user's scene. Maximal number of objects and physical size of the scene (horizon distance) are parameters of every server. Size of every user's scene directly affects the load of a server, and we change the size of the scene we must make the load balancing of the server and client. Experimental VRML client does some other optimisation tricks, namely it adds fog on graphically weaker computers and draws semi-transparent cubes until the geometry is downloaded (once we download the geometry it stays in standard browser cache).

However, more important component of virtual worlds are software agents, e.g. Gibson's constructs Flatline and Finn, of Pohl's Von Shrink and Einstein. Each of them is a specialized advisor: Einstein for science, Flatline for cyberspace, etc. According to the author's opinion their basic characteristics are adaptability and understanding of human speech. Human speech is implemented by AliceBot, and adaptivity by NeuroGrid. By custom <vrspace> AIML tag, AliceBot is capable (for example if it doesn't know the answer, Catchall category in AIML terminology) of starting the distributed search. NeuroGrid will return a list of URLs whose content is determined by user's preferences and neighbours' advices. URL can be anything, even some web application. But if the returned URL points to AIML file, AliceBot is also capable of learning new language categories.

What can these robots do? We have to consider that computers don't have "senses" like people do. If we define "senses" as input/output communication channels of a closed system, computers have, beside "senses" for keyboard, sound and picture, 'senses" for pop3, smtp and other network protocols. In Java implementation a robot has all "senses" that are available to Java Virtual Machine. VRSpace server gives to robots a "sense" for space, and sensors when they need them: ProximitySensor, ObserverSensor, etc. That is, it gives them all capabilities it gives to a user, at the same time considering privileges and ownership, so by default a robot can't change properties of any object except itself.
But if a user gives to a robot the ownership of his confidential data, it is his responsibility to teach and maintain his robot because in p2p environment, some of the confidential hosts could teach robots how to give away that data (for example credit card numbers), to format hard disks and other similar unwanted activities. Regardless of your and your robot's trust in your friends and trusted hosts, a successful break in on your DNS can make your robot to execute code you don't want it to execute. It is our opinion that not only DNS but any kind of hierarchical systems are inertly insecure because the corruption of any element in the hierarchy gives the opportunity for corruption of every dependent items of the hierarchy. We suppose that trust systems like NeuroGrid (http://www.neurogrid.net/) and Reptile (http://reptile.openprivacy.org/) can decrease distribution of corruption, but it remains to be seen in practice. In any case, it is one of concepts that is easier to test in virtual than in the real world.

Another attribute of SF cyberspace can be described as "upload to the net". It is important to say that http or ftp upload is not the upload to the net, but to the strictly defined network location. If that location for any reason stops to publish certain content, than it is not available online anymore. Upload to cyberspace should secure that information stays there forever. The nearest to this idea we can get today are search engines like Google, with its archives of news, mailing lists and web pages. But "the final solution" are p2p networks: you just save a document in the public directory on your disk and that's it.
Distribution and redundancy of information depend upon the interest of other participants in the network. In p2p network data come to life - populations of documents can be described by the genetic algorithm whose fitness function is given by the end users. For example both mail and news are p2p applications: when you send us an email your mail server contacts out mail server and mail is replicated to all who are interested in it. Mail now waits on disk to be read, deleted or put into archive. In this case, fitness function is directly implemented by a user, and he decides whether he will delete it or put it in archive. Various p2p systems implement different modifications of user's decisions, so in fitness function they can take into account another conditions, for example average time of reach of the original document. But, beside distribution they take care of searching of distributed information. In VRSpace we don't take into consideration ways of reaching the data, because it distributes URLs, not documents.

Quality virtual worlds contain a lot of geometry and multimedia. The price of a server on the internet directly depends on the bandwidth, and p2p is the cheapest way of distribution: a user can get data from any node that has it on disk, from any user that has seen it. For that reason VRSpace uses JXTA content management system. We plan to closer integrate with JXTA and better access to JXTA services, in the purpose of complete removal of hierarchy from the system.

Now we must mention the delicate question of copyrights and copying in cyberspace. Our software has been published under the GNU General Public Licence, meaning that you can do what you want with it, until you publish source code of all changes that you have made. We think it's the perfect licence for p2p networking, with emphasis on sharing and cooperation instead of on restriction and competition, what can be seen from the following example:

Ipsos-Reid market research company reported in June that 81 percent of music downloaders buy as many or more CDs than they did before they started getting tunes from the Internet.
(You can read the whole article online at http://slate.msn.com/?id=2069732)

Anyway, in VRSpace it is possible to charge for every request by implementation of ISO 8553 protocol through the JPos - the same one that is possibly in your bank machine. Basic idea is to enable developers and world builders to make direct transactions with credit cards, with purpose of direct money transactions between users and authors. Accordingly, virtual worlds don't need salesmen: author can charge his work the same moment a user sees it, hears it or according to some other criteria (for example monthly subscription in some internet community). Role of a salesman e.g. link between author and user in virtual world takes over its network infrastructure. Any specific implementation in VRSpace still doesn't exist - possibility of financial transactions needs contracts with financial institutions - but JPos is a tool which is checked in 56 countries, so we can freely recommend to virtual banks.

Here we have another delicate problem: how to tax that transactions. To many governments' regret, users don't care (and usually even don't know) if the host where transaction is done is located in Croatia or in Zimbabwe. In cyberspace we usually trade with things which actually don't exist - banners, files, codes, telephone impulses, etc. No Big Brother system, no matter how sophisticated it can be can't control the cyberspace - the only control happens between users, the only efficient censorship is self-censorship. At any rate, avoiding of control and censorship is an important motif for the creation of cyberspace:

We are creating a world that all may enter without privilege or prejudice accorded by race, economic power, military force, or station of birth. We are creating a world where anyone, anywhere may express his or her beliefs, no matter how singular, without fear of being coerced into silence or conformity. Your legal concepts of property, expression, identity, movement, and context do not apply to us. They are all based on matter, and there is no matter here.
...
In our world, whatever the human mind may create can be reproduced and distributed infinitely at no cost.
...
We will create a civilization of the Mind in Cyberspace. May it be more humane and fair than the world your governments have made before.
(A Declaration of the Independence of Cyberspace by John Perry Barlow <barlow@eff.org>   http://www.eff.org/~barlow/Declaration-Final.html )

The real reality is considerably distributed: we have a piece of reality here, and a piece there. When we move through the space we perceive new objects, while other objects leave our perception. But we don't forget those objects - next time we come to the same place we will perceive the same objects, maybe even some new objects added lately, and some objects will be gone. VRSpace works in the precisely same way: as the client moves, incrementally loads new objects while unnecessary objects are deleted from the scene, but remain in the cache. In similar terms, VRSpace is a distributed database/filesystem, that is to say distributed content management system.

All of our actions - movement, speech, mimic - is a group of events in space. The space itself takes care about the mode of delivery of the message about an event to all observers, using for example light or sound waves. Observers do not receive a message about an event at the same time, nor they know when the event happened, nor the group of events that we can perceive defined in advance, we are not even capable to perceive or explain majority of events that are happening to us.
What is the meaning of this for VRSpace? Clients are observers, and all other objects, including clients are observable, thus realizing general event model.

Time dimension doesn't exist (inside VR) for a number of reasons. Let's mention some of them:
- man doesn't possess the particular sense for time, and we don't know how the subjective perception of time really functions
- the meaning of timestamp in distributed asynchronous environment is relatively irrelevant, and it significantly increases the net traffic

In this respect, VRSpace is asynchronous messaging system.
If we close our eyes or shut our ears, we stop to perceive certain classes of events, that is to say, we filter objects and events. Much more complex filtering happens in human brain: neuron networks in cascade filter senses, separate relevant from the irrelevant, add or subtract details, which leads to generalization of perceived objects and events. The scene of every client contains cascade of filters and every perceived object is filtered, in a way that every filter can delete an object from the scene, or change object's attributes. Thus we can filter individual users, objects and classes of objects, with or without subclasses. Filtering of events is not implemented, mainly because of performance reasons.

Considering all this, VRSpace emulates the perception, as in this example:
…And the default in this kind of store is usually 'alone with the merchandise'. If we want, we can see any other customers who themselves choose to be seen. And if we want, we could be visited by a shop assistant immediately. Or, if we hover around long enough, one will eventually appear anyway, just to help us toward a decision… (T. Williams: Otherland vol. I)

[Notes: while other senses are relatively well studied and are the subject of perpetual research, there is no scientific consensus on perception. Terms like perception and senses are frequently considered as synonyms, it is not even clear if the perception is physically distributed in the brain or it occurs in brain waves (McFadden). Although many mystics and researchers of mind altering substances can say a lot about perception (Huxley), it is impossible to use their research for this project. This implementation has been inspired by teachings of Ki Society (http://www.ki-society.org/).]