• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

Robot consciousness

What is feasible? Anyway, point taken.

However, what I'm interested in is the question of whether the algorithms might be real-time-sensitive in some way that makes them behave consciously at certain speeds but not at others.

~~ Paul


On the linked paper's assumption that consciousness is integrated information, integrating data sampled, very slowly, by very slow algorithms from a much more dynamic environment will be a mess -- something like Picasso on heroin scored by Schoenberg on acid, I suspect -- with facets of 'objects' and sources changing before they can be patterned and distinguished. I think there will be consciousness, but it will be useless, and the robot's reactions to it incoherent (unless the robot severely reduces its experiential field and behavior, but then its consciousness wouldn't be 'human'-germane, more 'germ'). [tho' its jokes might be better...]
 
Last edited:
We're talking about a robot that has something equivalent to a brain which runs software that produces consciousness in much the same way that the human brain does.

Oh, I see we've looped. I thought we'd pretty clearly established the assumption that it was not such a system:

Yes, and that may be the crux of the matter. Our brain has a clock rate, too, but it is determined by chemistry. Perhaps consciousness arises only within a narrow range of clock rates, due to requirements for ensembles of neurons to form. In order to obtain similar behavior from a programmed consciousness, we might have to emulate the chemical clock and possibly other chemical components.

Even if a CPU doesn't have a central clock, it does have a (possibly variable) running speed. Is that relevant to the robot's consciousness? If not, then is the robot conscious even when the CPU is not running?

If we've entered an infinite loop, I'm done.
 
What is feasible?

What if it took a million years to process a conscious event? :)

However, what I'm interested in is the question of whether the algorithms might be real-time-sensitive in some way that makes them behave consciously at certain speeds but not at others.

Ok, then I think you've entered the realm of unclocked non-interlocking devices. Conventional computers are Turing equivalent, and have no clock-speed-dependent behaviour (outside of error conditions). IIUC quantum computers too are clock-speed independent, provided the quantum state doesn't decay prematurely (again that'd be an error condition). Computers with unclocked circuits have interlocking signals to ensure they separate components remain synchronous -- but run at whatever speed the individual gates change state at.

I suspect the brain has features of an unclocked non-interlocked device.
 
Piggy said:
Well, we're even, b/c I can't fathom how you can possibly imagine that working out your program by hand without running it on the hardware will be tantamount to running it on the hardware.
I said that we should be able to offload the computation, unless perhaps the algorithms are dependent on real time. The inputs still have to come from the robot's senses and the outputs go to his motor servos.

By comparison, let's say I'm writing software that will, when running on my client's system (and I mean business client) allow field agents to remotely complete or update inspection reports.

And let's suppose that I'm developing a particular module for that software.

I can work it all out on paper and check it and recheck it and make sure it's kosher.

But it doesn't do what it's designed to do until and unless I actually compile it and run it on the system that it's designed to run on.
I'm not talking about checking the software. I'm talking about hand simulating it line for line with pencil and paper. You would compute the same results on paper as the computer would compute.

You can work it all out on paper til you die, but it's not going to produce consciousness unless it's running in the robot brain.
When you say "work it all out," do you mean "simulate the execution of the computer"? Because if you do, then I do not understand why you think it won't produce consciousness.


I took that to mean "Is the system conscious at any bandwidth at all?"

You could also take it to mean "Is the system conscious at any given (i.e. every possible) bandwidth?"

It is stipulated that the system is conscious when the software is running in the robot brain, so the former reading is indeed stipulated.

It's the latter interpretation which is at issue.
Sorry, I don't understand.

~~ Paul
 
nathan said:
If we've entered an infinite loop, I'm done.
There shall be no escaping an infinite loop. :D

What if it took a million years to process a conscious event?
That would be somewhat impractical.

Ok, then I think you've entered the realm of unclocked non-interlocking devices. Conventional computers are Turing equivalent, and have no clock-speed-dependent behaviour (outside of error conditions).
The CPU by itself has no clock-speed-dependent behavior, but with real-time clocks it could be programmed to exhibit such behavior.

I believe you are correct about our infinite loop.

~~ Paul
 
Last edited:
Oh, I see we've looped. I thought we'd pretty clearly established the assumption that it was not such a system:



If we've entered an infinite loop, I'm done.

We haven't looped, it's just that we never left that point.

So you've got this robot that runs software on its hardware which produces consciousness in much the same way that a human mind does.

Regarding the issue of whether this software would produce consciousness if it were carried out by hand, I have to ask if you know of any other software that does what it's designed to do when it's worked out by hand rather than run on the hardware it's designed to run on.

If we're asking simply how slow the processing can occur before consciousness is lost, then we're asking a meaningless question unless we know some specifics about the system.
 
I said that we should be able to offload the computation, unless perhaps the algorithms are dependent on real time. The inputs still have to come from the robot's senses and the outputs go to his motor servos.

When is this happening?

Is this a one-time event -- everything dumped onto the staff then their outputs dumped back to the robot? Or are the inputs and outputs bouncing back and forth continually between the robot and the human staff?
 
I'm not talking about checking the software. I'm talking about hand simulating it line for line with pencil and paper. You would compute the same results on paper as the computer would compute.

So what?

I can simulate the remote invoicing program line for line with pencil and paper and compute the results. But that doesn't cause the software to work.
 
When you say "work it all out," do you mean "simulate the execution of the computer"? Because if you do, then I do not understand why you think it won't produce consciousness.

I'll put the same question to you as I did to nathan: Can you give me an example of a program that will do what it's supposed to do on the hardware if you merely do the calculations by hand? And I mean a similar class of software, not, say, a program that adds numbers for a sum.
 
Maybe consciousness itself is an infinite loop :)

