Big Data [Qué es, función y técnicas]

Big Data: Qué es, función y técnicas


Big-DataEste post trata sobre el concepto de Big Data.

En el aprenderás sobre:

  • Qué es el Big Data, destacando la importancia de su análisis y en que factores se basa.
  • Cuál es la utilidad del Big Data a través de múltiples ejemplos que te ayuden a entender su importancia.
  • Qué tipo de técnicas de análisis se usan con el Big Data, explicando cuál es su utilidad real.

¿Qué es Big Data?


El Big Data son grandes volúmenes de datos generados por las organizaciones.

Ahora bien, si su significado es tan simple, ¿porqué se habla tanto de él en la actualidad?

La razón, es que se almacena cada vez más información, pero no se entiende casi nada. Entender parte de esa información a través de avanzados análisis permite marcar una diferencia competitiva, porque se obtiene más información valiosa y como consecuencia se toman mejores decisiones.

Qué-es-Big-Data
Características y análisis del Big Data

Por lo tanto, las mejores decisiones no residen únicamente en el propio Big Data, sino en encontrar la mejor forma de analizar sus datos. Este análisis, se basa en una serie de principios básicos:

  • Volumen: Cada vez hay un mayor número de fuentes de información, que envían a su vez, más cantidad de información. Algunas de estas fuentes son las transaccionales, las redes sociales, los sensores o las interacciones máquina-máquina.
  • Procedencia: En muchas ocasiones los datos serán inútiles si no conocemos su origen o si tiene demasiadas fuentes. No basta con tener la información, también es necesario saber de donde procede.
  • Variedad: Los datos pueden ser estructurados y no estructurados. Dentro de los mismos (especialmente los no estructurados), existen muchos formatos diferentes, lo que dificulta su análisis.
  • Variabilidad: No solo aumenta el volumen y la variedad, sino que esta información no llega de forma constante. Esto implica que hay picos de información en los que hay que estar preparados para actuar (trending topic en redes sociales por ejemplo).
  • Velocidad: El aumento del volumen en relación con el tiempo implica que se necesita una velocidad de procesamiento cada vez mayor.

Gracias a la incorporación de estos principios al análisis (entre otros factores), conseguimos extraer la mejor información posible de un conjunto masivo de datos. En el siguiente apartado, te voy a mostrar que utilidad real tiene esta información extraída.

¿Para qué sirve el Big Data?


Como te acabo de mencionar, la importancia del Big Data no radica en tener más datos que nadie. Sino en para que usas esos datos.

Es más importante la calidad que la cantidad, y esa es la función de los análisis, encontrar la mejor información posible. Posteriormente, esta información se usa para encontrar nuevas respuestas en:

Para-que-sirve-el-Big-Data
Función y ejemplos prácticos de uso efectivo del Big Data
  • Reducción de costes: Eliminar pasos inncesarios en el proceso de fabricación o cambiar el proceso por completo.
  • Reducción de tiempo: Similar a la reducción de costes pero aplicado al tiempo.
  • Decisiones estratégicas: Tomar decisiones que afecten a la empresa en su conjunto con más evidencia objetiva. Este ajuste a la realidad, disminuirá la probabilidad de cometer errores que puedan poner en entredicho la viabilidad de una empresa.
  • Problemas de seguridad: Tanto a nivel online como offline, se podrán agilizar gestiones de seguridad, lo que permitirá establecer un sistema más regulado y efectivo. Este sistema tendrá efecto sobretodo a nivel de prevención.
  • Comportamiento del cliente: Tener control sobre la actividad de los clientes para incentivar su consumo. Con la información de su actividad podemos aplicar reducciones de precio o cambiar la disponibilidad de los productos.
  • Desarrollo de nuevos productos: Se recibe más feedback de las características que no gusten de un producto para que evolucione a mayor velocidad. También se obtienen ideas para productos totalmente nuevos.
  • Detectar comportamientos fraudulentos: A día de hoy es en muchos casos fácil que ocurran actividades ilegales o que no respeten los códigos de conducta en una empresa, repercutiendo en la misma a corto, medio o largo plazo. Un registro más exhaustivo y claro, unido al análisis que ya hemos visto, permitirá reducir este tipo de comportamientos.

Imagina el cambio que va a suponer esto en casi cualquier empresa. No solo mejoras detalles que antes eran imposibles de detectar, sino también a una velocidad más rápida que la actual.

