QUE ES UN ALGORITMO






Un algoritmo del latín algorithmus y este del griego arithmos, que significa «número», quizá también con influencia del nombre del matemático persa Al-Juarismi  es un conjunto ordenado de operaciones sistemáticas que permite hacer un cálculo y hallar la solución de un tipo de problemas.



En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas determinados. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador de su patrón. otros ejemplos en son el algoritmo de multiplicación, para calcular el producto, el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema de ecuaciones lineales.

En pocas palabras algoritmo se puede definir como una secuencia de pasos o instrucciones que hay que seguir para realizar alguna cosa, o resolver algún problema determinado.

Claridad y precisión: Los pasos de un algoritmo deben ser claros y precisos, sin ambigüedades.

Eficiencia: Un buen algoritmo no solo resuelve un problema, sino que lo hace de la manera más eficiente posible, minimizando el tiempo y los recursos necesarios.

Repetibilidad: Un algoritmo debe dar el mismo resultado cada vez que se ejecuta con los mismos datos de entrada.





Hay distintos tipos de algoritmos por ejemplo existe el algoritmo de atención, algoritmo evolutivo, algoritmo termodinámico, algoritmos nucleares, algoritmo historico, algoritmo de reorganización nacional y mundial, algoritmo geografico, algoritmo productivo, algoritmo de fabricación, algoritmo de manufactura, algoritmo de producción de aceros, algoritmo de trabajo, algoritmo administrativo.
 
     Algoritmo de atención: Se refiere a algoritmos diseñados para sistemas de atención al cliente o sistemas de recomendación que optimizan la manera en que la información se presenta y se prioriza para los usuarios.

    Algoritmo evolutivo: Utilizan principios de la biología evolutiva, como la selección natural y la mutación, para encontrar soluciones a problemas complejos, comúnmente en optimización y aprendizaje automático.

    Algoritmo termodinámico: Aplican principios de la termodinámica para simular y resolver problemas en física y química, como la simulación de procesos de calentamiento y enfriamiento.

    Algoritmo nuclear: Se utilizan en el análisis y control de reacciones nucleares, como en plantas de energía nuclear.

    Algoritmo histórico: Analizan y extraen patrones de datos históricos, comúnmente utilizados en estudios de tendencias y predicciones a largo plazo.

    Algoritmo de reorganización nacional y mundial: Podrían referirse a modelos utilizados para planificar y optimizar procesos a gran escala, como distribución de recursos o planificación urbana.

    Algoritmo geográfico: Utilizados en sistemas de información geográfica (SIG) para analizar y visualizar datos geoespaciales.

    Algoritmo productivo y de fabricación: Optimizan los procesos de producción y fabricación para maximizar la eficiencia y minimizar los costos.

    Algoritmo de manufactura: Similar a los algoritmos de fabricación, pero específicamente diseñados para procesos de manufactura industrial.

    Algoritmo de producción de aceros: Diseñados para optimizar la producción y calidad del acero, considerando variables como temperatura, composición y tiempo de tratamiento.

    Algoritmo de trabajo: Pueden ser utilizados en la gestión de tareas y proyectos, optimizando el flujo de trabajo y la asignación de recursos.

    Algoritmo administrativo: Optimizan procesos administrativos y de gestión, como la organización de datos, planificación financiera y gestión de recursos humanos.

Cada uno de estos algoritmos tiene un propósito específico y puede ser crucial para resolver problemas en su respectivo campo.
 
 
O sea la palabra algoritmo es sinónimo de proceso, si así es, un proceso es un algoritmo, un algoritmo es un proceso, o sea una serie de pasos o instrucciones que hay que seguir para hacer tal cosa.
 En términos generales, podríamos decir que los algoritmos y los procesos comparten similitudes, pero no son exactamente lo mismo. Ambos implican una serie de pasos o instrucciones, pero hay matices importantes:

    Algoritmo:

        Definición: Es una secuencia finita de instrucciones bien definidas.

        Aplicación: Se utiliza principalmente en el ámbito de la informática y matemáticas para resolver problemas y realizar tareas específicas.

        Ejemplo: Un algoritmo de búsqueda en una base de datos, donde cada paso está claramente definido para encontrar el resultado deseado.

    Proceso:

        Definición: Es una serie de actividades o pasos que se realizan para alcanzar un objetivo específico.

        Aplicación: Más amplio y puede referirse a cualquier conjunto de acciones organizadas, no solo en informática, sino en cualquier ámbito, como procesos industriales, administrativos, etc.

        Ejemplo: Un proceso de fabricación de un producto, donde hay varias etapas desde la materia prima hasta el producto final.

Así que, aunque un algoritmo puede ser considerado un tipo de proceso, no todos los procesos son algoritmos, ya que los procesos pueden ser más generales y abarcar actividades no necesariamente detalladas o finitas.

¿Algoritmo y proceso son lo mismo?

Aunque se parecen, no son sinónimos exactos. Ambos implican una secuencia de pasos, pero difieren en precisión y ámbito:

AlgoritmoProceso
Secuencia finita y bien definida de instrucciones.Serie de actividades que conducen a un objetivo.
Común en matemáticas, informática e ingeniería.Usado en cualquier campo: industria, administración, educación, etc.
Ejemplo: algoritmo de búsqueda en una base de datos.Ejemplo: proceso de fabricación de un producto.

