Capítulo Pensamiento Computacional

Transcripción

Capítulo Pensamiento Computacional
DR
AF
T
Pensamiento Computacional
Tulum fue una ciudad amurallada de la cultura maya ubicada al sureste de México, se considera que fue
un importante centro de culto para el llamado “dios descendente”. La construcción frente al mar conocida
como el “Castillo”cumplı́a en el pasado con la función de faro para los navegantes mayas al permitirles
evadir el arrecife de coral. En la actualidad es uno de los principales atractivos turı́sticos de la Riviera
Maya (http://es.wikipedia.org/wiki/Tulum).
palabra palabra
Autor: Jorge Luis Zapotecatl López
Correo electrónico: [email protected]
Url: www.pensamientocomputacional.org
2
DR
AF
T
c
D.R. 2014
por Insituto Nacional de Astrofı́sica, Óptica y Electrónica
Luis Enrique Erro 1, Tonantzintla, Puebla, México
C.P. 72840
Teléfono: (222) 247.29.40
Contacto: [email protected]
Índice general
Índice general
3
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
del
. .
. .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
PC .
. . .
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
DR
AF
T
1. Pensamiento computacional
1.1. Introducción . . . . . . . . . . . . . .
1.2. Componentes del PC . . . . . . . . .
1.2.1. El PC en la sociedad . . . . .
1.2.2. ¿Quién usa el PC? . . . . . .
1.3. Definición operativa del PC . . . . .
1.3.1. Vocabulario del PC . . . . . .
1.4. El PC en el aula . . . . . . . . . . .
1.4.1. Actividades sin computadora
1.4.2. Actividades con computadora
1.5. Problemas . . . . . . . . . . . . . . .
1.5.1. Problema desde la perspectiva
1.5.2. ¿Cuál es la solución? . . . . .
1.6. Aplicando el PC . . . . . . . . . . . .
Bibliografı́a
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
8
9
11
12
13
15
15
16
19
21
23
24
27
3
DR
AF
T
palabra
Capı́tulo 1
Pensamiento computacional
1.1.
DR
AF
T
“El hombre se descubre cuando se mide con un obstáculo”
-Antoine de Saint-Exupéry
Introducción
En la sociedad hace relativamente poco tiempo las computadoras de escritorio se volvieron una herramienta esencial para las actividades diarias de
cada persona (en los años 90 el poder de las computadoras personales aumentó de manera radical). En suma, el desarrollo tecnológico ha permitido
que actualmente un dispositivo móvil tenga la velocidad y poder de procesamiento de una computadora de escritorio. En consecuencia, actualmente
vivimos la era de la computación ubicua porque los dispositivos móviles son
utilizados y puestos a disposición de cualquier persona.
Únicamente las personas más visionarias imaginaron la influencia que la
computación tendrı́a en la sociedad. Por ejemplo, el impacto que tendrı́a la
World Wide Web (WWW). En los primero años las páginas web eran simples y estáticas, similares a folletos. Sin embargo, actualmente la Web es una
herramienta imprescindible en el mundo para compartir los recursos multimedia; la comunicación y la publicación; el aprendizaje y la colaboración; el
comercio y la socialización; entre otros.
El software y hardware que compone los sistemas y herramientas tecnológicas que actualmente contribuyen en prácticamente todas las áreas de
estudio y el quehacer humano son creados por las personas que comprenden
los conceptos subyacentes de las ciencias de la computación. En la actualidad,
5
6
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
DR
AF
T
la capacidad de innovación e imaginación de los “pensadores de la computación”han llevado a la decodificación del genoma humano, al desarrollo de
sistemas de información acerca de condiciones climáticas peligrosas y a la
traducción de lenguajes antiguos.
Las personas entusiastas y emprendedoras que comprenden los conceptos
de la computación están creando nuevas tecnologı́as y servicios. Por ejemplo,
Mark Zuckerberg con Facebook o Elena Silenok creadora de Clothia. Vivimos
en una era donde el potencial de la computación para innovar y ser creativo
es ilimitado, una era donde puedes imaginar una idea, desarrollarla y por
medio de Internet ponerla a disposición mundial.
Figura 1.1: -Paat-El mexicano Héctor Garcı́a Molina es un “pensador de la computación”, durante su
carrera profesional ha estado involucrado en lo más avanzado de la investigación cientı́fica y tecnologı́a en
el mundo. Fue director del Departamento de Ciencias de la Computación de la Universidad de Stanford
donde estuvo a cargo de la coordinación y asesoramiento del proyecto de los estudiantes de posgrado
Larry Page y Sergey Brin sobre un motor de búsqueda denominado “BackRub”. A partir de este proyecto
nacerı́a la compañı́a que actualmente se conoce como Google.
La National Science Foundation (NSF) por medio del International Society for Technology in Education (ISTE) y el Computer Science Teacher Association (CSTA) esta impulsando activamente un nuevo enfoque de enseñanza en todos los niveles de educación que incluyan el Pensamiento Computacional (Computational Thinking). La investigadora Jeannette Wing define al Pensamiento Computacional (PC) como los procesos de pensamiento
implicados en la formulación de problemas y representación de sus soluciones, de manera que dichas soluciones puedan ser efectivamente ejecutadas
por un agente de procesamiento de información (humano, computadora o
1.1. INTRODUCCIÓN
7
DR
AF
T
combinaciones de humanos y computadoras). Jeannette Wing es la principal
promotora del pensamiento computacional y su visión es que el pensamiento
computacional, al igual que el español o la aritmética “será una habilidad y
una actitud de aplicación universal para todas las personas”(ver figura 1.2).
Figura 1.2: Jeannette Wing propone que las habilidades de abstracción y las técnicas de resolución de
problemas utilizados por los cientı́ficos e ingenieros de la computación pueden ser enseñadas y aplicadas
en otras disciplinas o actividades de la vida cotidiana.
El objetivo del Pensamiento Computacional es desarrollar sistemáticamente las habilidades de pensamiento crı́tico y resolución
de problemas con base en los conceptos de la computación. En suma, potenciar el aprovechamiento del poder de cálculo que tienen
las computadoras actualmente.
Los estudiantes y profesionistas tendrán la necesidad de aprender y practicar las habilidades del PC para poder utilizar las nuevas
tecnologı́as y confrontar los desafı́os del Siglo XXI. El exvicepresidente del Banco Mundial Jean-Francois Rischard incluye el calentamiento global, la biodiversidad, la pobreza y las enfermedades infecciosas,
entre los principales problemas globales. Desarrollando las habilidades del
Pensamiento Computacional en los estudiantes y profesionistas ayudará a
contribuir en la solución de dichos problemas y de otros retos en la actualidad.
8
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
1.2.
Componentes del PC
Nuestra calidad de vida depende de nuestro pensamiento porque es la
habilidad que nos permite tomar decisiones y resolver problemas. El pensamiento es parte de la naturaleza humana, sin embargo, nuestro pensamiento
usualmente es totalitario, distorsionado, parcializado, desinformado o prejuiciado. En consecuencia, el pensamiento de mala calidad propicia una mala
calidad de vida.
Para alcanzar una calidad de vida mejor se debe ejercitar el pensamiento.
Precisamente, el PC ejercita sistemáticamente las habilidades de pensamiento
crı́tico y resolución de problemas con base en los conceptos de la computación.
La fórmula que nos permite recordar e identificar los componentes del PC es
la siguiente:
DR
AF
T
pensamiento computacional = pensamiento crı́tico + poder de la computación
El primer componente del PC es el pensamiento crı́tico. La Fundación para el Pensamiento Crı́tico define al pensamiento crı́tico como: el
modo de pensar (sobre cualquier tema, contenido o problema) en el cual
el pensante mejora la calidad de su pensamiento al apoderarse de las estructuras inherentes del acto de pensar y al someterlas a estándares intelectuales. Si desea profundizar en el tema relacionado al pensamiento crı́tico
puede visitar la página web de la Fundación para el Pensamiento Crı́tico:
www.criticalthinking.org que contiene diversos recursos en español.
En el pensamiento computacional, el pensamiento crı́tico es reforzado y
desarrollado mediante los conceptos de la computación como la abstracción y
descomposición de problemas que pueden aplicarse a cualquier área del conocimiento. Cuando una persona utiliza el pensamiento computacional piensa
crı́ticamente: tiene un propósito claro; cuestiona de manera constructiva la
información, las conclusiones y los puntos de vista; se empeña en ser claro,
exacto, preciso y relevante; busca profundizar con lógica e imparcialidad.
El segundo componente del PC es el poder de la computación, por
medio de los conceptos de la computación es posible entender qué aspectos de un problema son susceptibles a resolverse aprovechando el poder de
procesamiento de las computadoras actuales.
En resumen, el Pensamiento Computacional es un enfoque para la resolución de problemas que enfatiza la integración del pensamiento crı́tico, los
conceptos de la computación y las tecnologı́as digitales. El PC realza las formas de estructurar un problema mediante los conceptos subyacentes de la
1.2. COMPONENTES DEL PC
9
computación y reenfoca la creatividad humana al permitir considerar las posibilidades de resolver problemas con ayuda del procesamiento de información
de las computadoras.
1.2.1.
El PC en la sociedad
DR
AF
T
Las personas que saben utilizar una computadora piensan que saben
computación porque conocen cómo utilizarla. Sin embargo, como analogı́a,
el saber utilizar una calculadora no significa comprender los conceptos de la
aritmética. La computadora actualmente es desaprovechada porque la gente desconoce los conceptos de la computación y no es capaz de utilizar la
computadora en formas más creativas y explotar su capacidad de apoyo como herramienta para el desarrollo del conocimiento, los usuarios utilizan la
computadora fundamentalmente para realizar trabajos de oficina y el ocio en
distintas modalidades como lo son las redes sociales, las salas de chat, entre
otras.
A diferencia de otras disciplinas del conocimiento un especialista de las
ciencias de la computación confronta problemas y propone soluciones en cualquier área del conocimiento. Las habilidades de un especialista en computación son más que ser capaz de manipular diversas aplicaciones de oficina, o
de programar una computadora. Un especialista en computación crea y hace
uso de diferentes niveles de abstracción, para entender y resolver problemas
con mayor eficacia. Jeannette Wing sostiene que la esencia del pensamiento
computacional es la abstracción y que las abstracciones para la computación
son las herramientas “mentales”y las computadoras las herramientas “metálicas”que automatizan las abstracciones.
Por ejemplo, la computación está revolucionando la estadı́stica, mediante
el aprendizaje automático se hace posible identificar patrones y anomalı́as en
enormes conjuntos de datos tan diversos como mapas astronómicos, imágenes escaneadas a partir resonancias magnéticas o compras realizadas con la
tarjeta de crédito. La computación está revolucionando la biologı́a, el descubrimiento de la secuencia del genoma humano a través del algoritmo “shotgun”ha despertado el interés en los métodos computacionales en dicha área.
En suma, la computación comienzan a influir de manera más categórica en
áreas de estudio como la medicina algorı́tmica, la arqueologı́a computacional,
finanzas computacionales, derecho informático, entre otras.
En la actualidad, vivimos la era de la información porque cada dı́a se
generan cantidades masivas de información en Internet. No obstante, gran
10
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
DR
AF
T
parte de la información contenida en Internet es repetitiva, errónea o falseada.
Por lo tanto, las destrezas contenidas en el pensamiento computacional son
vitales para el hombre moderno porque le permiten discernir qué información
es confiable y que información se debe desechar.
Como se menciono anteriormente, las computadoras en su mayorı́a no son
más que un instrumento utilizado para el trabajo de oficina, son tareas esenciales, pero no aportan un cambio revolucionario en la manera de confrontar
los problemas de nuestro siglo. Mediante el pensamiento computacional la
computadora puede explotarse de diversas maneras como un nuevo instrumento cientı́fico (como en su momento lo fue el telescopio o el microscopio).
Por lo que el pensamiento computacional beneficiará a los estudiantes, a
las instituciones en todos los niveles de educación y finalmente al desarrollo
humano, cientı́fico y tecnológico a nivel global (ver figura 1.3).
Figura 1.3: El pensamiento computacional promoverá nuevos descubrimientos en todas las disciplinas
como lo son: Biologı́a, Quı́mica, Geologı́a, Astronomı́a, Matemáticas, Ingenierı́a, Ciencias económicas,
Ciencias Sociales, Humanidades, Leyes y Arte.
1.2. COMPONENTES DEL PC
1.2.2.
11
¿Quién usa el PC?
DR
AF
T
El PC tiene como finalidad desarrollar en los estudiantes y profesionistas
el pensamiento crı́tico en coalición con los conceptos claves de la computación, tales como abstracción, algoritmos, programación, simulación, entre
otros. Con la ideologı́a de que las habilidades y los conceptos de la computación sean difundidos a nivel general, y no únicamente para los ingenieros
y especialistas en computación. Por ejemplo, un estudiante puede aprender
español o matemáticas y tener la posibilidad de ingresar a diferentes carreras profesionales, lo mismo sucede con la computación. Un estudiante puede
adquirir los conceptos de la computación e ingresar a otras profesiones como
la medicina, derecho, negocios, polı́tica, o cualquier otro tipo de ciencia o
ingenierı́a, e incluso las artes, y aplicar los conceptos de la computación (ver
figura 1.4).
Figura 1.4: Ası́ como cada persona tiene habilidades de lectura, escritura y aritmética, el pensamiento
computacional es una habilidad que puede adquirir cualquier persona independientemente de su grado de
estudio u oficio, y aplicarla en su vida personal y profesional.
Incorporar el PC a los programas de estudio no significa que los estudiantes trabajaran en el campo de las ciencias de la computación o en una
ingenierı́a en sistemas. Sin embargo, si lo hicieran, estarán mucho mejor preparados para sus cursos universitarios. Con la disminución de la matrı́cula
en ciencias de la computación y el aumento en la demanda del software, el
campo de la computación a nivel mundial tiene una alta oferta de trabajo.
12
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
Por lo tanto, las personas utilizan el pensamiento computacional cuando
leen, escriben, hablan y escuchan, al estudiar historia, ciencia, matemática,
filosofı́a y las artes ası́ como en su vida personal y profesional. Algunos ejemplos de cuando las personas aplican el pensamiento computacional se enlistan
a continuación:
El estudiante que está realizando un proyecto universitario y busca
en Internet sobre un tema, decide qué información es confiable y que
información se debe desechar.
DR
AF
T
El escritor que está escribiendo una novela y la comienza con su hipótesis principal, articula que planea argumentar, hace un bosquejo y refina
repetidamente su trabajo.
El emprendedor que realiza un estudio de mercado sobre un producto
y realiza estadı́sticas con una hoja de cálculo basado en datos del censo
de su paı́s.
El individuo que en un debate expone con claridad, profundidad y
amplitud un tema de ı́ndole cientı́fico, moral, religioso o polı́tico. Por
ejemplo, los pros y contras acerca de la legalización de las drogas o el
aborto.
El cientı́fico que desarrolla modelos y simulaciones para representar
sistemas biológicos o artificiales complejos.
1.3.
Definición operativa del PC
La ISTE y CSTA colaboraron con lı́deres de educación superior, de la
industria y de educación escolar (K-12) para desarrollar una definición operativa del Pensamiento Computacional presentada en el documento Computational Thinking leadership toolkit (Pensamiento Computacional caja de herramientas para lideres). La definición operativa se presenta a continuación.
El Pensamiento Computacional es un proceso de solución de problemas
que incluye (pero no se limita a) las siguientes caracterı́sticas:
1.3. DEFINICIÓN OPERATIVA DEL PC
13
Formular problemas de manera que permitan usar computadoras y
otras herramientas para solucionarlos
Organizar datos de manera lógica y analizarlos
Representar datos mediante abstracciones, como modelos y simulaciones
Automatizar soluciones mediante pensamiento algorı́tmico (una serie
de pasos ordenados)
Identificar, analizar e implementar posibles soluciones con el objeto de
encontrar la combinación de pasos y recursos más eficiente y efectiva
DR
AF
T
Generalizar y transferir ese proceso de solución de problemas a una
gran diversidad de estos
Dichas habilidades se apoyan y acrecientan mediante una serie de disposiciones o actitudes que son dimensiones esenciales del Pensamiento Computacional. Estas disposiciones o actitudes incluyen:
Confianza en el manejo de la complejidad
Persistencia al trabajar con problemas difı́ciles
Tolerancia a la ambigüedad
Habilidad para lidiar con problemas no estructurados
Habilidad para comunicarse y trabajar con otros para alcanzar una
meta o solución común
Dicha definición operativa suministra un marco de referencia para el PC
que tenga significado para todos los docentes en la educación escolar.
1.3.1.
Vocabulario del PC
Algunas de las habilidades del pensamiento computacional son enseñadas
en el aula de clase. Sin embargo, no se enseñan con un vocabulario uniforme
o dentro de un marco conceptual unificado. Los docentes que incluyen pensamiento crı́tico en sus proyectos pueden adoptar de inmediato el vocabulario
del Pensamiento Computacional.
14
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
En el documento Computational Thinking leadership toolkit (Pensamiento
Computacional caja de herramientas para lideres) se presenta el vocabulario
estandarizado del PC mostrado en la siguiente lista:
Recopilar datos: El proceso de reunir la información apropiada.
Analizar datos: Darle sentido a los datos, hallar o establecer patrones
y sacar conclusiones.
Representar datos: Representar y organizar los datos en gráficas,
cuadros, palabras o imágenes apropiadas.
DR
AF
T
Descomponer problemas: Dividir una tarea en partes más pequeñas
y más manejables.
Abstraer: Reducir la complejidad para definir o establecer la idea
principal.
Algoritmos y procedimientos: Serie de pasos ordenados que se siguen para resolver un problema o lograr un objetivo.
Automatización: Hacer que los computadores o las máquinas realicen
tareas tediosas o repetitivas.
Simulación: Representar o modelar un proceso. La simulación involucra también realizar experimentos usando modelos.
Paralelismo: Organizar los recursos para que simultáneamente realicen tareas con el fin de alcanzar una meta u objetivo común.
Por ejemplo, en bachillerato los estudiantes de la asignatura de Álgebra
aprenden a resolver problemas especı́ficos y después deducen fórmulas generales. Integrar el vocabulario del PC a la asignatura de Álgebra, resaltarı́a y
evidenciarı́a el termino abstraer involucrado en la deducción de fórmulas. El
estudiante utilizarı́a el término abstraer al hacer la analogı́a en su asignatura
de informática cuando, por ejemplo, una hoja de cálculo utiliza una fórmula
general en una celda para resolver casos particulares.
1.4. EL PC EN EL AULA
1.4.
15
El PC en el aula
DR
AF
T
Uno de los principales retos del PC es su introducción de manera transversal a las materias ofrecidas en todos los niveles de educación. Por ejemplo,
el pensamiento computacional aplicado desde la educación básica hasta la
educación superior en la clase de artes, inglés, fı́sica, biologı́a, matemáticas,
entre otras.
Cuando el pensamiento computacional se usa como complemento a las
asignaturas, los estudiantes empiezan a darse cuenta de la utilidad del pensamiento crı́tico y de los conceptos de la computación en el proceso de aprendizaje. En suma, cuando los docentes muestran ejemplos del pensamiento
computacional aplicado en temas de la vida diaria, los estudiantes se vuelven
conscientes de que la educación es la herramienta esencial para mejorar su
calidad de vida.
En el documento Computational Thinking Teacher Resouces se presentan nueve Computational Thinking Learning Experiences (Experiencias de
Aprendizaje del Pensamiento Computacional). Las Experiencias de Aprendizaje del Pensamiento Computacional (EAPC) son una pequeña muestra de
prototipos de actividades de enseñanza en distintos niveles de educación y
asignaturas. Las EAPC están destinadas a ilustrar actividades del PC en un
formato amigable a los maestros y resaltando los conceptos clave y el vocabulario del pensamiento computacional. Las EAPC pueden diseñarse de tal
manera que las actividades requieran o no de la utilización de una computadora.
Cabe mencionar que las EAPC presentadas en dicho documento sólo son
una guı́a de ejemplo para que cada docente diseñe sus propias experiencias
de aprendizaje utilizando el PC en sus propios planes y lecciones de estudio.
1.4.1.
Actividades sin computadora
La finalidad de actividades que enseñan la computación sin utilizar las
computadoras es separarse de las distracciones y los detalles técnicos que
generalmente se presentan con las computadoras. La enseñanza se realiza
utilizando juegos y puzzles, crayones, dibujos, entre otros. Un popular sitio
web que contiene una colección gratuita de actividades sin computadora es
el Computer Sciences Unplugged (http://csunplugged.org).
Algunos de los principales objetivos que que se pretende alcanzar con
actividades sin computadora son los siguientes:
16
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
Figura 1.5:
DR
AF
T
Una ventaja de las actividades sin computadora es que no es necesaria una sofisticada
infraestructura en el aula de clases para enseñar los conceptos de la computación.
Introducir a los estudiantes a los conceptos subyacentes de la computación separados de las distracciones y los detalles técnicos que se presentan con las computadoras.
Explorar nuevas formas de resolver problemas con base en los conceptos
de la computación en contextos diferentes de la computación.
Comprender que los conceptos de la computación son las clave para la
resolución de problemas y que la computadora es sólo la herramienta
que permite automatizarlos.
Explicar problemas y soluciones en términos computacionales.
1.4.2.
Actividades con computadora
Actualmente han surgido diversas herramientas por computadora que
apoyan la aplicación del pensamiento computacional en el aula. Scratch es
una herramienta que se ha popularizado y que se está aplicando en diversas instituciones educativas de Estados Unidos, Europa y algunos paı́ses de
Sudamérica. Scratch es un entorno de programación orientado a niños, adolescentes y adultos que quieren comenzar a aprender a desarrollar el pensamiento algorı́tmico y expresar ideas en forma creativa.
1.4. EL PC EN EL AULA
17
DR
AF
T
A diferencia de los lenguajes de programación tradicionales como C o Java. Scratch está diseñado de tal manera que no es necesario aprender una sintaxis complicada porque las instrucciones son especificadas mediante bloques
predefinidos que el usuario apila o anida en forma muy intuitiva y amigable.
Al prescindir de una sintaxis compleja, el usuario se concentra en la lógica
del programa. En adición, Scratch permite utilizar de manera muy sencilla
recursos multimedia lo que permite la creación de video juegos, animaciones,
música y producciones artı́sticas (ver figura 1.6).
Figura 1.6: En palabras de sus principal promotor Mitchel Resnick del MIT, “Scratch es un medio de
expresión para ayudar a niños y jóvenes a manifestar sus ideas de forma creativa, al tiempo que desarrollan
habilidades de pensamiento lógico y de aprendizaje del Siglo XXI”.
Algunos de los principales objetivos que se pretende alcanzar con la utilización de scratch son los siguientes:
18
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
Desarrollar el pensamiento lógico y algorı́tmico
Desarrollar métodos para solucionar problemas de manera metódica y
ordenada
Tener la posibilidad de obtener resultados complejos a partir de ideas
simples
Aprender y asumir conceptos matemáticos: coordenadas, variables, algoritmos, aleatoriedad
Aprender los fundamentos de la programación
DR
AF
T
Usar distintos medios: sonido, imagen, texto, gráfico
Posibilitar el aprendizaje colaborativo a través del intercambio de conocimiento
Figura 1.7:
La interfaz de Scratc está compuesta por tres partes. En la parte izquierda se muestra la
salida del programa, en la parte central los bloques de comando definidos por omisión y a la derecha el
programa formado por los bloques de comando.
1.5. PROBLEMAS
1.5.
19
Problemas
El pensamiento computacional se define como los procesos de pensamiento implicados en la formulación de problemas y representación sus soluciones. Sin embargo, ¿Qué significa la palabra problema? Para ejemplificar el
significado de un problema en el contexto de la computación se presenta la
siguiente situación en la que se encontraba Tukkul (basado en “El problema de los regalos de Arcadio”contenido en la Enciclopedia de Conocimientos
Fundamentales 5 UNAM Siglo XXI ).
Texto en blanco
DR
AF
T
Tukkul estaba en la ciudad amurallada de Tulum observando una maravillosa puesta
de Sol. Él reflexionaba en como demostrarle a Paat la emoción y la alegrı́a que siente
cada vez que piensa y está con ella. Por lo que habı́a decidido obsequiarle un regalo. No
tenia idea clara de que regalo podı́a comprarle, pero conociendo los gustos de Paat podı́a
plantear algunas opciones. Reflexionando un poco, recordó que a Paat las flores no le gustan
mucho, pero en una ocasión la escuchó decir que las orquı́deas le relajaban. También podı́a
comprarle un microcontrolador porque adora la tecnologı́a, o podı́a comprarle el DVD de
El placer de descubrir las cosas del fı́sico y premio Nobel Richar Feymann porque Paat
admira su trabajo y entusiasmo por la vida (Richar Feymann fue alumno de Manuel
Sandoval Vallarta, ver figura 1.9).
Incluso, Tukkul pensó que podı́a comprarle varios regalos y no necesariamente uno solo.
No obstante, siempre y cuando el costo total de los regalos no excediera su presupuesto
de $1500 pesos.
El problema que Tukkul tenı́a que resolver era decidir el regalo o los regalos adecuados
a obsequiar. Considerando los tres regalos que eligió: las orquı́deas, el microcontrolado y el
DVD, la primera dificultad que enfrentó es que habı́an muchas combinaciones de regalos.
Tukkul podı́a comprar un regalo, lo que implica tres posibilidades, por ejemplo, comprar
sólo el microcontrolador. Otra opción seria comprar dos regalos, dependiendo del regalo
que elija no comprar se obtienen tres posibilidades, por ejemplo, si decide no comprar el
DVD, regaları́a las orquı́deas y el microcontrolador. Otra opción seria comprar los tres
regalos, sólo una posibilidad es obtenida formada por las orquı́deas, el microcontrolador
y el DVD. Incluso una opción sencilla seria simplemente no comprar ningún regalo lo que
implica una posibilidad. Por lo tanto, ahora Tukkul tenı́a que calcular para cada una de
las ocho posibilidades si le alcanzaban sus $1500 pesos.
Mientras reflexionaba la cantidad de tiempo que le tomarı́a evaluar las ocho opciones
se quedó dormido. En el sueño, se le ocurrió la idea de visitar en el “Castillo”de Tulum a
su amigo onı́rico Kukulkán, para pedirle algún consejo. Al entrar en el castillo, Kukulkán
se encontraba tocando alegremente la melodı́a “el condor pasa“. Tukkul sentı́a que cada
célula de su cuerpo vibraba en concordancia con cada una de las notas, le pareció que la
alegrı́a y el magnetismo que transmitı́a Kukulkán era compartido con todo el ambiente.
Después de que Kukulkán finalizará su ejecución, Tukkul le explicó el problema que
tenı́a que resolver. Sin embargo, Kukulkán en lugar de impulsar alguna de las opciones que
Tukkul habı́a elegido, le dio nuevas ideas. “Que te parece si mejor le regalas un obsequio
20
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
DR
AF
T
que revele algo de tu personalidad y sensibilidad. Por ejemplo, un colorido alebrije de
Oaxaca o el libro de Ana Karenina, le encantará... ”(ver figuras 1.8 y 1.10).
Figura 1.8: Tukkul quiere obsequiarle el regalo o los regalos que más le gusten a Paat y que no excedan
su presupuesto.
La idea de Kukulkán era buena, pero ahora la situación era más complicada porque
el número de opciones era mayor. Al dı́a siguiente, Tukkul pensó que si no encontraba
una solución, entonces le escribirı́a una carta que exprese sus sentimientos y que hable
desde el fondo de su corazón que es lo que más importa. Ese pensamiento lo tranquilizó,
y comenzó a concentrarse en el problema de las combinaciones de regalos.
Figura 1.9: -Paat-El mexicano Manuel Sandoval Vallarta ocupó el cargo de profesor titular en el MIT,
donde trabajó con el fı́sico y sacerdote Georges Lamaı̂tre creador del modelo del big bang que explica la
evolución del Universo. En el MIT fue tutor de varios futuros genios como Richard Feynmann, Nathan
Rosen y Luis Walter Álvarez. Por sus investigaciones realizadas se le reconoció mundialmente por sus
aportes a la Fı́sica Cuántica. Su trabajo influyó en el desarrollo del proyecto Manhattan, orientado a crear
la Bomba Atómica. Sin embargo, Sandoval Vallarta se opuso a la utilización de la energı́a nuclear con fines
militares por lo que renunció a su cargo y regresó a México. Su dominio de los conceptos y las técnicas de
la Fı́sica sentaron las bases del profesionalismo de la fı́sica mexicana e impulso la divulgación de la ciencia.
1.5. PROBLEMAS
21
Figura 1.10:
1.5.1.
DR
AF
T
-Kukulkán- El alebrije es una artesanı́a inventada por Pedro Linares López, quien comenzó como un experto en fabricación de figuritas de cartón. Cuando enfermó a los 30 años, cayó en
un profundo delirio por una fiebre muy alta y soñó un lugar parecido a un bosque en el que habitaban
“animales”extraños, que eran a la vez hermosos y aterradores. Observó un burro con alas de mariposa,
un gallo con cuernos de toro, un león con una cabeza de águila y todos ellos estaban gritando “Alebrijes”.
Dichos animales fantásticos lo ayudaron a salir de aquel lugar y despertar de su delirio. Dio vida a su visión
y con ello nació el arte de fabricar alebrijes apreciados a nivel nacional e internacional. Pedro vivió en
uno de los barrios más pobres de la ciudad de México. Sin embargo, lejos de ser un impedimento para
desempeñar su labor artesanal, fue su impulsor porque brindaba y ofrecı́a trabajo a sus familiares, amigos
y vecinos desempleados, promoviendo su idea de crear una comunidad unida. En 1990 recibió el Premio
Nacional de Ciencias y Artes en la categorı́a Artes y Tradiciones Populares.
Problema desde la perspectiva del PC
Tukkul decidió que lo primero que tenı́a que hacer era comprender cual
era exactamente el problema que debı́a solucionar. En el momento en que un
problema se presenta está acompañado de un conjunto de datos de entrada:
un número, texto o una imagen, o cualquier otra representación de datos que
se procesará para para encontrar la solución. Posteriormente, un problema es
resuelto si se obtiene una salida correcta como solución para cada entrada y
en un tiempo finito (correctness). La salida calculada obedece a una relación
de entrada/salida que tiene un objetivo determinado. Dicha relación explica
cuál es el vı́nculo entre la entrada que se recibe y la salida que se debe
producir.
Como ejemplos de problemas se pueden mencionar los siguientes:
22
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
1. Elevar un número al cubo. La entrada es un número x y la salida
un número y. La relación entre el número de entrada x y la salida y es
que y = x3 .
2. Encontrar la distancia entre dos puntos. La entrada son dos
puntos (x1 , y1 ) y (x2 , y2 ) y la salida es un número positivo. La salida es la distancia lineal entre los dos puntos que obedece a la fórmula
d = (x2 − x1 )2 + (y2 − y1 )2 .
Entrada
DR
AF
T
Para exponer de manera ordenada y estructurada el problema de Tukkul,
el primer paso es identificar los datos de entrada.
1. Una cantidad de dinero inicial de $1500 pesos.
2. Un conjunto de regalos, R = {f lores, dvd, microcontrolador}. Debido al consejo de Kukulkán, se define el conjunto de regalos R1 =
{f lores, libro, microcontrolador, alebrije, dvd}.
3. Cada conjunto de regalos seleccionados S1 tiene un costo en pesos y un
valor emocional distinto para Paat. Los regalos tienen un valor emocional para Paat que se puede expresar como un valor numérico entre
0 (es indiferente) y 10 (le emociona).
Supóngase que los valores están dados como en la tabla 1.11.
Figura 1.11: Tabla que muestra el costo de los regalos y sus respectivos valores
emocionales.
Una vez especificada la entrada al problema ahora puede definirse lo que
se desea adquirir como salida.
1.5. PROBLEMAS
23
Salida
1. Uno o más regalos para Paat, es decir, un subconjunto S de R1 (o
de R). La solución consiste en obtener un resultado óptimo, es decir,
seleccionar los regalos cuyo costo sea accesible y que el cariño de Paat
sea el mayor.
Relación entrada/salida
1.5.2.
DR
AF
T
Los regalos seleccionados del conjunto S no deben costar más de $1500
pesos en total. En suma, no debe existir otra elección de regalos que tenga
un valor emocional mayor y que su costo sea menor o igual que $1500. Por lo
tanto, los regalos seleccionados deben tener el mayor valor emocional posible
y costar a lo más mil quinientos pesos.
¿Cuál es la solución?
Una salida posible al problema serı́a {microcontrolador, alebrije} porque
el costo de dichos regalos es de 500 + 600 = 1100 con un valor emocional de
6+8 = 14. Sin embargo, dicha salida no soluciona el problema porque existen
salidas superiores. Por ejemplo, {microcontrolador, alebrije, dvd} no supera
los mil quinientos pesos y tiene un valor emocional más alto para Paat (de
18). El problema se resolverá una vez que Tukkul seleccione los regalos con
el valor emocional que sea mayor y sin superar el costo de los mil quinientos pesos. ¿La solución es {microcontrolador, alebrije, dvd}? No, porque si
se cambia el dvd por el libro, el costo total baja a 1300 obteniéndose una
combinación de mayor valor emocional igual a 24. Aparentemente, la opción
{libro, microcontrolador, alebrije} es una buena solución al problema. Sin
embargo, ¿Cómo se puede estar seguro de ello?
Precisamente, al tener que resolver un problema en particular, surgen las
siguientes preguntas: ¿Qué tan difı́cil es resolverlo? y ¿Cuál es la mejor forma
de solucionarlo? Las ciencias computacionales se basan sobre sólidos fundamentos teóricos para responder a dichas preguntas. En capı́tulos posteriores
se retomará el problema de Tukkul y se responderá a dicha pregunta.
24
1.6.
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
Aplicando el PC
DR
AF
T
Cada experiencia que tenemos en la vida está influida por una
secuencia permanente de decisiones. Mientras que algunas decisiones son simples e insignificantes; otras decisiones son complejas y
tienen un impacto importante en nuestra vida. Las personas viven
una vida racional cuando consistentemente toman decisiones racionales. Las personas que toman decisiones racionales maximizan
su calidad de vida sin violar o perjudicar los derechos y bienestar
de otros.
Al igual que la toma de decisiones, los problemas están arraigados inherentemente a nuestras vidas. Las decisiones tienen un impacto en
nuestros problemas ya sea para disminuirlos o para empeorarlos. Las decisiones absurdas crean problemas. En consecuencia, si se toman decisiones
deliberadas muchos problemas se pueden evitar. Por lo tanto, las decisiones
racionales incrementan nuestras oportunidades de tener éxito y realizarnos
en el ámbito personal y profesional.
Definir en forma precisa un problema que se desea solucionar es también
un problema. Al resolver un problema es necesario concentrarse en su especificación al definir la entrada, la salida y la relación entrada/salida, y eliminar
cualquier restricción no significativa que aparte la atención del objetivo.
Considera el problema de Tukkul, podrı́a simplemente declararse como
entrada al problema el deseo de Tukkul de comprarle un regalo a Paat. Sin
embargo, dicha declaración es demasiado ambigua. Precisamente, cuando el
problema no es claro o es impreciso, el pensamiento no tiene una guı́a clara y
divaga sin tener un sentido claro de relevancia. Sin embargo, cuando se toma
el tiempo de clarificar un problema, estamos más capacitados para resolverlo
porque tenemos claro para nosotros qué se requiere para ser resuelta.
Una estrategia para especificar el objetivo que se desea lograr es añadir
detalles al problema para fragmentarlo en pedazos y ser más preciso. Paso a
paso se divide el problema principal en subproblemas de menor complejidad
para ser resueltos por separado. Al subdividir el problema podemos notar las
relaciones y donde se sobreponen.
Por ejemplo, Tukkul comenzó por limitar el universo de regalos posibles,
primero a tres y luego a cinco regalos especı́ficos y asignar valores emocionales
a los regalos. Posteriormente, tuvo que precisar que deseaba obtener con la
compra al establecer la relación de entrada y salida, la cual se define como el
deseo de satisfacer los gustos de Paat maximizando los valores emocionales.
1.6. APLICANDO EL PC
25
DR
AF
T
Finalmente, cabe mencionar que cuando se presente un problema debes
considerar los múltiples significados que puede tener, dependiendo del contexto y las circunstancias en las que opera. Al hacer el problema más preciso,
evitaremos algo que sucede con frecuencia en la vida personal y profesional,
antes de identificar el problema que se desea resolver se procede a resolver el
problema incorrecto.
Por ejemplo, si Tukkul le hubiera preguntado a Paat que regalo le gustarı́a, probablemente ella le hubiera explicado que acababa de leer ese libro
y que ya no era necesario comprarlo. Si este hubiera sido el caso, los valores
emocionales de entrada al problema serian incorrectos. La solución no serı́a
incorrecta, lo incorrecto seria la especificación del problema.
CAPÍTULO 1. PENSAMIENTO COMPUTACIONAL
DR
AF
T
26
Bibliografı́a
Wing, J.M. (2006), Computational thinking, Comm of ACM, 49 (3), (pp.
33-35).
DR
AF
T
Wing, J.M. (2008), Computational thinking and thinking about computing.
Philosophical transactions of the royal society A, 3717-3725.
Wing, J.M. (2010), Computational Thinking: What and Why?.
CSTA y ISTE (2011), Computational Thinking leadership toolkit, first edition, Computer Science Teachers Association (CSTA) y la International Society for Technology in Education (ISTE).
CSTA y ISTE (2011), Computational thinking, teacher resources, second edition, Computer Science Teachers Association (CSTA) y la International Society for Technology in Education (ISTE).
Bribiesca, E., Galaviz, J. y Rajsbaum, S.(2010), Computación, Enciclopedia
de Conocimientos Fundamentales 5 UNAM Siglo XXI, México: UNAM.
Paul, R. y Elder, L.(2003), La mini-guı́a para el Pensamiento Crı́tico Conceptos y Herramientas, Fundación para el Pensamiento Crı́tico.
27

Documentos relacionados