Técnicas usadas en Big Data


Llegados a este punto seguro que te ha quedado claro la importancia del análisis de datos masivos.

Este análisis no funciona siempre de la misma manera. Sino que depende de la información que quieras conseguir y el tipo de datos que estés analizando.

En concreto, existen diferentes técnicas de análisis que se pueden usar solas o en combinación.

Técnicas-usadas-en-Big-Data
Ejemplos de técnicas de análisis de Big Data

Por ejemplo, hay algoritmos que se basan en como funciona nuestro cerebro para establecer asociaciones. Esta técnica, llamada aprendizaje por asociación, permite predecir un suceso a partir de otro suceso ocurrido previamente.

Tiene muchas aplicaciones, como poner juntos en una tiendas dos productos sin aparente relación o predecir el comportamiento de un usuario a través de Internet.

Por otro lado, emulando a lo que ya ocurre en la naturaleza, tendríamos los algoritmos genéticos.

De forma simple, lo que hace este algoritmo es buscar una serie de inconvenientes o problemas y dar la mejor solución posible. Continuamente reevalúa la situación y vuelve a buscar la mejor solución, optimizando cada vez más el problema.

Se usa en situaciones para las que se necesita una mejora constante, como las fases de diseño o los procesos industriales.

Por último, voy a hablarte de un software analítico cuya tarea principal es aprender, el aprendizaje automático.

Al contrario que los dos anteriores, no esta programado para hacer una determinada tarea sino para entender conceptos. Puede aprender muchísimas cosas distintas, pero lo que se hace normalmente, es exponerle una y otra vez a una serie de datos relacionados con una labor en particular.

Con el paso del tiempo aprende y hace la labor cada vez mejor por si mismo. En concreto, detecta patrones en los datos y modifica las acciones del programa como respuesta. Este es el caso del algoritmo RankBrain de google o de inteligencias artificiales que juegan a ajedrez u otro tipo de juegos.

Como ya te habrás imaginado, existen muchos más tipos de análisis; como el de categorías, el sentimental o el de redes, por ponerte otros ejemplos.

Las posibilidades del Big Data, por lo tanto, tienen una relación directa con todos los distintos tipos de análisis. Es como si el Big Data fuera una mina y los distintos tipos de análisis fueran herramientas para extraer el mineral.

Referencias



Si te ha resultado interesante nos ayudas mucho compartiéndolo. ¡Mil gracias!

Internet de las cosas [Qué es, funcionamiento y aplicaciones]

Internet de las cosas: Qué es, funcionamiento y aplicaciones


Internet-de-las-cosasEste post trata sobre el concepto del Internet de las Cosas.

En el te hablaré sobre:

  • Qué es el internet de las cosas, destacando sus elementos más importantes y factores que lo hacen posible.
  • Como funciona el internet de las cosas paso a paso y que utilidad aportan estos procesos.
  • Cuáles son las aplicaciones más importantes del internet de las cosas en distintos sectores productivos.

¿Qué es el Internet de las cosas?


El Internet de las cosas es la transmisión, almacenamiento, recepción y análisis de datos procedentes de elementos integrados en red, con el objetivo de mejorar su eficiencia y usabilidad.

Estos elementos pueden ser animales, personas, máquinas, objetos. Todos ellos con un dispositivo/s integrado. Estos dispositivos, tienen sensores (para colectar datos en tiempo real), capacidad de computación (para procesar los datos), wifi (para transmitir los datos) y receptores GPS (para localizarlo físicamente), entre otros componentes.

Qué-es-el-Internet-de-las-cosas
Definición de Internet de las cosas y componentes que lo conforman

Después de ver su definición, te puede venir a la cabeza una pregunta muy recurrente, ¿porqué esta empezando ahora el Internet de las cosas, si todos los elementos que se mencionan (sensores, internet, móviles, etc…) existen desde hace bastante tiempo?

La razón, es que el Internet de las cosas no es una tecnología en si misma, sino que depende de la integración y desarrollo de otras tecnologías. Por lo que, hasta que no se produjo un cierto grado de desarrollo en estas, no empezó a ser relevante a gran escala.

Algunos ejemplos que propiciaron su aparición son : la bajada del precio y mayor velocidad de Internet, más dispositivos con sensores/wifi o el incremento de dispositivos informáticos.

