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