Speculations on future directions

(NOTE: This page is at a rough draft stage and includes a few miscellaneous thoughts and notes which may or may not be relevant to future projects)
There are so many possible changes on the horizon, connected with multimedia and the Internet, that it would be ridiculous to take any specific view right now. However, the alternative is to take no view at all...

Fortunately, object oriented thinking allows us to proceed without having to firm up on specifics. We don't even have to work with a final master plan. We can begin with a few modules and evolve into the future, adapting and modifying as we go. However, every object oriented design has to have a goal and a few underlying concepts.

Server or client oriented?

The most critical decision at this stage is whether to be server or client oriented. As explained in another section of this Web site, my personal preference is to be client oriented in some kind of Intranet system (COIS). This is probably very much a minority way of approaching the Web - so read on with caution.

However, if you look at the Netscape Navigator you will realize that this is a client oriented Intranet system (COIS) - the users of Netscape Navigator browsers are confined to the Web sites which Navigator can read and interpret. Web sites which want to be included in Navigator's Intranet system have to design their site to optimally use Navigator's features (even though Navigator is using a universal standard).

As far as I can see, most of the large players in the computer and communication games recognize that the Web is the ultimate challenge. Whoever controls the Web controls the world (Remember in Dune? "Whoever controls the spice..."). Strange that they are all surrendering control to Netscape.

Apple, Sun, MicroSoft, Macromedia, Adobe: they are all slightly bemused by Netscape's success and are redesigning their products to fit into this system. This is rather remarkable seeing as each has a potentially more suitable package to become a successful Web browser. Hasn't it struck you as somewhat of an anomaly that all the giants have been usurped in this major game by a small newcomer to the scene?

The reason for Netscape's early success and lead was that it recognized that the power of the Web was in bringing into play the client side computers. Looking at the Internet and the Web as one vast system, it can be seen as millions of computers connected together. If you can realize that only a few percent of those computers are being utilized (as it is if the Web were server oriented) you can see that the potential is vastly under utilized.

All the big companies were so pre occupied with the power of their own size that they couldn't think in terms of a system where they were not at the center of influence and control. Netscape, starting out as a minion, couldn't possibly think of themselves as being the focal point of the Web and so stumbled onto the more powerful strategy of looking at the Web from the client's view point.

Any system, which involves bringing more client side computers into play, improves the computing power of the system as a whole. This is what Netscape did, it simply devised a method of utilizing the power of the client side computers, increasing the power of the total system. With the aid of this extra power, it could leap frog over all the other systems which treated the client machines as passive receiving devices.

Looking at the Web with all the server and client machines fully involved would see the whole edifice as one giant parallel computer. The important point to realize though is that this view of the Web is exactly the same from any computer connected to it.

Servers do not have any special privileges, they only see the Web in the same way as all other computers and their advantages are only due to the fact that they are permanently connected and have many special programs (an option also open to any client computer connected to the Internet).

Client side power

Think of a client side machine running an application such as Director (or a Java application) which consists purely of interacting objects. The client machine will configure an appropriate set of the available objects in RAM to achieve some task, calling upon other objects as and when needed. Similarly, it will be able access and call upon various other graphic, quick time, sound or text files - using them as appropriate.

By convention, such objects and files would normally be part of the application program or conveniently available on the user's hard disc or local CD-ROM. However, it is pretty easy to understand that if there is a connection is open to the Internet, objects and all kinds of other files and documents could be dragged into the client's RAM from the Web at will and used just as easily as if they were located on the client's hard disk.

In other words, when a client connects to the Web in an object oriented environment, the total resources of the Web are instantly available to that client as part of, or supplementary to, any task at hand.

Why be confined to within an Intranet?

Any system which confines the client to a limited area of the Web, will bound to be overtaken by a system which allows greater access to Web resources. From this view point, a superior system should be aiming at providing the maximum Web interface for client side computers and not restricting them to a limited resource.

At first thoughts, Intranets would seem to be confining and limiting a client - which goes contrary to this thinking. That is, until you realize that a client is not limited to a single browser (Intranet system). A client can have several browsers to cover a range of competing Intranet systems.

As the giants catch on to the game, we'll soon see a host of different browsers, complete with their characteristic Intranet formats, competing with each other for client use and Web real estate. This is when we will shall see evolution taking a hand and the best browsers (Internet systems) are going to oust the poorer systems. Browser will compete with browser, evolving towards new and more sophisticated designs, converging and cooperating. Intranets will have to learn how to communicate with each other, opening up portals to each others domains so that they merge to become one single integrated whole. This is not mere speculation: this is the way it is with all evolving systems as evidence from the many example to be found in biological systems.

Web sites and browser will cause each other to change and evolve