Como seguramente sabes, existen muchos ejemplos del Internet de las cosas, aplicables a cualquier campo conocido. Pero no es nada, si lo comparamos con lo que tendremos en unos años, debido a que esta integración y desarrollo son cada vez mayores.

¿Cómo funciona el Internet de las cosas?


El envío masivo de información procedente de dispositivos integrados, está cambiando radicalmente las actividades que haces en tu día a día. Cocinar, vestirse, trabajar, etc…, todos somos influidos en mayor o menor medida.

Y me estoy refiriendo no solo a los usuarios, sino también a los fabricantes e intermediarios.

Cada elemento, como ya hemos visto en el apartado anterior, dispone de una serie de dispositivos integrados, cuya objetivo es enviar información sobre indicadores importantes.

Cómo-funciona-el-Internet-de-las-cosas
Partes de un proceso del Internet de las cosas

Ahora bien, ¿como va a conseguir el envío de un montón de datos cambiar la forma en que hacemos las cosas?

Para entenderlo bien, empecemos desde el principio del proceso.

Cada elemento tendrá una serie de sensores de presión, temperatura, etc… Estos sensores, envían la información al dispositivo inmerso en el propio elemento para que la procese, y posteriormente se envía a la red para llegar a su siguiente destino. Una plataforma colectora de datos.

Esta plataforma recibe datos de múltiples dispositivos, los integra para quedarse con la información mas importante y posteriormente realiza un análisis exhaustivo. Una vez finalizado el análisis, la información se envía a una aplicación.

Esta aplicación, permite ver a partir de los datos cuando hay riesgo de error. Lo usan tres tipos de usuarios:

  • Consumidor: En el caso de que se haya detectado un problema, se le notifica al usuario y se le dan recomendaciones de cuál es la mejor forma de arreglarlo.
  • Intermediario: Una vez el consumidor haya confirmado que quiere resolver el problema, la información en detalle llegará al grupo de trabajo encargado de resolverlo. Esto permitirá que se trabaje con antelación en la solución del mismo, al no tener que disponer del producto directamente para todo el proceso.
  • Fabricante: Toda la información recopilada se usará para mejorar el diseño y fabricación del producto. También permite detectar fallos en sus procesos, incluyendo exactamente donde y cuando ocurrieron, ya que cada componente de un producto tiene un registro electrónico asociado.

Sin duda, el principal beneficio del Internet de la cosas es la prevención. Al poder detectar múltiples indicadores constantemente, te anticipas al problema mucho más que en la actualidad. Aunque por supuesto, el proceso de arreglo y de mejora tampoco se quedarán atrás.

Aplicaciones del Internet de las cosas


Hay tantas y tan grandes aplicaciones del Internet de las cosas, que la lista podría ser interminable. Te pongo algunas de las que considero como más relevantes:

Aplicaciones-del-Internet-de-las-cosas
8 ejemplos de aplicaciones del Internet de las cosas
  • Ciudades inteligentes: Las ciudades del futuro funcionarán de forma mucho más organizada y eficiente. Por ejemplo, se podrá monitorear donde hay un aparcamiento antes de que este libre, por donde circularán vehículos/peatones o cuál es el estado de los edificios.
  • Industria: Se podrán controlar mucho mejor los parámetros que afectan a la calidad. Midiendo con mayor precisión y sentido la temperatura, la calidad del aire, los microorganismos, etc…
  • Domótica: La vida en los hogares será mucho más cómoda y sencilla. Las aplicaciones se controlarán por control remoto, se detectarán intrusos más fácilmente o se controlará de forma automática el estado de los bienes.
  • Agua: Tendremos un control total sobre como hacemos uso de este recurso.  Se monitorizará la calidad del agua potable, la cantidad de agua en reservorios o el gasto de la misma.
  • Ganadería: Mejores condiciones para los animales y más calidad en los productos. Esto se conseguirá gracias a un mejor control en las condiciones de crecimiento, a la localización/identificación de cada animal o a mejoras en la calidad del entorno.
  • Agricultura: Menor uso de tierra y mayor productividad al mismo tiempo. Uso de controles para recogida de fruta en el momento exacto de madurez, mayor control en las condiciones de micro-clima o irrigación selectiva según necesidades en tiempo real.
  • Energía: El objetivo es conseguir la mayor eficiencia energética posible. A través del control del consumo de energía, monitorización/optimización de plantas energéticas o control de las reservas energéticas.
  • Salud: Mejora aún mayor de la esperanza de vida y reducción de enfermedades.  Se conseguirá gracias a un mayor control de signos vitales, mejor asistencia a personas con problemas de salud o análisis más rápidos de indicadores químicos de enfermedad.