The definition certainly is:

Consciousness: The state of being awake and aware of one's surroundings.
Awake: regain consciousness.
Aware: having perception of ones surroundings.
Perception: the ability to become aware of something through the senses.
Sense: a faculty by which the body perceives an external stimulus.
Perceive: become aware or conscious of something.
Conscious: aware and responding to ones surroundings; awake.

I think the implementation is going to need to use recursion.
 
So what?

I can simulate the remote invoicing program line for line with pencil and paper and compute the results. But that doesn't cause the software to work.
How about if you picked some software that didn't have to communicate with any systems external to the host running it? HelloWorld.c for example, or maybe GuessTheNumber.c?
 
I'll put the same question to you as I did to nathan: Can you give me an example of a program that will do what it's supposed to do on the hardware if you merely do the calculations by hand? And I mean a similar class of software, not, say, a program that adds numbers for a sum.
Why the restriction?
 
Why the restriction?

Because those kinds of programs actually simulate pen and paper calculations. If we're talking about complex software capable of creating consciousness a la the brain, that's a different ball of wax.
 
How about if you picked some software that didn't have to communicate with any systems external to the host running it? HelloWorld.c for example, or maybe GuessTheNumber.c?

So you're saying you could get "Hello World" to appear on a screen by using pen and paper rather than compiling and running the program?
 
So you're saying you could get "Hello World" to appear on a screen by using pen and paper rather than compiling and running the program?
Is the screen important? Are electrons important? I could have one pad of paper for the state of the machine and another for the output. Every time I refresh the screen I tear off the top piece of paper. We're probably talking about quite a bit of paper in order to get Linux up and running (text mode only in, until I get a bigger pad of paper and some crayons).
 
Piggy said:
When is this happening?

Is this a one-time event -- everything dumped onto the staff then their outputs dumped back to the robot? Or are the inputs and outputs bouncing back and forth continually between the robot and the human staff?
Let's assume it's continuous. All I'm trying to do is slow down the computation significantly and then ponder whether consciousness would remain or disappear.

I can simulate the remote invoicing program line for line with pencil and paper and compute the results. But that doesn't cause the software to work.
The software wouldn't "work" because you would be offloading the computation to pencil and paper. But why wouldn't the invoicing process still work fine?

I'll put the same question to you as I did to nathan: Can you give me an example of a program that will do what it's supposed to do on the hardware if you merely do the calculations by hand? And I mean a similar class of software, not, say, a program that adds numbers for a sum.
An accounting system. A word processing system. Just about anything, as long as the inputs and outputs come from/end up in the same place.

Because those kinds of programs actually simulate pen and paper calculations. If we're talking about complex software capable of creating consciousness a la the brain, that's a different ball of wax.
Why?

So you're saying you could get "Hello World" to appear on a screen by using pen and paper rather than compiling and running the program?
As long as the inputs/outputs were the same, yes.

~~ Paul
 
Could we hook up an old Morse code machine so that the human computer could communicate with the outside world? That way we could get the invoice processing system working again.
 
Regarding the issue of whether this software would produce consciousness if it were carried out by hand, I have to ask if you know of any other software that does what it's designed to do when it's worked out by hand rather than run on the hardware it's designed to run on.
Any known software in the world.

Here's some real C++ code.
Code:
   int x = 3;
   int y = x + 1;
What is the value of y? (if you don't know C, the "int" just says create an integer variable, so "int x = 3" means create an integer, call it x, and assign it the value 3.)

I don't need to compile this to get that y equals 4. I ran it in my brain, a completely acceptable substrate for this algorithm. A slightly more complex example I could just do on paper. If I was infallible and had enough time to kill , I could do any computer program in existence.

Algorithms are independent of the computing platform. That's the whole point of Turing machines - any of a class of machines that are functionally equivalent are, well, equivalent. And the human brain can compute the results of a Turing machine. It doesn't matter if the execution is done with paper and pencil, punched tape (the canonical Turing machine form), a MIMD machine, an abacus, a hand calculator, a 386 processor, a 486 processor, a MIPS processor, a Cray machine, neurons extracted from a crayfish and rewired into a Turing machine, etc. The end result, y=4, will be the same.

As to Paul, I didn't notice that you stipulate that inputs are similarly slowed down, though I think it is assumed. If so, computational theory tells us algorithms are independent of processing speed. If inputs are still real time, it is perhaps dubious that consciousness would result, since only a tiny fraction of the available real time data stream could ever be processed. But that depends on a lot of assumptions about the characteristics of the underlying algorithm.

edit: piggy, to make this clear, I could compile that real C code into 8086 assembly, convert that into fortran, the fortran into cobol, the cobol into Forth, the Forth into Lisp, the Lisp in Algol, the Algol into Visual Basic, the Visual Basic into APL, and then turn the APL into a game of Life representation (which can be made into a Turing machine), and then simulate the game of Life using paper and pencil, and I'd still get "4". Or I could stop anywhere along the way, and either compute the result with pen and paper, or compile the code and run it, and I'd get "4". All versions are computationally equivelent.
 
Last edited:

Back
Top Bottom