If a new and better browser than Netscape came along tomorrow and was given free to every user of the Internet, how long would it take for all the Web pages to change to adopt to the new browser's Intranet system? It would take no time at all. This tells you that not only will browsers adapt to the changing Web but the Web will adapt to changing browsers.

In biological evolution, the environment to which all life forms are adapting also includes all the lifeforms themselves as part of the definition of the environment. Mathematically, this is the recipe for classic chaotic activity which can rapidly cause a system to reconfigure and stabilize around new attractors.

We must bear this in mind. Change, progress and evolution on the Internet is unlikely to be one long smooth progression: changes might be sharp, erratic and perhaps even sensationally dramatic.

Choice of platform and authoring package

Is choice of platform and authoring package important at this stage?

From an OOPS point of view, here are the main objects we have to play with:

A computer platform
An authoring package
An Internet protocol engine (software for communicating with the Internet)

Taking different combinations of only these three fundamental objects can provide a whole range of different directions (or limiting factors depending upon how you look at it).

Do you develop for the Mac or the PC platform? Or, do you go cross platform? Even if you choose cross platform, which platform do you choose to develop on?

Do you use Director and Lingo, or, Netscape and Java? There are also many other possibilities coming up which also have their adherents: HyperCard 3.0 using Quick Time will be cross platform soon. SuperCard is a contender and there are many other multimedia packages in the wings at various stages of development. Which to plump for?

Is a full multimedia package needed at all? Packages like Word and Acrobat can provide perfectly adequate Intranet systems and can be supplemented with special extension objects designed in lower level languages.

The choice is far from straight forward especially as the choice has to take into consideration a compatible Internet protocol engine.

As I see it, the only way to approach this problem is to think ahead to a forward position. In a year or two there will be many equally suitable authoring packages. However, the probability is that those that survive will all end up very similar.

They will all be forced to converge towards providing full multimedia with an associated programming language. They will have to provide similar if not identical functions and be able to configure different modules within an object oriented environment. They will be forced to work cross platform and have a versatile Internet protocol language. In other words what ever the choice is today, everyone is going to end up with pretty much the same thing in the not too distant future.

For example, pure object oriented packages like Java will evolve enough different objects to do anything that Director can do and Director will become less rigid to give it the flexibility of Java. They may be using slightly different syntax and have different names for the menu items, but, in essence they will all do the same things in much the same way to much the same effect.

If we assume that this convergence is bound to take place, we can lift ourselves above the level of platform and authoring package specifics to think about the application themselves. For this purpose we can choose platforms and packages convenient for our current needs and leave the final choice to a later more advance stage when we see how the battles between the giants and their products evolve and sort themselves out.

My choice

For me, my personal choice of today is a Macintosh using Director with a Marionet protocol engine. I also have a PC for checking cross platform compatibility.

Marionet is purely an Internet protocol engine which allows Director movies (and several other authoring packages) to do things on the Web and to control Web sites. Unfortunately it is Macintosh only, but, I figure that by the time I have sorted out some viable intelligent agents and Intranet systems the cross platform version of Marionet will have become available or else one of Allegiant's competitors will have come up with a PC version of something similar.

My conclusion therefore is that at this stage the choice of platform, authoring package or protocol engine isn't critical. Such choices are just incidental to the really interesting problems of working out how to use intelligent agents on the Web.

An intelligent agent to start with

Maybe I'll get some funding or a sponsor which will point me in a specific direction as to the kind of intelligent agent or Intranet system I actually bring to market. In the mean time I am faced with a vast range of possibilities with which to explore.

An application which immediately springs to mind is to design an intelligent agent to help me deal with the vast amounts of information I am getting from the Web and to assist me in communicating with people on the Internet.

There is so much information available that its sheer size renders it counter productive. I've only got so many hours in a day, so many days in a week and so many weeks in a year. How do I proportion that time? How much of it should I devote to surfing the Web, reading posts from news groups and list serves? How much time should I spend keeping up correspondence with special interest groups or personal correspondence with friends. What time should be spent exploring new issues, getting up to date and generally finding out which way the world is heading?

I don't know about you but I find this is becoming more and more of a problem. An article in WIRED recently identified a phenomenon which they called "acquired attention deficit disorder syndrome", where you get bombarded by so many projects, faxes, email, etc... that you can attend to none of it well, if at all.

If intelligent agents are truly useful and viable why shouldn't they be used to help me with this kind of problem. Physician, heal thy self.

Three Conceptual Models

It always helps to have some conceptual models to draw upon when trying to solve problems. The more of these conceptual models you can superimpose together the better.

Let's take just three here:
1) Village of the Damned
2) Sociograms
3) Dr. Peltz