Seguro que te has dado cuenta que muchas ya se aplican hoy en día. En muchos casos, lo que más importa del Internet de las cosas no es que la aplicación sea muy novedosa. Sino la posibilidad de hacerlo todo de manera más controlada, más rápida y más eficiente.

Referencias



Si te ha resultado interesante nos ayudas mucho compartiéndolo. ¡Mil gracias!

Robótica [Qué es, “tres leyes”y componentes de un robot]

Robótica: Qué es, “tres leyes” y componentes de un robot


RobóticaEste post trata sobre el concepto de robótica.

En el aprenderás sobre:

  • Qué es la robótica, mencionando sus fases y dando a su vez una explicación razonada al concepto de robot.
  • Cuáles son “las tres leyes de la robótica” y que conclusiones podemos extraer de las mismas.
  • En qué partes podemos dividir a un robot (componentes), explicando para que sirve cada uno de ellos.

¿Qué es robótica?


La robótica son todos los procesos que permiten la creación de robots. Estas procesos incluyen el diseño, la fabricación, el testeo y el estudio.

Ahora bien, cuando nos referimos a robots, hay mucha confusión sobre donde esta el límite. Una primera aproximación sería, aquellos dispositivos mecánicos que tienen autonomía propia.

Pero claro, podrías preguntarte, ¿donde esta el límite de la autonomía?

Qué-es-robótica
Fases de la robótica y explicación de que es un robot

Porque con esta definición puedes asumir que, por ejemplo, un muñeco en el que pulsas un botón y realiza una acción de cinco segundos es un robot con una autonomía muy baja.

Como esto no nos aclara mucho, habría que ver como se origina la autonomía, ya que se supone que es una característica diferencial de todo robot.

La autonomía, la podemos definir, como la integración de todos los componentes para cumplir una función de forma programada.

Vista esta definición, sabemos que existen sistemas que integran sus componentes, que son programables y que no son robots. Entonces, la respuesta podría estar en otra palabra integrada en esta definición, la función.

La función de un robot es llevar a cabo tareas que hacen los humanos, o que han imaginado pero son imposibles dadas sus limitaciones. Y además no es solo que las hagan, sino que tratan de hacerlas de la misma forma que un humano (aunque se busca que sean más eficientes y efectivos).

Ahí esta la clave, realizan las actividades con un “estilo humano”, basándose en nuestros patrones cognitivos.

Ya te habrás dado cuenta de que si nos basamos en este razonamiento podemos afirmar que no existen robots como tal. Actualmente lo que hay son solo estadios previos muy mejorables. Y el desarrollo de sucesivos estadios más próximos a la definición de “estilo humano” es el objetivo de la robótica.

Tres leyes de la robótica


Como seguramente conocerás, estas leyes las escribió Issac Asimov. Su finalidad (en la ficción), era poner límites morales claros a los robots para asegurar el bienestar humano.

Vamos a ver las tres leyes, y discutir una situación que podría darse para cada una:

  • Primera ley: Un robot no puede herir a un ser humano, o, a través de la inacción, permitir que un ser humano sea herido
  • Segunda ley: Un robot debe obedecer las órdenes de un ser humano, excepto si entran en conflicto con la primera ley.
  • Tercera ley: Un robot debe proteger su propia existencia, siempre y cuando, esa protección no entre en conflicto con la primera y la segunda ley.

En la primera ley surgen un montón de interrogantes, por ejemplo, a lo largo de la historia siempre han existido conflictos de intereses entre humanos. Un robot se basa en su programación y si alguien le programa para herir a alguien, esa ley no se puede cumplir. En este caso, no se trata de si cumple la ley, sino de que es lo que se antepone, la programación de la primera ley o la de un humano capaz de modificar estas ordenes.

Tres-leyes-de-la-robótica
Las tres leyes de la robótica de Issac Asimov y explicación

