Modelo funcional definición del problema




descargar 99.09 Kb.
títuloModelo funcional definición del problema
fecha de publicación29.01.2016
tamaño99.09 Kb.
tipoDocumentos
b.se-todo.com > Derecho > Documentos

Introducción


El presente informe muestra el Modelo Funcional para el prototipo propuesto que ejemplificara el funcionamiento delOrquestador de Ejecución de Componentes de Software. El prototipo consiste en resolver el problema del agente viajero mediante la aplicación de algoritmos genéticos.

Aquí se efectúa el correspondiente análisis de requerimientos funcionales y no funcionales del sistema y los diseños de casos de uso.
Adicionalmente se especifican los requerimientos para el funcionamiento del Orquestador de Ejecución de Componentesse incluirán los casos de uso del orquestador también?.

OBJETIVOS




  • Identificar y definir los requerimientos funcionales y no funcionales del sistema.

  • Identificar y definir los requerimientos del componente Orquestador de Ejecución de componentes de software.

  • Identificar y especificar los casos de uso del sistema.

  • Identificar los actores que intervienen en la realización de los casos de uso.

  • Analizar la comunicación requerida en el sistema para llevar una respuesta a una solicitud del actor.


MODELO FUNCIONAL

DEFINICIÓN DEL PROBLEMA


(Agente Viajero)

Consiste en un agente de ventas que tiene que visitar n ciudades, comenzando y terminando en la misma ciudad, visitando solamente una vez cada ciudad, y haciendo el recorrido de costo mínimo, este costo de recorrido puede ser expresado en términos de distancia, es decir recorrer el mínimo de kilómetros posibles.

Se trata de un problema NP completo, en el que la única alternativa para su solución consiste en verificar todas las posibles opciones para encontrar cuál es la óptima, hay que tener en cuenta que si el número de ciudades es n, el número de posibles recorridos a ensayar resulta ser n!/2n. ref1.

A cada uno de los recorridos que puede realizar el viajero se le denomina viaje. Comprobar uno por una todos los posibles viajes para n ciudades requiere realizar n! sumas, por lo tanto se requiere utilizar algoritmos de búsquedas que permitan encontrar una solución optima.

USO DE ALGORITMOS GENETICOS PARA RESOLVER EL PROBLEMA DEL AGENTE VIAJERO


Un algoritmo genético puede encontrar una solución óptima al problema del agente viajero en una cantidad de tiempo razonable, aunque probablemente no sea la mejor solución.

Para llevar a cabo el algoritmo genético, es necesario definir inicialmente la cantidad de ciudades a visitar y las distancias entre ellas, esto para definir el tamaño que tendrá el cromosoma. Seguido de esto, se debe definir la función de aptitud donde serán evaluados los diferentes cromosomas que componen la población.

La población que se utilizará para la resolución del problema, en la primera generación, será creada de forma aleatoria, para ello se necesita definir el tamaño que tendrá durante toda la ejecución del algoritmo genético. (ref2 aqui esta la de alander) Alander (1992), basándose en evidencia empírica sugiere que un tamaño de población comprendida entre el número de ciudades y el doble de este tamaño es suficiente para atacar con éxito te tipo de problemas.
Una vez se realice la evaluación de los cromosomas mediante la función de aptitud, se debe realizar la selección de aquellos que son más aptos para la resolución del problema, para esto se deben utilizar diferentes técnicas de selección basadas en probabilidad.
Este procedimiento se repite n veces, de acuerdo al número de iteraciones establecidas para tratar de encontrar el cromosoma optimo, es decir el mejor viaje a realizar. Para seleccionar los individuos de la población inicial en cada iteración se toman los mejores individuos de la iteración inmediatamente anterior y se realizan operaciones de cruce, mutación o selección por torneo.

ref 1: http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t2geneticos.pdf página 18

ref 2: http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t2geneticos.pdf página 9

GLOSARIO



TECNOLOGÍA UTILIZADA


  • Modelamiento: Enterprise Architecte7.5

  • Diseño: Mozart Oz


REQUERIMIENTOS DE SOFTWARE

REQUERIMIENTOS FUNCIONALES




IDENTIFICADOR DEL RFUERIMIENTO

NOMBRE DE RFUERIMIENTO


RF-1

Establecer función objetivo


RF-2

Determinar numero de generaciones


RF-3

Determinar numero de ciudades


RF-3.1

El usuario debe ingresar el numero de ciudades


RF-4

Determinar nombre de ciudades


RF-5

Determinar Distancia entre ciudades


