Pode unha máquina computacional ser libre? (I): Que é unha máquina computacional?

[Esta é unha tradución autorizada da primeira parte do artigo orixinal de 10 de xaneiro de 2018 ¿Puede ser libre una máquina computacional?, de Gonzalo Génova, publicada en Naukas e reeditada en tres partes no seu blog persoal, De máquinas e intenciones.]

Robot

En xeral, enténdese que un robot é un trebello mecánico que está controlado por un programa de ordenador ou por un conxunto de programas. O aspecto físico é secundario: o robot pode asemellarse a un ser humano (adóitase falar de androide masculino ou xinoide feminina), pero tamén pode ser simplemente un brazo mecánico ou un electrodoméstico de cociña (por exemplo, unha máquina programable para facer pan da casa); mesmo pode ser un robot «virtual» que habita na Rede. Tamén é secundario o feito de que o robot estea feito de materiais inorgánicos, materiais orgánicos ou unha mestura de ambos. O esencial é que un robot está controlado por un programa executado nun ordenador, é dicir, o robot é unha máquina algorítmica ou computacional. Diferénciase doutras máquinas (como un motor de combustión interna, un telescopio ou unha vella radio de transistores) en que o seu funcionamento está codificado nun programa que é relativamente doado de cambiar, sobre todo se o comparamos con aquelas máquinas cuxo funcionamento é invariable.

E que é un programa? Un programa, ou mellor, un algoritmo, é en poucas palabras un procedemento «mecánico» (é dicir, baseado en regras obedecidas cegamente) que obtén un determinado resultado nun número finito de pasos. É coma unha receita de cociña na cal todos os pasos están perfectamente detallados e non se deixa nada á interpretación do cociñeiro. Se ben os científicos da computación aínda non acadaron un consenso universal verbo da definición de algoritmo, si se admite que un elemento esencial da definición é que todo algoritmo debe ter un obxectivo ben definido.1 Un programa non se limita a facer cousas, senón que as fai cun determinado propósito.

Igual ca calquera outra máquina, un robot (que é unha máquina computacional) defínese principalmente polo seu propósito, isto é, a tarefa que debe cumprir e para a cal foi deseñado. En realidade, raramente unha máquina computacional ten un único propósito: máis ben, o habitual é que teña varias tarefas que cumprir. Por exemplo, un sistema domótico pode encargarse de controlar a temperatura, humidade e iluminación dunha vivenda, así como alertar de posibles situacións de emerxencia (intrusións, lume, etc.). Pero todas estas tarefas poden agruparse baixo un único propósito global: manter o confort e a seguridade dos ocupantes da vivenda.

A esencia do robot e de calquera outra máquina é, polo tanto, obedecer o seu propósito, o fin co que foi deseñado. Máis aínda: coñecer o propósito dun robot é o que permite dicir se funciona ben ou mal; se non sei para que foi deseñado, non podo sometelo a un control de calidade. E trátase dun propósito que o robot non se deu a si mesmo, senón que llo impuxeron desde fóra. Un robot algorítmico non pode cuestionarse a súa finalidade, porque deixaría de ser un robot, unha máquina.

Supoñamos un robot que xoga ao xadrez contra un humano co obxectivo de ganar a partida. Os programas de xadrez que se atopan hoxe en día en calquera ordenador doméstico derrotan con facilidade a meirande parte dos xogadores humanos. Un xogador artificial de xadrez un pouco diferente podería limitar a súa propia efectividade co fin de configurar diferentes niveis de dificultade, de xeito que o xogador humano siga gozando o xogo e non tire a toalla demasiado pronto. Estes dous programas de xadrez teñen dous obxectivos bastante distintos: ganar o xogo ou facer que o xogador humano xogue cada vez mellor e goce o proceso de aprendizaxe. En ambos os casos o robot ten un propósito predeterminado que o define. O que non esperamos dun robot do primeiro tipo, deseñado para ganar, é que decida perder… Pode non acadar o seu obxectivo, pero non pode cambialo. En certo modo, o robot é un escravo intelixente da súa finalidade.

Por suposto, pode haber diferentes niveis de selección de obxectivos. Existen algoritmos que poden cambiar e priorizar os seus obxectivos dinamicamente, é dicir, son quen a realizar algún tipo de metarrazoamento con relación aos obxectivos que teñen de acadar. Porén, eses algoritmos de selección dinámica de obxectivos non se autoanalizan nin propiamente se autorreprograman: o único que fan é obedecer obxectivos de orde superior para seleccionar os subobxectivos axeitados. Non poden deixar de comportarse como algoritmos de selección de obxectivos. Seguen a ser escravos intelixentes…

O mesmo Alan Turing recoñecía que esta falla de liberdade é esencial para definir unha máquina computacional ou máquina algorítmica: «Un home provisto de papel, lapis e goma de borrar e suxeito a unha disciplina estrita é, en efecto, unha máquina universal»,2 isto é, unha máquina computacional, un robot. Nótese que sucedeu exactamente deste xeito na organización interna dos grupos de traballo de Bletchley Park establecidos por Turing para descifrar os códigos alemáns durante a Segunda Guerra Mundial.3 Estar «suxeito a unha disciplina estrita» significa non cuestionar en absoluto as regras e propósitos do cálculo ou computación que se está a levar a cabo.

No vindeiro artigo seguirei tentando clarificar o concepto de liberdade.


Sobre o autor: Gonzalo Génova Fuster é profesor do departamento de Informática da Universidade Carlos III de Madrid (Universidad Carlos III de Madrid), principalmente das asignaturas de Enxeñaría do Software e Ética para Enxeñeiros, e autor do blog De máquinas e intenciones.


1. Hill, R. K.: «What an Algorithm Is», Philos. Tech., 2016, 29(1), 35–59.

2. Turing, A. M.: «Intelligent Machinery», 1948. En Meltzer, B. D.; Michie, D. (eds.): Machine Intelligence, vol. 5. Edimburgo: Edinburgh University Press, 1969.

3. Hinsley, F. H.; Stripp, A. (eds.): Codebreakers: The Inside Story of Bletchley Park. Oxford: Oxford University Press, 1993.

Advertisements

2 thoughts on “Pode unha máquina computacional ser libre? (I): Que é unha máquina computacional?

  1. Gonzalo Génova 24 de Maio de 2019 / 5:01 pm

    Muchas gracias, Saúl, por querer traducir y difundir mi trabajo, espero que les guste a tus lectores.

    Un saludo,
    Gonzalo

    Liked by 1 person

Deixar unha resposta

introduce os teu datos ou preme nunha das iconas:

Logotipo de WordPress.com

Estás a comentar desde a túa conta de WordPress.com. Sair /  Cambiar )

Google photo

Estás a comentar desde a túa conta de Google. Sair /  Cambiar )

Twitter picture

Estás a comentar desde a túa conta de Twitter. Sair /  Cambiar )

Facebook photo

Estás a comentar desde a túa conta de Facebook. Sair /  Cambiar )

Conectando a %s