1) Village of the Damned

If you have seen the film, or read the book, "The Village of the Damned", you may remember the unique characteristic of all the alien children who were born to the women of this village. They had a common mind: what one child learns, or sees, every other child will automatically know through some kind of telepathy.

News groups, list serves, Internet special interest groups (SIGs) work like this. They act much like a common mind where the knowledge of all individual subscribers is pooled to be shared and available to all.

The problem with news groups, list serves and SIGs is that the best ones tend to increase in size and without a moderator the number of messages get progressively larger and the content becomes more varied. Moderated lists have a smaller number of messages and a larger signal to noise ratio, but, the content is biased according to the views and interests of the moderator.

By definition, each of these sources of information cover a limited range of knowledge and to have a balanced view of the world necessitates belonging to quite a few. This then presents the problem that there are then too many messages to handle and knowledge is obtained almost randomly because only a limited selection of the posts can be read and absorbed.

However, as most of you have probably already realized, to be able to tap into these "common minds" is a great asset.

2) Sociograms

A model which has stuck in my mind for many years is the concept of the sociogram. I first came across this in a book on marketing strategies. I cannot remember the source, but, the example of its implementation concerned a large drug company who wanted to increase the efficiency of its marketing efforts. This drug company set out to discover how doctors find out about new drugs, and how they came to choose one drug in preference to another.

Questioning the doctors about their choice of magazines, the effect of mailings and samples, the conferences they attended and the people they spoke to, it gradually became apparent that the greatest influence on a doctor's choice of any particular drug tended to be the advice and information they received from other doctors.

Concentrating on this one particular aspect, the drug company sent all their reps out to question every single doctor in a chosen area of the country with the express purpose of finding out how this "word of mouth" system operated.

What they discovered was that information exchange was not spread evenly. Some doctors were regularly communicating with just one or two colleagues while others were communicating regularly with many. Representing doctors as circles on a page and drawing lines between the circles where there was regular communications between them the drug company produced a "sociogram" which gave a diagrammatic representation of the patterns of communication between doctors in this chosen area.

The diagram clearly showed that a small group of doctors were particularly active in this communicating society and were having a disproportionate affect on the opinions of others. By choosing to concentrate their marketing efforts on these main communicators the efficiency of the drug companies marketing efforts were dramatically improved.

3) Dr. Peltz

Several years ago I was recommended to a doctor in the West End of London. At first I couldn't quite see what was so special about him. He was competent at diagnosing problems and seemed to recommend appropriate remedies. However, as I got to know him and his practice better I found that he was acting as an interface to a much larger system.

He was a consultant at several of the large hospitals in the central London area and over the years had built up contacts and relationships with a whole range of specialized practitioners. This meant that if any of his patients had any problems which were of a complex nature he could send them to a specialist to allow them to get expert attention and advice.

Dr. Peltz was in fact my interface to a system of medical experts and through him I had constant access to a object oriented system of personal health care.

Superimposing the models

The above models have certain common characteristics. Firstly, they represent a system of communicating modules. Secondly, the systems allowed individual objects in the system to benefit from the knowledge and experience of the others.

Thirdly, and most significantly these systems were based upon people. The children of the "Village of the Damned" were not constructing a huge data base to amass their knowledge. The doctors in the sociogram were not reliant on consulting reference books, neither was Dr. Peltz.

Artificial Intelligence has been somewhat of a disappointment. Despite the vast sums of money thrown at this area of research it has achieved surprisingly small practical results. The main reason for this is that it has tried to replace humans entirely from the systems.

As you can see from the above models, spectacular improvements in intelligence can be achieved by including people into a communicating system.

It makes sense therefore to approach the idea of intelligent agents for the Internet not as agents which will replace human endeavors but to design agents which coordinate and organize a system where the main components, or objects, are people.

To be continued........





UNUSED NOTES AND STUFF

1)

Time to step back and look at all this techy stuff to see if it has any practical application which could make some significant difference to our lives.

On the surface we see an arcane programming language for a complex multimedia authoring application. Looking beyond this superficiality, we find that it is a route into a new way of thinking. Combining the twin concepts of lists and objects we find we have a powerful new way to deal with and process information. Specifically, we can see how these concepts can be used to construct intelligent software artifices which are able to learn and adapt.

The main theme of Robert Pirsig's book "Zen and the Art of Motor Cycle Maintenance" was about the importance of how we perceive things. In his words:

"Quality is the transformation function of the interface between the perceiver and the perceived."

In other words, beauty is in the eye of the beholder: according to the way the beholder looks at things. If we apply this thinking to the way we perceive the Internet we realize that the value of the Internet is directly related to the way we interface with it. If we use a dumb interface, the value is going to be low. Conversely, if we use a smart interface the value could be high.

