Hi Alan,
I just wanted to congratulate you on your honesty and bravery in posting
and wish you the best of luck in your endeavors. You will as I have
need to develop a rather thick skin though as what we are attempting is
consider by most to be beyond the capability of a single human being.
It is great to see that some people tire of the endless philosophizing
and want to actually produce something.
I do not want to discourage you but it will be and is an enormous
undertaking, the largest thing you will ever work on in your life and
will doubtlessly take many years of your painstaking devotion and
personal resources.
Unless you are highly connected or have a track record that implies
success with all who see it, the initial phases will probably be on your
own nickel until you can in fact demonstrate something far enough beyond
the present state of technology that you will overcome the skepticism
barriers of the current venture capital market.
Even then I have found that without a selling product and a realistic 5
year business plan it will be very hard to open the VC doors.
I have been developing my own brand of AGI for several years now and
although in my mind I have been very successful in exceeding the
existing state of art for bot technology, I know I will need at minimum
an initial commercial success before I can approach the VC community.
There are many Pros and Cons to whatever operating system decision you
will make. I have recently moved to Microsoft's .Net architecture for
the following reasons:
- Benchmarks suggest that .Net code executes much faster than Java in
the same environment.
- Although .Net code should run slower than true compiled code,
Microsoft has so optimized the class libraries upon which .Net is based
that my VB.Net application ran 3 times faster than my VB6.0 true
compiled version.
- The .Net environment gives you the choice of VB.Net, C#, and C++.
Expect a large third party component market whereby you may be able to
save a lot a development time by purchasing pre-made components.
- All necessary API's, database, web and database connectivity are
available within the Visual Studio 7 development environment and the
.Net class library.
- With Java, an Open Source database such as MYSQL is required for large
volume knowledge storage complicating both the development and runtime
user environments. Upgrading to new versions then usually requires
upgrading multiple environments (Java Runtimes, Apache, Python, PhP,
Database, etc... )and a potention for version mismatches with each new
upgrade.
- The Open Source Mono Project is working on porting the .NET CLR
(Common Language Runtime) environment to other platforms such as Linux.
This will eventually allow .Net programs to run on other operating
system platforms without recompilation and take advantage of the higher
hardware speeds on some of those platforms allowing for higher
scalability.
- Although Linux has made great inroads in supplanting Microsoft OS in
the web server environemts, most corporations are still using Microsoft
platforms for their application servers. Their admins are trained and
are comfortable with the system in running mission critical business
systems.
- Clustering and fault tolerance is still overly complex in both Linux
and Windows operating environments but by partitioning your application
as distinct web services in .Net or Java Server Beans in you can
maximize scalability and fault tolerance in a large installation.
- The Intel/AMD platforms are doubling in speed every 18 months and are
for the time being staying largely backward compatable with Windows
software.
- Microsoft is making available .Net development kits for running your
.Net programs on handheld devices. These devices may then call web
services, and database backends via wireless technology incorporated
into the development kits.
You said:
<< One would like to create a virtual desktop which is mirrored to the
physical
<< console and then have the AI take its input from what it displays. On
<< this desktop the AI can run games and other instructional software as
<< well as communicate with the human operator.
On either a Windows or X-Windows desktop it should be able via shell
commands to run other programs. I have not tried it but programs like
WinBatch can get the handles to the other programs appplication windows
and send input which then appears as keyboard inputs to the other
program. This should be doable from within .Net although you would
probably need to resort to some operating system level calls.
<< My idea would be to produce AI development tools. These would include
software adaptors
<< to let the AI use Mozilla or sumpfin as well as two lines of robotic
systems. The
<< first line would feature laboratory rigs that include white-boxes for
controlling stimulii.
You here made the jump from AGI to robotic systems. This may be where a
lot of your background is
and you are comfortable with it. From my NLP perspective though I can
see how this could lead to smart AIBOs but could further distract you
and dilute your resources from true AGI if that is in fact
your main goal. Sony and and Honda have huge robotic budgets and APIs
are rapidly appearing for interfacing with them. Once you AGI is
approaching high-level understanding it should be fairly easy to have it
send API commands to these robotic dummies and direct their movements.
<< The software, however could be produced for practically nothing. So
what
<< kind of software would be able to make it big enough to justify a
<< price-drop into hobyist teritory?
How about an AGI that is capable of matching your resume against
openings posted on all the job boards?
How about an AGI that is capable of reading resumes in multiple formats
posted on the internet and creating a a standardized searchable skills
database for small employers.
How about an agent that would find you the lowest cost or fare for a
product on-line including the shipping. Yes there are some out there,
but I always find a lower price myself!
How about a program that can answer technical questions by scraping all
of the existing Q&A websites.
How about a program that helped your kids with their homework (not give
them the answers).
How about a program that could advise your family on basic financial
planning and money management.
You said:
<< The easier computing systems that I am talking about already exist.
One
<< of the most shining examples of these is the Squeak environment. (
<< www.squeak.org ).
This looks interesting. It's easy to get on a quest for the silver
bullet programming language though. I played with REBOL for a bit and
what it does, it does well, and with far less code.
But in terms of speed and access to all of the machine resources
devices, graphics, APIs and readability, I found that the mainstream
languages are mainstream for a reason, depth and support being key.
But once your AGI can understand basic assignment, looping, and
conditional natural language, it should be possible to teach it
additional behaviors (programming functionality) in Englis itself.
At that time all to the functionality of the underlying class libraries
will be available to it.
You said:
<< WE CAN MOVE THE SINGULARITY FORWARD BY YEARS JUST BY FIXING THE
PROBLEMS
<< WITH TODAY'S SOFTWARE.
I agree, but software is evolving just as biological organisms did, just
much faster. Ease of use is not progressing as quickly though because
communication with the computer is still constrained by the
communication bandwidth of describing what we want the computer to do in
it's own language. If we remove that barrier and design a program
capable of augmenting it's own behavior from a natural language
description of what we want it to do we open up that bandwidth
immensely. So we're back to the chicken or the egg problem. We can't
have smarter software without AGI and we can't have AGI without better
software! That's why there are so many extinct species. Sometimes even
god had to throw out a bad design and start over from scratch!
<< Bottom line: I need $5,000,000 to start, and another $10,000,000 to
go on-line.
Bottom Lineis : If you get your money I'd like to come work for you.
But that's after I beat
my head into a brick wall for not having the guts and courage to ask for
it first!
Again Best Luck in your Endeavors,
Gary Miller
440-942-9264 if you'd like to
talk
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On
Behalf Of Alan Grimes
Sent: Thursday, November 28, 2002 9:21 PM
To: [EMAIL PROTECTED]; [EMAIL PROTECTED];
[EMAIL PROTECTED];
[EMAIL PROTECTED]; [EMAIL PROTECTED];
[EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: [agi] An idea for promoting AI development.
om
In this posting I will try to walk you through a fairly complex and, in
some places tenuous, chain of reasoning related to my own personal
attempt to develop an AI. My motovation in writing this post is to seek
out people who might be interested in this venture. And, ofcourse, this
will serve as a sanity check for myself.
I know that people skim longer postings however I do have some very
important things to say, skim to the second 'om' in the posting for the
skinny...
===
For the last month I have been trying to put togeather a box for
research. The USPS lost the ram and its going to be a while before I
will be able to afford it again =(. In the mean time I am trying to
sketch out my research agenda.
To start with I need an OS and develment environment. It can't be linux
because I am building the machine with my old 850MB HD (I spent all my
money on the Mobo). That's not a real reason, ofcourse, because I could
put any HD I want in it, if I had the money. The real issue is that
Linux is not a real-time operating system. Its simply the wrong solution
for this job. I'm not going to use windows, for obvious reasons.
My immediate plan is to put BeOS on the machine cuz I have the disk on
hand. Unfortunately Microsoft killed Be Inc, so I will probably switch
to QNX or some other real-time platform at some point. Other options
include using DOS to boot the machine then run the AI as a
self-supporting system providing its own OS functionality.
These platform issues seem to be minor but I will demonstrate their
importance presently.
I have chosen a cybernetic approach to AI because it makes the most
sense to me. I don't think I could work any other approach. A cybernetic
approach is one that is based on a cybernetic loop between actor and
object. Where the AI is designed in the context of a problem to be
solved.
To develop an AI based on this approach one first sets about to
construct a problem domain for the AI to work on. For general AI one
requires an open problem space such as a box of Legos. Today's computers
already come with a broad selection of software that would be suitable
for this purpose. The problem then becomes how to make it so that the AI
can see and use these applications just as the human user does? One
would like to create a virtual desktop which is mirrored to the physical
console and then have the AI take its input from what it displays. On
this desktop the AI can run games and other instructional software as
well as communicate with the human operator.
The development of such a system is still very chalenging as nobody
writes software to run in the configuration I just described. This
problem is not insurmountable, it will only require a great deal of
money. Here is where I make my make my first logical step. I have
concluded that to get the money and resources I need to develop the AI
training software I will need to launch a commercial venture either
under an existing company or organization or as a new business.
So I start to sketch out a business plan. My idea would be to produce AI
development tools. These would include software adaptors to let the AI
use Mozilla or sumpfin as well as two lines of robotic systems. The
first line would feature laboratory rigs that include white-boxes for
controlling stimulii. In that system, the AI would be given Fischer
Price toys to play with. It would have a camera and a dexterous
high-feedback robotic arm. Basically a pre-fab version of the type of
laboratory that has been in use for years...
The higher line would be a mobile platform with a big honkin on-board
computer and a dexterous manipulator.
So how do I market this? Could I match expenses? The market for the lab
equipment would be fairly narrow... Maybe a few dozen universities would
buy it. Probably not enough to achieve an economy of scale and make it
affordable to a broader market of hobyists and entheuseasts. In other
words the hardware angle of the venture would not do much to advance the
cause of AI develment.
The software, however could be produced for practically nothing. So what
kind of software would be able to make it big enough to justify a
price-drop into hobyist teritory? The most advanced AI available to
consumers today are in games such as Creatures and "Black and White". A
game engine architected to support general AI actors would be close to
ideal.
The Sims Online is only the latest example. That kind of game would be
great for teaching an AI to be good citizen. I, however, have a great
bias against virtual communities beacuse it makes me nervous that it
might one day gain a status above the real world, creating a situation
inimical to someone, such as myself, who has an interest in real-world
things. I used to have a "reality engine" project on my website but I
withdrew it after reading Egan's Diaspora. So my first choice would be
to go with a mobile platform or implement some in-house application for
the job. No matter how attractive that approach is, it is still most
problematic.
om
Software is too hard to develop. The curent state of software is that
there are high barriers to entering the circle of developers.
Furthermore once one has made a comittment to devel software you are
faced with C++ which I have been told requires 7 years of daily
experience to truly master or with the nightmare of getting a better
language to work with an operating system which is literally built to
support C and C++. Switching to a better OS makes things worse because
once you get out of the mainstream you can't find support and you find
yourself having to write/port more of your applications. While the OS
you choose may be much much better than linux (which isn't hard at all)
such as BeOS your costs will go up because you have to do alot more from
scratch.
[damn, I'm having trouble writing streight today; not enough sleap cuz
I've been downloading 5.5GB of leenooks over 56k...]
YES, it is technically possible to nuckle under and work linux. When one
thinks of an application such as the internet one looks at the work and
what it takes to do the work. In all cases you want to maximize the
ratio of work to overhead.
Lets think of software as a pyramid. The simplest softwarez are at the
bottom, and AI is the little point at the very top...
^ < AI.
/_\ < applications.
/___\ < operating systems.
/_____\ < languages
/_______\ < raw computation.
The ease of developing AI is a function of how well the lower levels
support the next level. This isn't strictly the case but given my state
of tiredness, it makes perfect sense. ;)
To give you a better feel for what exactly is going on here let me try,
in my over fatigued state, to relate the core of what is going on here
through an anictdote that happened to me a week or so ago.
I have a long-time pen-pal, David G. Shreeves (
[EMAIL PROTECTED] ). He has been a Slackerware (linux) user
for many years and reccomends it highly. On his advice, six months ago,
I had a friend of mine (who has DSL) burn me the discs. He, most kindly,
provided me with all three disks. My HD had reciently been slaughtered
by an asshole after 6 years of uninterupted operation and I was in need
of a new OS. When I tried to install the OS, it didn't work, it simply
couldn't handle the optimal configuration of my HD. I asked around and
they told me that it was a bug in the kernel and the work-around was to
change a setting in the BIOS to a lower setting and later to recompile
the kernel with the correct driver.
I use DOS as a benchmark for OS quality. Since this problem _NEVER_
happens in DOS, linux is clearly inferior.
So I was talking with Shreeves about it a few days ago and he knew about
the bug too and suggested that its just a hacker's OS and that these
inconveniences are minor.
He, and many like him overlook a critical fact. That being that the
_USER_, and in this case AI researcher, was forced to take time and
mental resources AWAY from his work on AI to handle these linux
"quirks".
While it is theoreticaly possible for someone to be such a strong
programmer that he can put up with linux and still have some time left
over on the weekends to solve the AI problem, I hope the people
receiving this message will see that to be a real problem. Humans are
finite creatures. You can't keep piling stuff on them and expect them to
be just as fast.
The burdeons of using linux have gotten to the point that its
development has been thouroughly arrested by all the cruft that has
built up around it.
Our basic goal here is to make computing much easier so that AI
researchers can jump right in and start working the real problems of AI
rather than spending all their time and mental resources getting their
flaming hard drives working. By making AI research dramaticly easier to
accomplish we can dramaticly improve the chances that someone out there
will "get it right", and that's a Good Thing (tm).
The easier computing systems that I am talking about already exist. One
of the most shining examples of these is the Squeak environment. (
www.squeak.org ).
The question now is, what is the killer app that can bring Squeak into
the mainstream and encourage the open source community to give it the
functionality that it needs to really succede without having to make a
massive initial investment in that same functionality?
I think the answer is this:
http://www.business2.com/articles/web/0,1653,45665,FF.html
A game is not like traditional open source. Very few people will work on
the real problems in the linux system, the core of GNU software that it
is based on, because it is difficult and because, as humans, they don't
have sufficient emotional motovation to work on such projects.
A MMORPG based on Squeak can solve that problem. While the details of
the virtual world I propose are beyond the scope of what I want to say
here. I feel that I have an excelant chance at being extremely sucessful
in this venture. I will just have to set asside my fears and go whole
hog on this because these on-line games have such an enormous potential
for driving development of the cultural and technical foundations of AI
development.
The economic value of virtual communities is only now beginning to be
realized. The on-line RPGs we see today are merely experaments to find
the right set of concepts that will make it big. I can project from the
recient trends in the field and I am very confidient in my ability to
design a virtual world with great potential.
I know how to do it.
I do face a significant challenge in getting it off the ground. While it
has a clear mission, its qualities as a piece of software are not
readily apparent. Investors have been mistaking complexity for
sophistication for quite a while now and I don't see that changing any
time soon. They will look at the Squeak package and won't see its true
value because it looks too simple to them. ;)
The Virtual world I propose, the first generation at least, is quite
obnoxious in that it will be a simple 2-D system. It is 2-D for very
good reasons but investors will look at it and balk. =(
For an AI focused institution they will look at it and say "What value
does this bring us? It has nothing to do with AI!" While, on the
surface, they would be right, they will fail to see that promoting the
virtual world I here propose, is what I call an "indispensible luxury".
Its something that you don't really really need, but is a real pain in
the butt to do without. Let me try to sumarize the payoff here. Squeak
today is a wonderful system but it is immature and not yet sufficient
for major projects. Today's operating systems have a massive ammount of
inertia behind them and that won't change unless major effort is put
into displacing them.
Through the virtual world squeak can become a major factor in the future
of computing. In five to seven years, my virtual world system can be in
a position to begin to displace these entrenched monopolies. The payoff
comes on the day when system administrators are fired because the
computers are simple enough for even the boss to configure. ;) The
payoff comes when all the hours spent maintaining a windows or linux
installation and doing day-to-day chores can be put into pushing the
frontiers of the art. While all this liberated effort won't be going
into AI directly, it will be put into software that AI researchers will
use in their daily work and thereby form the foundation on which AI will
be built.
It is apparent to me that AI is, and has been for some time, strictly a
software problem. The time it will take to solve this software problem
will depend on how much overhead and complexity the AI researcher has to
deal wtith _BEFORE_ beginning his work.
WE CAN MOVE THE SINGULARITY FORWARD BY YEARS JUST BY FIXING THE PROBLEMS
WITH TODAY'S SOFTWARE.
om
In conclusion, I am about to go against my reservations and fears and
plunge head-long into a virtual world project because I beleive, by this
convoluted logic, that it is vital to advancing the development of AI.
Bottom line: I need $5,000,000 to start, and another $10,000,000 to go
on-line.
-------
To unsubscribe, change your address, or temporarily deactivate your
subscription,
please go to http://v2.listbox.com/member/?[EMAIL PROTECTED]
-------
To unsubscribe, change your address, or temporarily deactivate your subscription,
please go to http://v2.listbox.com/member/?[EMAIL PROTECTED]
BEGIN:VCARD
VERSION:2.1
N:Miller;Gary;A.
FN:Gary A. Miller ([EMAIL PROTECTED]) ([EMAIL PROTECTED])
ORG:New Millennium Consulting
TITLE:Principal Consultant
TEL;WORK;VOICE:(440) 942-9264
TEL;HOME;VOICE:(440) 942-9264
ADR;WORK:;;7222 Hodgson Rd.;Mentor;OH;44060;United States of America
LABEL;WORK;ENCODING=QUOTED-PRINTABLE:7222 Hodgson Rd.=0D=0AMentor, OH 44060=0D=0AUnited States of America
EMAIL;PREF;INTERNET:[EMAIL PROTECTED]
REV:20021108T231940Z
END:VCARD