RF-5.1

Generar aleatoriamente distancia entre ciudades


RF-5.2

Permitir ingresar la distancia entre ciudades


RF-5.3

Permitir editar la distancia entre ciudades


RF-6

Determinar ciudad de origen


RF-7

Generar Población Inicial


RF-7.1

Determinar tamaño de población inicial


RF-7.2

Generar aleatoriamente la población inicial

(No estoy segura si estos son casos de uso aparte como lo tengo en el diseño o es solo uno y en la especificación es q se detalla)

RF-8

Se debe determinar el tamaño del cromosoma

RF-9

Se deben generar los Cromosomas

RF-9.1

Se debe generar aleatoriamente los genes que conforman un cromosoma (es decir las ciudades que conforman un cromosoma)

RF-9.2

Se debe asegurar que el primer gen de un cromosoma corresponda con la ciudad de origen

RF-9.3

Se debe garantizar que no se repita ningún gen dentro del cromosoma




Fitness

RF-10

El sistema debe evaluar cada cromosoma dentro de la función objetivo para obtener el fitness de cada uno de ellos.

RF-11

El sistema debe estar en la capacidad de seleccionar los “padres” de la siguiente generación.

RF-11.1

Se debe poder realizar la selección de padres por el método de la ruleta.

RF-11.2

Se debe poder realizar la selección de padres por el método elitista.

RF-11.3

Se debe poder realizar selección de padres por torneo.

RF-12

El sistema debe estar realizar la generación de nuevos individuos para la siguiente generación.

RF-12.1

Se debe poder realizar la reproducción por el método de cruce.

RF-12.1.1

Se debe poder realizar la reproducción por el operador de cruce basado en el orden (OX1).

RF-12.1.2

Se debe poder realizar la reproducción por el operador de cruce basado en una correspondencia parcial (PMX).

RF-12.2

Se debe poder realizar la reproducción por el método de mutación .

RF-12.2.1

Se debe poder realizar la reproducción por el operador de mutación basado en el desplazamiento (DM).

RF-12.2.2

Se debe poder realizar la reproducción por el operador de mutación basado en el cambio (SM).

RF-13

El sistema debe estar en la capacidad de realizar la generación de nueva población a partir de los individuos nuevos.

RF-13.1

Se debe tomar el 20 % de la población anterior e incluirlo en la nueva población.

RF-13.2

Tomar el 80% de los nuevos individuos e incluirlo en la nueva población.




Finalización del algoritmo




Luego de evaluar el número de generaciones ingresadas por el usuario, el sistema debe estar en la capacidad de mostrar el cromosoma que contiene el mejor fitness de la población.

X











RFUERIMIENTOS NO FUNCIONALES


IDENTIFICADOR DEL RFUERIMIENTO

NOMBRE DE RFUERIMIENTO

RFN-1

TIEMPO DE RESPUESTA.

RNF-1.1

No hay un parámetro de respuesta, Este tiempo viene determinado por el número de generaciones que el usuario quiera utilizar para encontrar la solución al problema del agente viajero.

Se espera que el tiempo de ejecución de cada corrida sea meno a un minuto.

RNF-2

INTERFAZ DE USUARIO.

RNF-2.1

Presentar al usuario una interfaz amigable.

RNF-2.2

El software debe proveer una navegación sencilla.

RNF-2.3


El software deberá tener una interfaz gráfica uniforme de las pantallas, menús y opciones, teniendo en cuenta factores como el tamaño de las pantallas, color, tipo de letra y la configuración de los campos de entrada.

RNF-2.4


Dentro de lo posible el software debe facilitar la entrada de datos a los usuarios, presentando listas de opciones que permitan escoger valores predeterminados.

RNF-3

REUSABILIDAD.

RNF-3.1


Los componentes desarrollados deben poder ser utilizados en otros desarrollos de Software.

RNF-4

MODULARIDAD.

RNF-4.1


El proceso de diseño deberá proveer una correcta modularidad, tal que permita agregar nuevas funcionalidades en etapas futuras sin traer grandes complicaciones.


RNF-5

TOLERANCIA A FALLAS

RNF-5.1

El software debe estar en la capacidad de manejar cualquier error que afecten la prestación estable del servicio.

RNF-5.2

Manejo de excepciones.

RNF-6

CONFIABILIDAD

RNF-6.1

La información otorgada por el aplicativo luego de la ejecución del algoritmo genético debe ser confiable.


MODELAMIENTO FUNCIONAL BASADO EN CASOS DE USO



