Post on 11-Apr-2015
Estructura de la Simulación completa
Practicas EDIJuan Ramón Pérez Pérez
Objetivos de la simulación – Parte 1 Diseño de la simulación individual Adaptación a objetos específicos Estructura básica de la simulación
Prácticas EDI - © Juan Ramón Pérez2
Objetivos de la simulación - Parte 2 Interpretación del fichero de órdenes Lectura y operaciones con ficheros de entrada
Validación del grafo: comprobar nodos fuente, sumidero y aislados
Estructura completa de la simulación Utilización del grafo Contador de pasos de la simulación Mensajes a pantalla y a fichero de log
Realización de consultas
Prácticas EDI - © Juan Ramón Pérez3
Fichero de ordenes extendido
Prácticas EDI - © Juan Ramón Pérez4
<ordenes>
<simulacion path="resultado1.txt">
<datos doc="datos.xml" />
<parametro caminos="false" />
</simulacion>
<simulacion path="resultado2.txt">
<union doc1="datos_suc1.xml" doc2="datos_suc2.xml" />
<parametro caminos="true" />
<consulta codigo="pa005e" pasos="3" />
<consulta codigo="pa005e" pasos="8" />
<consulta codigo="fr002h" pasos="8" />
</simulacion>
<simualcion path="resultado3.txt">
<interseccion doc1="datos_suc1.xml" doc2="datos_suc2.xml" />
<parametro caminos="true" />
<consulta codigo="fr002h" pasos="17" />
</simulacion>
</ordenes>
Varias simulaciones en el mismo fichero
Carga de los ficheros de entrada
Tipo simulación
Realización de consultas
Fichero del log de la simulación
Diagrama de estados de la simulación (caminos=false)
Prácticas EDI - © Juan Ramón Pérez5
SeleccionarSiguiente nodo
Llegada alnodo
Acciones sobre el elemento relacionado
con este nodo
[No quedan elementospor gestionar]
[Quedanelementos]
Cambio estado mercancía
Mensaje de llegada
Mensaje de acción
Diagrama de estados de la simulación (caminos=true)
Prácticas EDI - © Juan Ramón Pérez6
SeleccionarSiguiente nodo
Llegada alnodo
Acciones sobre todos los elementos relacionados
con este nodo
[No quedan elementospor gestionar]
[Quedanelementos]
Cambio estado mercancía
•Mensaje de paso•Mensaje de llegada
Mensaje de acción
Tener en cuentael grafo
Contador de pasos
Seleccionar siguiente nodo En cada momento debemos tener almacenado
el nodo actual donde nos encontramos Buscar el objeto de la simulación que tenga
un destino más cercano al nodo actual. Utilizar Floyd para hacer este cálculo.
Prácticas EDI - © Juan Ramón Pérez7
Llegada al nodo Establecer el camino hacia el nodo destino,
teniendo en cuenta los nodos intermedios. Mostrar mensaje de “Llegada a un nuevo
lugar” por cada nodo que tenga que atravesar, ya sea nodo intermedio o nodo destino.
Contar un paso por cada nodo que tiene que atravesar.
Prácticas EDI - © Juan Ramón Pérez8
Acciones sobre los elementos relacionados con este nodo Recorrer el array de los objetos de la
simulación que quedan Y buscar los que tengan el destino al que
hemos llegado Poner el mensaje de acción correspondiente Cambiar sus estados Los eliminamos del conjunto, a no ser que
tenga que realizar otras acciones sobre ellos.
Prácticas EDI - © Juan Ramón Pérez9
Consultas Cuando alcancemos el número de pasos indicado
en la consulta. Buscamos el objeto de la simulación con el código
indicado en la consulta. Para esta operación utilizamos la tabla hash. Aunque borremos un objeto de la simulación del
conjunto, en la tabla hash permanecerá a lo largo de toda la simulación.
Nuevo mensaje de consulta: Consulta sobre el objeto <descripción del elemento de la simulación> (<código>) después de <n> pasos de simulación, su estado es: <estado>
Prácticas EDI - © Juan Ramón Pérez10
Mensajes
Prácticas EDI - © Juan Ramón Pérez11
Los mensajes aparecerán relacionados con dos tipos de eventos: Llegada a un nuevo lugar
Desplazamiento hacia <nombre lugar> Acción sobre un objeto de la simulación
<Acción> sobre el objeto <descripción del elemento de la simulación> (<código>) en: <nombre del lugar>
Puede haber más de una acción sobre los objetos, por tanto habrá que utilizar el mensaje correspondiente a la acción realizada.
Los mensajes, además de aparecer por pantalla, deben volcarse a un fichero de texto indicado como propiedad del elemento simulación.
Tareas Integrar EDI-SIM: conjunto, tabla hash y grafo,
con las clases de la simulación Completar todo el ciclo de la simulación:
Interpretación del fichero de ordenes Lectura de ficheros de datos y operaciones con
conjuntos Lectura del fichero red, carga sobre el grafo y
verificación Realización del bucle de la simulación en los dos
modos de simulación Incluir el contador de pasos Realización de consultas Mostrar mensajes por pantalla y volcarlos a fichero
Prácticas EDI - © Juan Ramón Pérez12