Con respecto a la segunda ley, el hecho de tener que obedecer órdenes, implica que tienen que captar de forma perfecta (incluso superior a la humana), el contexto de lo que se les esta diciendo. En ocasiones pueden no obedecer esta ley, no porque estén en contra, sino simplemente porque no la entienden.

La tercera, tiene un dilema interesante. El concepto de existencia propia podría alejarle de su propia labor. Quiero decir, si sabe que debe autoprotegerse, cada vez que realiza una acción esta más cerca de su límite.

¿Podría desobedecer una orden alegando que puede ser peligroso que siga funcionando? Sería anteponer la ley tres a la dos con la perspectiva de no desobecer la primera ley.

La idea fundamental que tienes que entender de estas leyes, es que no son absolutas. Como puedan ser las de la física por ejemplo. Sino que proporcionan una serie de dilemas éticos, mediante los que podamos poner límites claros y necesarios a la robótica.

Además, conforme pasan los años adquieren más relevancia desde el punto de vista sociológico, que desde el punto de vista científico. Pero es lógico, después de todo, en la época en que se escribieron, la robótica no había ni comenzado.

Componentes principales de un robot


Cuando usas un aparato o una herramienta necesitas conocer sus componentes principales para saber como funciona. Los robots no son una excepción, tienen una serie de partes comunes que tienen una función específica.

Algunas de estas partes, tienen un mayor nivel de complejidad y utilidad, por lo que tienden a ser diferentes de unos robots a otros. Pero en general, podemos hablar de cinco componentes principales:

Componentes-principales-de-un-robot
Diferentes partes de un robot y funciones
  • Sensores: Son aparatos capaces de detectar variaciones de luz, presión,etc..., de tal forma que mimetizan con las sensaciones humanas. La información que consiguen del entorno se envía al sistema de control.
  • Sistema de control: Recibe las señales de los sensores en una o varias unidades centrales de procesamiento (CPU). Su labor es procesar estas señales para dar una respuesta apropiada.
  • Efectores: Son los encargados de enviar la información especializada procedente del CPU para interaccionar con el entorno. Existen infinidad de tipos distintos, encargándose cada uno de ellos de una tarea/s muy específicas.

Otras partes son menos variables, al tener una función menos especializada, pero también son necesarias:

  • Actuadores: Son el armazón o cuerpo del robot, y se encarga de sostener y transportar al resto de componentes. Además, también lleva a cabo una respuesta procedente del CPU, pero en este caso es una respuesta más general o incluso inexistente.
  • Fuente de alimentación: Para que todo el proceso de envío de señales que acabamos de ver se lleve a cabo, se necesita energía. Normalmente, esta energía es eléctrica. Se almacena en la fuente y se reparte siempre que sea necesario.

Dentro de cada componente, existen partes mucho más específicas, como los brazos o piernas (dentro del sistema actuador), o los sistemas de procesamiento de señales (para transformar señales físicas procedentes de los sensores en eléctricas).


Si te ha resultado interesante nos ayudas mucho compartiéndolo. ¡Mil gracias!

Inteligencia artificial [Qué es, funcionamiento e importancia]

Inteligencia artificial: Qué es, funcionamiento e importancia


Inteligencia-artificialEste post trata sobre el concepto de inteligencia artificial.

En el te hablaré sobre:

  • Qué es la inteligencia artificial, explicando los tipos más relevantes (reales y teóricos).
  • Cuáles son los factores que promueven el desarrollo de la inteligencia artificial.
  • Razones generales y específicas para explicar porque la inteligencia artificial es y será importante.

¿Qué es inteligencia artificial?


La inteligencia artificial es un conjunto de técnicas que usan recursos informáticos para simular procesos humanos.

Hay muchísimas ramas de la tecnología que están experimentando un crecimiento brutal. Sin embargo, ninguna esta tan relacionada con nuestra propia naturaleza como la inteligencia artificial.

Esto se debe, a que su punto de partida son las habilidades humanas. En concreto, su objetivo es la simulación de estas habilidades para infinidad de propósitos.

Habilidades, que estás acostumbrado a usar en tu día a día, como el aprendizaje, el razonamiento o la percepción.

Qué-es-inteligencia-artificial
Significado de inteligencia artificial y tipos

Si nos basamos en como se pueden disponer estas habilidades en dispositivos, se han descrito formalmente algunos tipos de IA. Pero aún estamos lejos de encontrar una forma adecuada de establecer una clasificación. Más que nada, porque algunos tipos ni siquiera existen todavía.

