the seminar topics I just posted remind me of a subject
I've been meaning to write on for a long time and which
has been grinding in my neurons recently quite a bit.
AI philosphical musings are better left for comp.ai,
and they have a horrible tendency to draw crackpots
(see list archives). however, it is a world class
topic worthy of the greatest attention by the
worlds foremost intellects. as I have written, I think
the best role for it here is in discussion of
possible algorithms for AI.
the problem with a lot of AI imho in this regard
is that it works with supervised algorithms. it says,
if you want to do A, and you have a detector for A,
then you can get an algorithm to slowly converge to A.
but this is really just the classic homunculus problem
all over again in software. how did you get A? to me
the answer "instinct" is not a fully satisfactory answer.
so I believe that true intelligence must be based on an
unsupervised algorithm.
here is my speculation on this subject, that actually
is *testable* and *falsifiable*. specific algorithms are
proposed.
--
the theory: intelligence consists of two basic aspects
that work in dynamic tension between themselves, the entity,
and the environment. (A) a novelty detector,
and (B) a regulator of physical actions to maximize novelty.
for (A), the novelty detector, consider that all the sensory data into an
intelligent entity is encoded as sense patterns. a novelty
detector is simply a device that attempts to record
all past sensory data, but via an optimized
compression algorithm. by determining what to keep
and throw out, it also functions as a detector. i.e. when
it "decides" to store new patterns, it is encountering novelty.
in this way novelty can be mathematically/algorithmically defined
as the difference between new stimulii and old stimulii, with
respect to the maximal structuring/organizing of it possible.
it determines whether to store or discard patterns based
on finding "higher levels" of information. imagine a recursive
compression algorithm, one in which one can do a 1st pass
of compression on the data, but because the data is so
structured, 2nd and 3rd passes also yield further compressions.
novel data is that which does not "fit" into prior determined
compression frameworks.
part of my speculation is that human language for example has some
kind of recursive order in this sense, and that the recursive
algorithm for its encoding is yet to be discovered.
I think the LSI/LSA techniques being explored are closest of all
potential algorithms. I believe it will be the basis for understanding
language by machines. the discovery of the algorithm would be /will be?
a world class breakthrough.
the above posits a sort of fractal structure of language. however
I believe this same fractal structure will generalize. for example
the same algorithm could be applied to organize visual stimulii or other
types (touch). "identification of recursive fractal structure".
--
for (B) the behavior regulator/controller,
consider in robotics the idea of a dynamic controller.
we have an input variable X, and an output variable Y that we
can control. Y has some effect on X, but possibly the relationship
is quite nonlinear. a PID is the name for a simple controller
that accomplishes this when the output and input relationship
is not too complicated (2nd order, iirc). "partial integrator/
differentiator"..? its used for stepper motors.
a good example of a very complex relationship would be a balance
mechanism on a biped robot with multiple limbs. in this case
we would have many output variable X,Y,Z, ... that control the
limb positions. and imagine a single input variable A that tells
how much the robot is "in balance" (say near 0) or "out of balance"
(say far from 0). or it would be A1,A2 that measure inclination
in the two dimensions.
now a very sophisticated algorithm could determine the dynamic,
nonlinear, feedback relationship between
outputs on X,Y,Z and A1,A2 "on its own".
the algorithm is simply programmed as initial conditions
to keep A1,A2 as near to zero as possible doing whatever
is necessary on X,Y,Z. it is conceivable
very sophisticated variations of this algorithm could actually
get the robot to stand up from a reclined position. (a third
variable would tend to be necessary which measures its total
upright position; when full, nearer to zero).
the algorithm would require some history/memory of A1,A2,A3
rather than just the instantaneous
values. but a very good algorithm would simply determine on its
own the minimum history required to accomplish the control.
yes I do believe such an algorithm is possible, can be invented,
and *will*be* in the near future. so far it has not.
such an algorithm is basically unsupervised!! yet it could learn
to balance. it would be a small miracle to witness this in
action. but surely in the next few years, this will be the
basis of much robotics research.
a key point: the algorithm does not need to have *any*knowledge*
of the shape or physical properties
of the robot-- whether X,Y are leg motors, or arm
motors. it doesnt even need knowledge of the basic
*laws of physics*. it doesn't matter!! the algorithm does its own
"experiments" to determine that relationship. this reminds me
of a very cosmic quote I just read in stroustrups y2k c++
manual yesterday, "the reason that algorithms and data work so
well together is that neither knows anything about the other."
yes, such an incredible algorithm does exist!! I am sure of it!!
--
so!! what I am referring to is not really a balancing algorithm, that
is only one nice/useful application & very useful to demonstrate its
seemingly almost magical properties. it is more like a
"general dynamic control algorithm". let us call it
Algorithm X, or "gdca". I am suggesting that much future research in
robotics and eventually AI will focus on variations of Algorithm X and how
to find a very optimized/ideal version of it. obviously some of
its characteristics:
- fast convergence. it doesnt waste a lot of time trying to
find a solution.
- it decides how much memory is necessary on its own rather than
some outside entity fiddling the knobs and figuring it out. the
algorithm *is* the knob fiddler.
- minimal resources. it doesnt use more memory for past configurations
than is necessary. it slowly builds up an internal model, but the model is
not more complicated than it needs to be.
- it has parallels to scientific experiments. in a sense it does its
own controlled scientific experiments, the fewest necessary to achieve
its goal.
another wild conjecture: the above system is actually what the
cerebellum does in the mammal. (it is recognized as the basic
motor neuron output area).
--
here's the punchline. combine the novelty detector with the algorithm
X. algorithm X is hooked up to the outputs on a physical machine
that allow it to move about its environment or otherwise interact
with the environment (such as limbs, grippers etcetera). the inputs
to the novelty detector are encoded senses such as sight, touch, sound,
etcetera. the *inputs* on the X regulator is the amount
of novelty detected at a given instant. next,
the regulator/contoller X is simply programmed to *maximize novelty*.
its all a big loop!!
environment-->senses-->mapper-->controller-->--limbs-->--environment-->
my conjecture is that the better/more sophisticated
the novelty detector, and the better
the regulator, the more this system approaches the essence of
intelligence. I believe the entity will explore and interact with
the environment in intelligent ways. why? the entity "avoids boredom"
because it has minimal novelty. hence, the essence of intelligence is
novelty seeking behavior!! and all this can be implemented via two
basic systems, the novelty detector, and the novelty maximizer.
hence this is an interesting way of defining intelligence in the
sense that it is a relationship between an entity and its environment.
the entity "learns" via the regulator how to find novelty in its
environment, and continually seeks it out. if both the detector
and the regulator are extremely sophisticated, it finds "higher and higher
levels of novelty". the novelty detector builds up a view of the
"landscape", and the controller builds up a more sophisticated
model of how to traverse the novelty landscape.
next conjecture: there is a certain level of novelty manipulation
that involves creating a model of the system itself. in other words,
self-awareness. the entity builds up increasingly sophisticated
"concepts" of how its own actions influence the environment and
vice versa. such as a "self concept" in which models itself in
its own algorithms. the higher levels of this involve speech
and interacting with other intelligent entities. the speech eventually
evolves into manipulating concepts like "you" and "I".
there you have it!
science fiction? we will see over the next few decades.
some of these ideas can be found in this 1997 essay, but the above
is better fleshed out & brings out the idea of the novelty detector
much better.
http://www8.pair.com/mnajtiv/ai/cer