I've been asking myself the following question over and over again: can one write an algorithm (a series of steps for solving a problem) for something that came about through a process that is at least partially foreign to human understanding? Some claim that it is possible to write an algorithm(s) that could, in principle, emulate natural phenomena such as evolution and consciousness, amongst other very abstract concepts. But human beings have neither built evolution nor consciousness. So what would make someone think that it is possible to write an algorithm capable of efficiently reproducing situations and abstractions such as evolution and consciousness? How could one specify the steps of an unknown procedure?
closed as not constructive by Joseph Weissman♦ Sep 24 '11 at 14:43
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.
An algorithm is a specification (particularly of operations to take on a machine). As a specification, it is an encoding of many possible things but none of them particularly algorithm specific. It can be an encoding of what you imagine, an encoding of some behavior viewed empirically, an encoding of some desired end.
The qualifier 'foreign to human understanding' is something orthogonal to the construction of an algorithm. One can create a random algorithm (or any kind of mathematical encoding) and it might be inscrutable (there are theories that attempt to quantify this inscrutability). This line of thought leads towards algorithmic information theory.
As to scientific phenomena evolution or consciousness, I think that's a matter of scientific exploration. There is an attempt to determine the knowledge exactly (through experimentation) where if it is a process one could presumably specify a Turing machine. But some phenomena have been found to be inherently non-deterministic (quantum mechanical processes). Of course one can always attempt to model such phenomena mathematcally (and here in particular much work has been done in quantum Turing Machines and quantum complexity.
But simply, if you don't know something about your process, you really can't specify it. That is a specification really is a form of encoding of knowledge. So if there are unknowable things, then they can't be specified (by definition). One might be able to encode something -about- that lack of knowledge (like in say a probability distribution or non-deterministic rules).
I suggest you take a look at Stephen Wolfram's book A New Kind of Science, which demonstrates (quite rigorously) that some very complex and unpredictable behaviors can be generated by some very simple algorithms.
In other words, whereas it is difficult to specify the steps of an unknown procedure, it is quite easy to specify a procedure that will give unknown (and surprising) results.
That being said, I have to say that the suppositions implied by the question confuse me; for example, humans have definitely been able to create mathematical models for explaining the movement of the planets, even though we did not create the planets, and their movement was (at first) foreign to human understanding.