La división más general que se lleva a cabo es entre IA débil (sin habilidades humanas completas) e IA fuerte (con habilidades humanas).

La IA débil es fácil de categorizar, ya que lleva tiempo entre nosotros. Son aplicaciones que se especializan en una determinada tarea, como por ejemplo los asistentes virtuales.

La IA fuerte por su parte, se puede dividir en cuatro:

  • Reactiva: Son capaces de encontrar una solución siempre que este dentro de un entorno y patrones muy específicos. El problema de estas inteligencias artificiales es que solo son útiles para determinadas tareas muy específicas.
  • Inclusiva: Parecida a la anterior, pero en este caso incorpora una memoria de tiempo limitado. De esta forma, no solo tiene en cuenta la información del presente, sino también la del pasado reciente.
  • Perceptiva: Con esta inteligencia artificial, ya entramos en un terreno inexplorado. En este caso, se busca crear máquinas que sean capaces de retener gran parte de la información y de dar diferentes respuestas en entornos cambiantes.
  • Auto-consciente: Comprende, actúa y evoluciona a partir de la información que le llega del exterior y además, es capaz de ser consciente de sus propios pensamientos. No solo dan una respuesta adaptada, sino que tienen la capacidad de crear paradigmas nuevos.

Sería un error que pensaras que las IA más avanzadas son el futuro y las otras irán desapareciendo. Al contrario, nos queda mucho para saber como desarrollar y como administrar de forma efectiva la inteligencia artificial.

De hecho, en muchos aplicaciones, una IA más limitada en cuanto a funciones y tremendamente especializada, puede ser una solución ideal para muchos de los inconvenientes de la actualidad.

¿Cómo se desarrolla la inteligencia artificial?


Seguro que más de una vez has oído hablar de que una tecnología tiene un gran potencial, que se van a invertir miles de millones de dólares en los próximos años, etc… Este es el caso exacto de la inteligencia artificial en la actualidad.

Su potencial de avance, depende de una serie de factores, que a su vez se desarrollan de forma colectiva e individualizada.

Para que una IA se desarrolle, necesita que 3 factores trabajen al unísono (de forma colectiva):

Cómo-se-desarrolla-la-inteligencia-artificial
Factores que explican como se desarrolla el funcionamiento de la inteligencia artificial
  • Almacenamiento de la información: Se necesita poder almacenar una gran cantidad de datos, para responder a múltiples situaciones y llevar a cabo diferentes acciones.
  • Capacidad de procesamiento: Podemos tener un almacén enorme, pero si no somos capaces de procesar esos datos para responder con celeridad, realmente una respuesta adaptada y en tiempo real no es posible.
  • Algoritmos inteligentes: Las ordenes o procedimientos, todos los pasos o detalles intermedios, tienen que ser refinados, porque sin propósito y claridad de acción no hay inteligencia como tal.

El objetivo final, es que estos factores trabajen sinérgicamente. De esta forma, el software podrá aprender sobre patrones de datos cada vez mejor.

Este trabajo colectivo se potencia con el desarrollo individual de los factores, pero, ¿cómo se están desarrollando?

La respuesta es compleja porque la inteligencia artificial es un campo que incluye muchos métodos y tecnologías. Esto quiere decir, que los factores individuales se desarrollan por separado en distintas disciplinas.

Algunos ejemplos estas tecnologías seguramente te suenen: el aprendizaje máquina, el procesamiento de lenguajes naturales, el internet de las cosas, las unidades gráficas de procesamiento o el big data.

En resumen, las grandes inteligencias artificiales del futuro serán la suma del desarrollo de muchas tecnologías diferentes unidas por patrones de desarrollo comunes.

Ahora que entendemos un poco más del como, vamos a hablar del porque. Al fin y al cabo, nadie invertiría miles de millones de dólares sin una buena razón, ¿verdad?

¿Porqué es importante la inteligencia artificial?


Creo que tienes más o menos claro, que la inteligencia artificial es y sobretodo va a ser, una parte indispensable en nuestro día a día. Pero, ¿por qué?

Bueno, si lo miramos desde un punto de vista general, hay dos factores que disminuyen. El esfuerzo y el error. La disminución de ambos, cambiará nuestra vida a pasos agigantados.