En resumen, todo algoritmo es un proceso, pero no todo proceso es un algoritmo. Los algoritmos son más específicos, estructurados y finitos.
 

 

Imagina que quieres hacer una tarta de manzana.
El algoritmo es la receta: una secuencia de instrucciones paso a paso, claras y ordenadas, para hornear la tarta.
El proceso es el acto mismo de cocinar: seguir la receta, mezclar los ingredientes, hornear y, finalmente, sacar la tarta del horno.

*Un algoritmo es un conjunto de instrucciones finito, definido y no ambiguo para resolver un problema o realizar una tarea. Es la idea, el plan abstracto.
Características clave de un algoritmo:
Precisión: Cada paso debe ser claro e inequívoco.
Finitud: Debe terminar en un número finito de pasos.
Bien definido: Las instrucciones deben ser comprensibles para quien las ejecuta (una persona o una computadora).
Entrada: Puede tener cero o más datos de entrada.
Salida: Debe producir al menos un resultado.

*Un proceso es la ejecución o instancia en curso de un algoritmo. Es la materialización del algoritmo, que consume recursos (como tiempo de CPU, memoria) y tiene un estado.
Características clave de un proceso:
Dinámico: Es una entidad "viva" que se ejecuta en un momento específico.
Consume recursos: Utiliza memoria, tiempo de procesador, etc.
Tiene un estado: En cualquier momento, un proceso puede estar "en ejecución", "en pausa", "esperando", etc. Su estado incluye los valores actuales de las variables, qué instrucción se está ejecutando, etc.
Es concreto: Mientras el algoritmo es abstracto, el proceso es una realización tangible de ese algoritmo.

Algoritmo → La partitura musical.
Proceso → La interpretación en vivo de esa partitura por una orquesta. La partitura es siempre la misma, pero cada interpretación (proceso) es única, consume energía y tiene un inicio y un fin.
En resumen: el algoritmo es el "qué" y el "cómo" lógico, mientras que el proceso es el "hacer" físico y dinámico.

 Todo algoritmo puede ser implementado en un proceso, pero no todo proceso constituye un algoritmo.

 

  • Un algoritmo es un CONCEPTO - una secuencia lógica de pasos para resolver un problema

  • Un proceso es una EJECUCIÓN - una instancia en marcha de algún código (que puede o no seguir un algoritmo propiamente dicho)

     

    Ejemplos que lo demuestran:

    🔹 Procesos que NO son algoritmos:

  • Un proceso que simplemente espera una entrada del usuario sin hacer cálculos

  • Un proceso que monitoriza un sensor pero no transforma datos

  • Un "proceso zombi" en un sistema operativo que no realiza ninguna tarea útil

  • Un bucle infinito que no resuelve ningún problema específico

🔹 Procesos que SÍ implementan algoritmos:

  • Un proceso ejecutando el algoritmo de ordenamiento "Quicksort"

  • Un proceso calculando el camino más corto con el algoritmo de Dijkstra

  • Un proceso codificando un video usando algoritmos de compresión

     

     

    Los algoritmos son los "planes de acción"Los procesos son las "acciones en sí mismas".

     

    Diseño de Casos de Prueba

  • Algoritmo: Probamos la lógica - "¿Está bien diseñada la solución?"

  • Proceso: Probamos la ejecución - "¿Funciona correctamente en runtime?"

    Control de Calidad de Software

  • Verificación (Algoritmo): "¿Estamos construyendo el producto correctamente?"

    • Revisión de código

    • Análisis estático

    • Pruebas unitarias

  • Validación (Proceso): "¿Estamos construyendo el producto correcto?"

    • Pruebas de rendimiento

    • Pruebas de carga

    • Pruebas de usabilidad

3. Gestión de Procesos de Calidad

En normas como ISO 9001, se documentan:

  • Procedimientos (algoritmos): Los "cómos" paso a paso

  • Procesos: La ejecución real y su monitorización

4. Metrología y Calibración

  • Algoritmo: Procedimiento de medición estandarizado

  • Proceso: Aplicación real del procedimiento, considerando variables ambientales, desgaste de instrumentos, etc.


Ejemplo en Contexto de Calidad

Escenario: Control de calidad en una fábrica de automóviles

AspectoAlgoritmo (ESTÁTICO)Proceso (DINÁMICO)
InspecciónProcedimiento escrito: "Medir 10 puntos de soldadura"Inspector realizando las mediciones, con su variabilidad
ToleranciasEspecificación: "±0.5 mm"Mediciones reales obtenidas y su distribución
DocumentaciónChecklist de verificaciónRegistros de inspección completados

Herramientas de Calidad que Aplican Esta Distinción

  1. FMEA (Análisis de Modo de Fallo):

    • Fallo del algoritmo: Diseño incorrecto

    • Fallo del proceso: Ejecución errónea

  2. Control Estadístico de Procesos:

    • Monitoriza la ejecución (proceso), no el diseño (algoritmo)

  3. Auditorías de Calidad:

    • Verifican que los procesos siguen los procedimientos definidos (algoritmos)


Contexto de Calidad

En ingeniería de calidad, esta distinción es crucial porque:

  • El algoritmo representa el estándar de calidad esperado

  • El proceso representa la realidad medible y controlable

La calidad se asegura cuando los procesos se ejecutan consistentemente según los algoritmos/procedimientos definidos, dentro de los límites de control establecidos.

Comentarios