Tema 3:
GILMAR ARAY C.I:
27.341.757
JESUS DIAZ C.I:
27.710.714
MARIA CENTENO
C.I:27.476.109
TIPOS
DE ALGORITMOS
A) Según el sistema de signos con el
que describen los pasos a seguir, se reconocen:
–Algoritmos
cualitativos: cuando se hace a través de palabras, es decir, las instrucciones
son verbales. Sucede, por ejemplo, con recetas de cocina.
–Algoritmos
cuantitativos: cuando se hace a través de cálculos numéricos. Se puede hacer un
algoritmo, por ejemplo, para obtener la raíz cuadrada de un número.
B) Según su función, los algoritmos
pueden ser:
–Algoritmos
de ordenamiento: secuencian los elementos que ingresan a
partir de un cierto orden, en general, según un orden numérico o léxico.
–Algoritmos
de búsqueda: al contrario de realizar operaciones o
secuenciar elementos, se dedica a encontrar dentro de una lista que ingresa,
uno o varios elementos en particular que cumplan con el conjunto de condiciones
dadas.
–Algoritmos
de encaminamiento: deciden de qué modo se deberá transmitir
algo que llega, y cómo seguirá un conjunto de pasos encadenados. Se dividen
fundamentalmente entre adaptativos y estáticos, los primeros con cierta
capacidad de aprendizaje y ajuste a la circunstancia, mientras que los segundos
funcionan mecánicamente, siempre del mismo modo. Es importante decir que los
algoritmos de encaminamiento cuentan con una propia subdivisión, según el
camino que se toma para que la transmisión llegue de manera efectiva (ejemplos
de estos tipos son: por el camino más corto, de manera óptima, basado en el
flujo, etc.).
C)
También los algoritmos han sido clasificados según la estrategia que se utiliza
para llegar al resultado. Veamos algunos ejemplos:
–Algoritmos
probabilísticos: no se puede estar seguro de la exactitud
de la respuesta que darán. Se agrupan en distintos subtipos, pero con esa
premisa: o bien presentan soluciones aproximadas del problema, o bien presentan
soluciones que pueden ser correctas, pero también erróneas.
–Algoritmo
cotidiano: es el que se da en la vida común de las personas, no
se aplica en sistemas informáticos ni en nada ajeno al día a día. Muchas de las
decisiones que se toman desde que uno se despierta por la mañana pertenecen a
este grupo.
–Algoritmo
heurístico: abandona alguno de los objetivos como
recurso para terminar llegando a la solución. En general, son utilizados cuando
no existe una solución mediante las vías tradicionales.
–Algoritmo
de escalada: se comienza con una solución
insatisfactoria (que no cumple la entrada y la salida), y se la va modificando
aproximándose a lo que se busca. En algún momento, estaremos cerca de (o llegaremos
a) la solución correcta.
–Algoritmo
voraz: Con la idea de llegar a una solución óptima
definitiva, elige analizar cada paso como único y elegir la solución óptima
para ese paso.
–Algoritmo
determinista: es completamente lineal (cada paso tiene
un paso sucesor y un paso predecesor) y por lo tanto predictivo, si se conocen
sus entradas y su forma de proceder. El algoritmo de Euclides, que permite
averiguar el máximo común divisor entre dos números, responde a este tipo. Se
distinguen de los no deterministas, donde el algoritmo tiene un comportamiento
en forma de árbol.
Este comentario ha sido eliminado por el autor.
ResponderBorrarGrupo: Argenis Chacon (28139550), Selena Velásquez (27.243.082) y José Suarez (24.591.130)
ResponderBorrarNos parece que abordaron bien el tema!, de manera breve y simple. De esta manera, queremos agregar que:
El uso de los tipos de algoritmos en informática determina el éxito del funcionamiento de un programa.
Al clasificar los tipos de algoritmos no completamente todos pueden ser clasificados según su naturaleza o función, para muchos es más exacto simplemente una descripción. Dicho esto, también los algoritmos se dividen en:
• Estáticos: Cuyo funcionamiento siempre es el mismo.
• Adaptativos: Inteligentes hasta cierto punto de programación.
Existen muchos algoritmos matemáticos aplicados a la informática, conviene conocerlos todos para lograr desarrollar el mejor funcionamiento de un programa, también porque ayudan a ordenar el trabajo en numerosas disciplinas.
Thayris Navarro, Rubén Farías y mi persona Analis Caldera.
ResponderBorrarNuestro grupo ha llegado a la conclusión que, la manera de cómo desarrollaron su tema ha sido el correcto, ya que consideramos que la información presentada se entiende fácilmente, solo queremos ampliar su información porque hemos investigado y encontramos otros tipos de algoritmos según su signo y función.
Según su sistema de signos se encuentra:
Algoritmo computacional: se emplean con una computadora, por ser complejos es necesario ser desarrollados en una maquina (también son considerados algoritmos cuantitativos que se optimizan)
No computacional: como su nombre lo indica estos algoritmos no se puede desarrollar mediante una computadora, ejemplo programación de un televisor
Según su función:
Algoritmo marcaje: utiliza la automatización para fijar precios de forma dinámica basándose en factores como el comportamiento de cliente, este ha sido una práctica común en las industrias aéreas desde la década de 1990.el algoritmo de marcaje puede ser impopular con los clientes, ya que las personas tiende a alorar la estabilidad y la imparcialidad.
Programación dinámica: Es el método en donde un algoritmo computa el resultado, puesto que la solución de un elemento del problema depende de una serie de dificultades más reducidas. Esto crea un ciclo que se vuelve tedioso, puesto que nuevamente se deba computarizar los mismo valores una y otra vez, pero utilizando la programación dinámica nos ahorramos tiempo ya que este nos recuerda el resultado de cada sub-problema, cuando sea necesario.
Vuelta atrás: Su finalidad es encontrar todas las posibles soluciones al problema planteado. Puede ser revocado para estudiar el impacto que ha causado en los mercados, economía, en el marcaje de precios, sociedad y en las operaciones.
Con esto ampliamos un poco más la información y así podemos tener más conocimiento al momento de saber que algoritmo debemos emplear de acuerdo al problema que queramos desarrollar.
Susana Barceló y Luis Rosal
ResponderBorrarExcelente trabajo, mi grupo quedó satisfecho porque su investigación es precisa. Solo agregaremos algunos ejemplos y las reglas esenciales de algoritmos.
Según sistema de signos:
Cualitativos. Ejemplo: Se dispone de un grifo de agua – jabón – papel y corriente de aire caliente.
-INICIO
-Abrir el grifo de agua.
-Mojarse las manos.
-Aplicarse jabón.
-Enjuagarse las manos.
-Cerrar el grifo de agua.
-Secarse las manos con papel.
-Exponer las manos a corriente de aire caliente.
-FIN
Cuantitativos. Ejemplo: Obtener la suma de 2 números.
1. Inicio
2. Declarar (a,b,c)
3. Ingresar (a,b)
4. c=a+b
5. Mostrar (c)
6. Fin
Según su estrategia:
Algoritmo Voraz.Ejemplo: Este algoritmo se llama camino; el problema que resuelve es el de encontrar una buena ruta en un grafo el cual está representado por una matriz de adyacencia y así decir cual es el mejor camino para ir de un nodo a otro.
//Encontrar una "buena ruta" para ir entre dos lugares
void camino (matriz grafo, int inicio, int fin)
{
int i,j, menor=grafo[inicio][inicio], pos;
i=inicio;
if(inicio==fin)
{
printf("%d", grafo[inicio][fin]);
}
else
{
while(i!=fin)
{
for(j=1; j<n; j++)
{
if(grafo[i][j]!=-1)
{
if(grafo[i][j]< menor)
{
menor=grafo[i][j];
pos=j;
}
}
}
printf("%d", i);
i=pos;
}
}
}
Algoritmo Cotidiano. Ejemplo: A partir de los siguientes datos, desarrolla un algoritmo para llenar un vaso de agua.
– Un vaso
– Un grifo
INICIO
1- Tomar el vaso
2- Abrir el grifo
3- Colocar el vaso bajo el grifo
4- Esperar que el vaso se llene
5- Retirar el vaso
6- Cerrar el grifo
FIN
Reglas de algoritmos:
1. El algoritmo debe escribirse como una expresión en algún lenguaje:
-Descripción narrada.
-Notación matemática.
-Pseudocódigo.
-Diagramas de flujo.
-Lenguaje de computadora.
2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo.
3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de pasos.