Por otro lado, si lo miramos desde un punto de vista más específico, existen muchas aplicaciones que explican su importancia:

Porqué-es-importante-la-inteligencia-artificial
Razones y ejemplos de la importancia de la inteligencia artificial
  • Cambio radical en como usamos los productos y su evolución a corto plazo. Los productos toman datos de su entorno, realizan análisis más sofisticados y obtienen soluciones más adaptadas a los gustos del usuario.
  • Descubrir patrones en los datos. Actualmente, existen minas de información que no se pueden analizar por ningún programa ni grupo humano. La adquisición de los patrones adecuados en esas minas, tendrá un impacto decisivo en la competitividad.
  • Realizar tareas repetitivas más eficientemente. Aquí no hablamos solo de automatizar procesos y reducir errores, sino también de la mejora en cada acción repetitiva. De esta manera, ocurre aprendizaje sin esfuerzo humano. Este “aprendizaje sin esfuerzo”, puede ahora ser usado por las personas para realizar mejores preguntas acerca de los procesos.
  • Mejora en exactitud y precisión. Somos conscientes de que muchas actividades que implican gran complejidad o riesgo, se pueden hacer mucho mejor. El problema es que aunque lo sepamos, no tenemos las herramientas que nos permitan operar a estos niveles en la actualidad, pero si en el futuro con el uso de herramientas más inteligentes y precisas.

Son aplicaciones que como puedes ver, responden a razones de usabilidad y utilidad principalmente, pero existen muchas otras. Por ejemplo, la IA puede ser considerada como una extensión de la propia inteligencia humana, ayudándonos a generar nuevas ideas que son imposibles de concebir para nosotros.

Referencias



Si te ha resultado interesante nos ayudas mucho compartiéndolo. ¡Mil gracias!

Programación [Qué es, como se realiza y clasificación]

Programación: Qué es, como se realiza y clasificación


ProgramaciónEste post trata sobre el concepto de programación.

En el aprenderás sobre:

  • Qué es la programación, relacionándola con otros conceptos como los algoritmos o los datos.
  • Cuáles son las principales tareas de un programador. Principios generales de los códigos en programación.
  • Clasificación de los lenguajes de programación basados en su grado de complejidad. 

¿Qué es programación?


La programación (en informática), es el uso de algoritmos codificados en lenguajes escritos para ser ejecutados y cumplir una determinada función en dispositivos informáticos.

Todo proceso de programación, implica una serie de conceptos con los que puede que no estés muy familiarizado, ya que la mayoría de las personas no los usamos en nuestro día a día.

El primero y más importante es el de algoritmo, porque es el punto de partida para cualquier programa. ¿En que consiste?

Qué-es-programación
Explicación de que es la programación con sus conceptos más importantes

Pues, no es más que una serie de pasos en un proceso, una serie de ordenes preestablecidas. Nos sirven para establecer la mejor forma en la que podemos operar para conseguir un resultado.

Al oír hablar sobre ellos, muchas veces los relacionamos con complejidad, y ciertamente hay algunos muy complejos. Pero realmente también los hay muy simples. Sin ir más lejos, cualquier orden que nos demos, como por ejemplo, de que forma voy a limpiar la cocina hoy, es un algoritmo.

Una vez que hemos establecido las pautas claras de lo que queremos hacer, llega el proceso de traducir (codificar) la información de los algoritmos desde un lenguaje que entendemos nosotros, hasta un lenguaje que entiende un ordenador, también conocido como lenguaje de programación.

En la práctica una vez que este lenguaje ha sido insertado, solo necesitamos añadir datos (input) para que el ordenador los procese junto con el algoritmo, dando como resultado otros datos (output).

Si establecemos un paralelismo con un proceso productivo, vemos que la programación tiene unos elementos similares. Un procedimiento a seguir (algoritmo), maquinaria/personal que lleva a cabo las ordenes (ordenador) y una materia prima (datos) que se transforma en un producto (otros datos).

Hasta aquí, te he dado una explicación simple de lo que es programación. En el próximo apartado, vamos a ver un poco más lo que implica una vez que te “metes en faena”.

¿Qué hace un programador?


Como ya te mencione anteriormente, programar no es solo escribir código, sino que tiene otras actividades asociadas.

