Je suis d'accord avec ca, mais ce qui compte apres tout c'est pas que le programeur est pu executer du code correct ou conforme a ses esperances, mais le resultat du code . Ce resultat peut etre conforme soit a une resultante logique redondante connu par le programeur, ou une resultatante logique inconnue, c'est le cas de modelisations informatique par exemple.On ne sort jamais de toute manière de ce qu'a conçu le programmateur. Le programmateur à aussi programmer que si "x n'arrive pas, alors". Voila tout. le programme ne fait pas preuve de quoi que ce soit d'autre que la conformité à son programme.
Dans le cas de taches mecaniques redondantes , un code d'intelligence faible suffit , c'est le cas des robots dans l'industrie automobiles, qui repetent indefiniment un calcul, et le restituent sous forme de mouvements maitrisés par un programeur, puis un regleur qui pourra ajuster des parametres defini par un cahier des charges . Cela permet d'optimiser des production ou liberer certain ouvriers de taches peinibles et redondantes, et le robot executera toujours des frequences de code variables mais repetées dans des boucles conditionnelles maitrisé totalement effectivement.
Mais dans le cas de modelisation (simulateur) ou d'optimisation (algorytme genetiques) , cela est tres different , car le programeur emploit des equations intelligentes moins discretes , puisqu'il introduit dans les calculs , les parametres physiques qu'il connait, ca peut etre n'importe quoi qui obeit au lois de la physique, un calcul de pression, de trajectoire, de temperature, de gravité etc ... Il utilisera les memes couche algorytmique de faible intelligence, comme les boucles conditionelles, mais n' aura aucune idée de la valeur resultante du calcul physique, puisqu'il introduira des parametres si complexes, qu'il lui faudrait parfois 1 million d'année pour les resoudrent avec une feuille et un crayon , et en admettant qu'il fasse pas d'erreur .
LA puissance de calcul des ordinateurs pouvant se coupler entre elles, ou augmenter leur capacités avec la maitrise des nanotechnologies, plus on tentera de modiliser le reel , ou optimiser un processus , moins on aura de chance de parier juste sur le resulat instinctivement.
Pour ce qui est des algorithmes genetiques, la resultante est la plupart du temps ce que nous pouvons observer dans la nature . C'est le cas de l'equilibre sur deux appuis qui est optimiser chez l'homme comme chez un robot qui calcule son centre de gravité pour se deplacer d'un point A a un point B . Sa demarche ressemblera à celle de l'homme , comme sa demarche resemblerait a celle d'une araigné si il etait pouvu au depart de 6 appuis, c'est logique , et devrait meme pas nous etonner. Pour ce qui est des algos genetiques c'est donc un peu different donc, car cela a l'inconvenient d'une maitrise du code generé par le robot qui n'est pas réelement maitrisé par le programeur mais dont le resultat attendu est souvent conforme au lois physique qu'il connait (pour ne pas chuter le robot doit s'adpter a la variabilité de son centre de gravité par exemple avec des variable plus ou moins complexes comme le relief ou l'inclinaison du sol)
MAis pour ce qui est de certain algorithmes qui ajoutent de la complexité a chaque condition, ou à chaque boucle nous sommes parfois dans une incertitude tres forte, sans ca il n'y aurait d'ailleur aucune utilité de construire des supercalculateurs. Deep bleue est biensur une machine et un algorithme, mais nous devrions le consideré plus que comme un simple objet innerte, car a mon avis il est representatif d'une forme d'intelligence digne de ce nom.
-----