DIAGRAMA GENERAL DE CASOS DE USO


ESPECIFICACION DE CASOS DE USO


Identificación:

CU-2.1

Caso de uso:

Ingresar datos de configuración del AG

Actores:

Usuario

Descripción:

El sistema debe permitirle al usuario ingresar el número de generaciones a evaluar para obtener una solución optima, además el usuario debe ingresar el numero de ciudades a recorrer por el viajero, asignar la distancia entre dichas ciudades y determinar cual será la ciudad de origen del recorrido

Tipo:

Primario

Precondiciones:

Ninguna

Postcondiciones:

Los parámetros

Referencias Cruzadas:




RFuerimientos asociados:




Escenario Normal

Acción actores

Respuesta sistema







Escenario Alternativo







Escenario Excepcional









cromosoma.jpg

CU-11 Generar Cromosoma


Versión

1.0

Autores

Leidy Patricia Garzón Rodríguez, Harry Alexis Sánchez Norato

CU Asociados

CU-8, CU-11, CU-12

Requerimientos Asociados

RF-9, RF-9.1, RF-9.2, RF-9.3

Descripción

El sistema genera los cromosomas que harán parte de la población inicial, asegurando que no se repitan las ciudades dentro de esta estructura

Precondiciones

CU-1 Ingresar datos de configuración inicial del AG, CU-6 Ejecutar Algoritmo Genetico

Secuencia



Postcondiciones



Frecuencia

Media

Importancia

Vital

Estado

Diseño

Comentarios





cu-6,7,8,9,10.jpg


CU-10 Evaluar "Fitnes"


Versión

1.0

Autores

Leidy Patricia Garzón Rodríguez, Harry Alexis Sánchez Norato

CU Asociados

CU-6, CU-7, CU-8, CU-9, CU-10

Requerimientos Asociados

RF-10

Descripción

El sistema calcula el fitness de cada cromosoma teniendo en cuenta en orden de las ciudades que posee para obtener la distancia total de ese recorrido

Precondiciones

CU-1 Ingresar datos de configuración inicial del AG, CU-6 Ejecutar Algoritmo Genetico, CU-8 Generar Poblacion

Secuencia



Postcondiciones



Frecuencia

Media

Importancia

Vital

Estado

Diseño

Comentarios








CU-18 Reproducción por mutación


Versión

1.0

Autores

Leidy Patricia Garzón Rodríguez, Harry Alexis Sánchez Norato

CU Asociados

CU-6, CU-7, CU-8, CU-9, CU-10

Requerimientos Asociados

RF-12, RF-12.2,RF-12.2.1,RF-12.2.2

Descripción

El sistema evalúa la opción de mutación del cromosoma padre, ya sea basada en el cambio o basada en el desplazamiento para generar un nuevo cromosoma

Precondiciones

CU-1 Ingresar datos de configuración inicial del AG, CU-6 Ejecutar Algoritmo Genético, CU-13 Selección de padres, CU-17 Generación de Individuos, CU-18 Realizar mutación basada en desplazamiento, CU-19 Realizar mutación basada en el cambio

Secuencia



Postcondiciones



Frecuencia

Media

Importancia

Vital

Estado

Diseño

Comentarios




similar:

Modelo funcional definición del problema icon1. El problema de la definición de la Psicoterapia

Modelo funcional definición del problema iconEl problema del conocimiento esta vinculado al problema de la verdad

Modelo funcional definición del problema iconEl problema del conocimiento esta vinculado al problema de la verdad

Modelo funcional definición del problema iconDesde la década de los cincuenta, se da un modelo más amplio, que...

Modelo funcional definición del problema iconBorderea (Borderea chouardii) Introducción y definición del problema
«Especies animales y vegetales de interés comunitario para cuya conservación es necesario designar Zonas Especiales de Conservación»...

Modelo funcional definición del problema iconLos signos vitales son una herramienta valiosa como indicador del estado funcional del paciente

Modelo funcional definición del problema iconEl modelo de análisis aplicado, conocido como “modelo animal multicarácter”,...

Modelo funcional definición del problema iconActividad 3: Árbol funcional del sitio

Modelo funcional definición del problema iconResumen nuestro objetivo fue evaluar los síntomas del síndrome de...

Modelo funcional definición del problema iconEscribió: «Para resolver un problema referente a números o relaciones...
«Para resolver un problema referente a números o relaciones abstractas de cantidades basta con traducir dicho problema, del inglés...




Todos los derechos reservados. Copyright © 2019
contactos
b.se-todo.com