En primer lugar, y es al que la gente suele prestar menos atención o darle menor importancia, tendríamos la fase de diseño. Muchos programas operan con miles o millones de líneas de código, por lo que no basta con pensar en escribir que funciones queremos llevar a cabo, sino que orden lógico siguen y como interaccionan entre ellas.

Posteriormente a la escritura, es necesario testear como funciona el software. Durante esta fase se prueba si aparecen diferentes errores en el código; como la rotura, el bloqueo o la no correspondencia. En muchos casos, son los propios usuarios los que ayudan a los desarrolladores probando los programas.

Qué-hace-un-programador
Fases de la programación y evaluación final

Por último, tendríamos la fase de depuración, en la que buscamos diagnosticar cuál es el error que está ocurriendo y arreglarlo. Una vez terminada esta fase, el código debería cumplir lo mejor posible con estos cuatro principios:

  • Eficiencia: Buscamos un menor gasto en los recursos del dispositivo mientras funciona con la misma fluidez. Se puede buscar una optimización en general o bien una especializada, en el caso de que se trabaje con un hardware en particular.
  • Robustez: Asegurarnos de que el programa funcione de forma fluida, sin ningún error durante su funcionamiento. Esto es especialmente relevante cuando se trabaja con distintas plataformas, ya que multiplica el tiempo de testeo y depuración.
  • Legibilidad: Facilitar el trabajo de interpretación del código para futuras modificaciones u otros proyectos.
  • Confiabilidad: No basta con que un programa funcione sin interrupciones, sino que también tiene que llevar a cabo las funciones exactas, evitando cambios en su funcionamiento previsto.

Como puedes ver, el trabajo de un programador implica más que simplemente saber como escribir unas líneas. Es necesario que además tenga un enfoque holístico, analítico y crítico.

Clasificación de los lenguajes de programación


Existen muchas formas de clasificar a los lenguajes de programación.

Para que te hagas una idea clara, la realidad es que la mayoría de las clasificaciones son difusas. Hay mucha discusión al respecto.

Algunos ejemplos de estas clasificaciones serían; según el propósito para el que fueron creados (unos lenguajes son más fáciles de usar para ciertas aplicaciones) o basados en el paradigma que usan (lenguajes basados en la lógica, otros basados en el procedimiento, etc…).

Clasificación-lenguajes-de-programación
Tipos de lenguajes de programación según complejidad y fases de traducción

Dicho esto, creo que la mejor clasificación que te puedo mostrar es una que sea sencilla de entender y muy general.

Esta clasificación, se basa en el grado de complejidad de los lenguajes de programación. Visto desde este punto de vista, los lenguajes se pueden dividir en dos:

  • Alto nivel de programación: Se corresponden con los lenguajes que normalmente se usan para crear aplicaciones. Usan caracteres alfanuméricos, por lo que son más fáciles de entender para las personas. Además, al usar este tipo de caracteres es más fácil que haya muchos significados distintos con poca información y posibilita su uso en casi cualquier dispositivo.
  • Bajo nivel de programación: Son los lenguajes que interpreta un dispositivo. Básicamente son lo contrario a lo anterior. Usan solo caracteres numéricos, lo que los hace más difíciles de entender para nosotros. Su contenido tiene poco significado por lo que necesitan más información que los anteriores. Todo esto, hace que estos lenguajes se usen de forma más específica.

Dentro de los de nivel bajo tendríamos dos grandes tipos:

  • Los ensambladores: Lenguajes que interpretan los dispositivos de forma muy básica
  • El código máquina: La sucesión de ceros y unos que son capaces de interpretar los dispositivos de forma rutinaria.

Para conseguir pasar de un nivel a otro, se usan “traductores” de estos lenguajes, que no son más que programas que permiten pasar de un nivel de programación a otro. De esta forma, se usan compiladores para pasar del “alto nivel” a “lenguaje emsamblador”, y ensambladores para pasar de “lenguaje ensamblador” a “código máquina”.

Es importante que entiendas, que una de las principales razones que dificulta la clasificación de los lenguajes de programación es que se encuentran en constante evolución. Esto se debe, a que al igual que los lenguajes corrientes, evolucionan con el uso y la aplicación; y además, lo han hecho en un periodo de tiempo mucho más corto.

Referencias



Si te ha resultado interesante nos ayudas mucho compartiéndolo. ¡Mil gracias!