The dumb way to use the Internet is to randomly surf the Web, scene tasting in the vast realms of information and knowledge. In this way there is no purposeful organization, just unfathomable depths to be explored.

The next stage up is to explore this gargantuan knowledge base with purpose and direction, seeking out specific areas of information. Fine in theory, but, in practice the route consists of multiple paths leading to an overwhelming choice of directions: full of diversions and red herrings.

It doesn't take you very long to figure out that the Internet is far too vast to handle on your own and you learn to seek advice from others. You join list serves, read magazines, converse with friends and members of peer groups.


2)

When a problem contains many unknown variables the solution is beyond the human mind to conceptualize. This is particularly true where the values of the variables are interdependent.

As was shown in HGMG, nature tackles this type of problem using mating, mutation and crossovers to evolve solutions to the problem of designing for optimum survival and reproduction. This can be demonstrated using genetic algorithms which are now used in numerous branches of technology to tackle all kinds of difficult problems which have many unknowns.

This technique works because the process does not involve having to get an exact solution. Instead, the method realizes on making a pretty good approximate guess.

This involves creating many tries; then, trying again using new variations of the elements of the best of the tries. This process is repeated many times so that the approximate answers get closer and closer to the solution.

The same principle is used in game theory where a winning strategy does not consist of an algorithm which ensures success but will provide a statistically probable chance of success, where the rules of the strategy evolve as a consequence of feedback from the results of applying the strategy.

This concept is by no means an easy concept to understand. Seventy years ago, just after the birth of Quantum Mechanics, there was the famous debate between Albert Einstein and Neils Bohr.

The essence of the debate centered around the use of probability wave functions in equations in place of actual states of matter (e.g. saying an atom is in a particular place even though the atom is only most likely to be in that place). Bohrs argument was that the probability wave function represented the "knowledge" in the system which could be used to make predictions.

Einstein's view, as related to James Franck :

"I can, if the worst comes to the worst, still realize that the Good Lord may have created a world in which there are no natural laws. In short, a chaos. But that there be statistical laws with definite solutions, i.e. laws which compel the good Lord to throw dice in each individual case, I find highly disagreeable."

The phenomenal success of Quantum Mechanics in predicting all kinds of events eventually won the argument for Bohr. However, Einstein never really came to grips with this concept and as one of his biographers (Abraham Pais) remarked, Einstein might just as well have gone fishing after 1925 when Quantum theory swept the world.

Even as late as 1954 Einstein was still not able to come to grips with the concept and made his famous remark "I cannot believe God plays dice with the cosmos."

In an effort to explain the basic concept of Quantum theory, the Austrian scientist Erwin Shrodinger invented the idea of a cat in a closed bag. In this bag with the cat is placed a device which has a 50% probability of activating a gas which kills the cat.

Without opening the bag there is no way of knowing whether or not the cat is alive or dead and therefore there is information available to assist with any future planning. For example, there is no way to know whether or not to buy in some cat food for the cat's dinner. Allowances have to be made for the two possible outcomes.

If there were four bags, with four different cats each with this fifty-fifty chance of being killed by a device placed in their bags their would be five different possible out comes to allow for. Do you buy cat food for no cats, one cat, two cats, three cats or four cats. A hundred cats in bags would have 101 possible answers.

Shrodinger explained that instead of calculating in terms of cats you could calculate in terms of the cats probability (function) of living. In other words, if each cat had a fifty fifty chance of lining you could represent the cat by this probability (i.e., 0.5). Using this "knowledge" of the system rather than its reality you can calculate the best guess as to how much cat food to buy for 100 cats in bags:

total cats X (probability of each one living) = amount of food to buy

100 X 0.5 = 50 cat meals

Now there is no formal logic which will give this result but repeating the exercise many times will show that 50 is a pretty good average guess as to how many cats you would need to feed. Einstein hated the fact that there was no concrete reason for deciding upon the value of fifty but nevertheless the method gives a practical result which is usually approximately correct.

It is this concept of "the knowledge" as opposed to the reality which is an important ingredient in planning agents with artificial intelligence.

Agents shouldn't be designed to have algorithmic type thinking which produces results from analyzing data banks of facts. This method leads to cumbersome and unwieldy software and data bases. Agents should be confined to situations where they can use acquired "statistical knowledge" so that they can aim for "nearest" or "approximate" solutions.

The agents which are going to be of practical use for client side computers are going to have to be of this type.
[Index]
[Next - Hierarchical networks]
[Back - Info bot communications]


Peter Small August 1996

Email:
peter@genps.demon.co.uk

Version 1.00

© Copyright 1996 Peter Small
No reproduction in whole or part without prior permission