You are on page 1of 72

ING. JUAN PABLO SOLORZANO MSC.

Consultor

Gua de Referencia
CUBE 5.0
GUIA DE REFERENCIA

Fuente: CUBE BASE y Voyager 5.0


Juan Pablo Solrzano

Basado en el manual de referencia en ingls desarrollado por Citilabs. Citilabs es una marca registrada de Citilabs Inc.
CUBE 5.0

Tabla de contenido
1 ADMINISTRACIN DE GEODATABASES........................................................................................... 1

1.1. Creacin y utilizacin de geodatabases .............................................................................................................. 2


1.1.1. Para crear un geodatabase ............................................................................................................................... 2
1.1.2. Para abrir un geodatabase existente ................................................................................................................ 2

1.2. El Administrador de Geodatabase ..................................................................................................................... 3


1.2.1. Crear informacin nueva .................................................................................................................................. 4

1.3. La ventana de GIS .............................................................................................................................................. 6


1.3.1. Agregar informacin ......................................................................................................................................... 6
1.3.2. Edicin de datos ............................................................................................................................................... 6
1.3.3. Grabar mapas ................................................................................................................................................... 8

2 CATLOGOS Y APLICACIONES ............................................................................................................ 9

2.1. Catlogos ........................................................................................................................................................... 9


2.1.1. Creacin de catlogos....................................................................................................................................... 9
2.1.2. Componentes del catlogo ............................................................................................................................. 10

2.2. Escenarios .........................................................................................................................................................11


2.2.2. Opciones ......................................................................................................................................................... 11

2.3. Aplicaciones......................................................................................................................................................13
2.3.1. Jerarqua de la aplicacin ............................................................................................................................... 13
2.3.2. Creacin de una aplicacin ............................................................................................................................. 14

2.4. Programas mdulos .......................................................................................................................................15


2.4.1. Datos de entrada y salida ............................................................................................................................... 16
2.4.2. Enlaces a archivos existentes ......................................................................................................................... 17
2.4.3. Creacin/enlace de archivos nuevos .............................................................................................................. 17
2.4.4. Enlaces entre salidas y entradas ..................................................................................................................... 18
2.4.5. Grupos ............................................................................................................................................................ 19
2.4.6. Datos de entrada y salida pblicos ................................................................................................................. 20

2.5. Controles avanzados .........................................................................................................................................21


2.5.1. LOOPS (bucles) ............................................................................................................................................... 21

2.6. Administrador de Escenarios ............................................................................................................................23


2.6.1. Variables clave (keys) ..................................................................................................................................... 23
2.6.2. Utilizacin de variables clave en una aplicacin ............................................................................................. 24
CUBE 5.0

2.6.3. Creacin de escenarios ................................................................................................................................... 25

3 CUBE VOYAGER..................................................................................................................................... 27

3.1. Introduccin a la programacin (scripting) .......................................................................................................27


3.1.1. Reglas Generales ............................................................................................................................................ 27
3.1.2. Operaciones bsicas ....................................................................................................................................... 28

3.2. Redes ................................................................................................................................................................29


3.2.1. Creacin de redes (Network) .......................................................................................................................... 29
3.2.2. Extraccin de informacin (skims) (Highway) ................................................................................................ 31

3.3. Matrices ...........................................................................................................................................................33


3.3.1. Procesamiento de matrices (MATRIX) ............................................................................................................ 33

3.4. Generacin de viajes.........................................................................................................................................39


3.4.1. Entradas y salidas ........................................................................................................................................... 39
3.4.2. Variables ......................................................................................................................................................... 39
3.4.3. Estructura ....................................................................................................................................................... 39
3.4.4. Proceso ........................................................................................................................................................... 40
3.4.5. Ejemplo ........................................................................................................................................................... 40

3.5. Distribucin y proyeccin de matrices ..............................................................................................................42


3.5.1. Distribucin Modelo Gravitacional ................................................................................................................. 42
3.5.2. Expansin de matrices (FRATAR) .................................................................................................................... 45

3.6. Eleccin modal..................................................................................................................................................47


3.6.1. El mdulo MATRIX .......................................................................................................................................... 47

3.7. Asignacin de viajes ..........................................................................................................................................51


3.7.1. El mdulo HIGHWAY....................................................................................................................................... 51
3.7.2. Obteniendo medidas de desempeo de la red .............................................................................................. 56

4 TRANSPORTE PUBLICO ..................................................................................................................... 57

4.1. Creacin / edicin de rutas ...............................................................................................................................58

4.2. El mdulo PUBLIC TRANSPORT .........................................................................................................................62


4.2.1. Entradas y Salidas ........................................................................................................................................... 62
4.2.2. Estructura ....................................................................................................................................................... 65
4.2.3. Proceso ........................................................................................................................................................... 66
4.2.4. Funcionalidad ................................................................................................................................................. 66
4.2.5. El script ........................................................................................................................................................... 67
4.2.6. Resultados ...................................................................................................................................................... 67
CUBE 5.0

1
Captulo

1 ADMINISTRACIN DE GEODATABASES

Este captulo describe las opciones de menu y funciones que se pueden utilizar
cuando se trabaja con geodatabases en Cube.

U n geodatabase es una base de datos en la cual se puede guardar


informacin geogrfica. Un geodatabase guarda y organiza informacin,
y relaciona la informacin espacial con informacin de atributos. Cube
puede acceder a la informacin en el geodatabase y presentar la informacin, as
como utilizarla en los procesos de modelacin.

El formato de geodatabase est derivado el formato de geodatabase personal


utilizado en ESRI ArcGis 9.2, este formato utiliza un archivo de formato .mdb de
Microsoft Access 2003.

Nota del autor: Si bien la versin 5.0 de Cube, tiene un gis integrado (ArcEngine 9.2), es
recomendable mantener un GIS completo (ej. Arcgis 9.x) para editar y crear informacin geogrfica,
puesto que estos sistemas tienen muchas ms herramientas de edicin y manipulacin de datos.

Juan Pablo Solorzano Ing. MSc. - Consultor 1


CUBE 5.0

1.1. Creacin y utilizacin de geodatabases

1.1.1. Para crear un geodatabase


1. Del men File, escoja New.

2. Selecciones New Geodatabase.

Cube abre la ventana de dialogo para Crear Geodatabase

3. Defina el nombre del nuevo geodatabase

Selecciones el botn Browse para abrir un cuadro de dilogo en el cual puede navegar el
sistema de archivos para seleccionar la ubicacin del archivo. Seleccione la opcin To store
CubeGis Networks, para poder guardar redes en el geodatabase.
4. Seleccione Create para crear el geodatabase.

5. Cuando apareza la pregunta Open it now?, seleccionar Yes, para abrir la base geogrfica
creada.

Cube abrir el administrador de Geodatabase para la nueva base creada.

1.1.2. Para abrir un geodatabase existente


1. Del men File:

Seleccione Open para seleccionar un archivo existente de Geodatabase (archivo .mdb).


En el tipo de archivo seleccione GIS files (*.mdb, *.mxd)
Seleccione el archivo y presione Open.
Cube abrir el administrador de Geodatabase para la base seleccionada.

Juan Pablo Solorzano Ing. MSc. - Consultor 2


CUBE 5.0

Tambin se puede utilizar el botn de administrador de geodatabase.


1.2. El Administrador de Geodatabase
El administrador muestra los contenidos del geodatabase.

La ventana principal lista la informacin de la jerarqua de la informacin del


geodatabase. La ventana divide la informacin en cuatro categoras:
Networks (redes): Sets interconectados de puntos y lneas que representan las
posibles rutas entre una ubicacin y otra.
Feature Datasets: Colecciones de clases geogrficos guardados en conjunto que
comparten una misma proyeccin. Una clase geogrfica (feature class) es una
colecciones de elementos geogrficos con el mismo tipo de geometra (punto,
lnea, o polgono), los mismos atributos y la misma referencia espacial.
Stand-alone Feature Classes: clases geogrficas independientes, especificadas
con una referencia especial
Tables (tablas): grupos de elementos de informacin, arreglados en filas y
columnas. Incluye informacin de tablas importadas de archivos dBase y otros
formatos.

En la parte inferior, existen una serie de botones que permite realizar varias
tareas:
Open Other GDB Abrir otro geodatabase.
Create New GDB Create un nuevo geodatabase.
Properties Ver informacin del geodatabase.
Refresh View refrescar la ventana para visualizar cambios.
Close Cerrar el administrador de geodatabase.
Import Importar redees binarias, archives de transporte public, archivos shape
(.shp), o archivos DBF
Export Exportar la informacin geogrfica a otros formatos
Copy Copiar datos a otro geodatabase

Juan Pablo Solorzano Ing. MSc. - Consultor 3


CUBE 5.0

Rename Renombrar la informacin


Delete Borrar informacin del geodatabase.
Spatial Ref Alterar la proyeccin geogrfica.
Compact Comprimir el geodatabase para ahorrar espacio.
New Crear nuevos datos geogrficos, redes, tablas, etc.

Al hacer doble clic sobre una clase geogrfica, automticamente el programa


agrega el mismo a una ventana de GIS, de manera que puede ser visualizado o
editado.

1.2.1. Crear informacin nueva


1. En el administrador de geodatabase seleccine New.

En la ventana selecciones el tipo de informacin a crearse

2. En New Data Name, ingrese el nombre del elemento

3. En la siguiente ventana seleccione No, para especificar una proyeccin geogrfica.

4. A continuacin seleccione el sistema de proyeccin geogrfico deseado

Nota del autor: En el Ecuador, tradicionalmente se ha utilizado la proyeccin PSAD56


zona 17S, sin embargo se recomienda utilizar la proyeccin WGS1984 zona 17S, la cual
es compatible con aplicaciones GPS.

Juan Pablo Solorzano Ing. MSc. - Consultor 4


CUBE 5.0

5. En la ventana siguiente ingrese la informacin de atributos (campos) que desea ingresar en el


elemento.

En la columna New Name, ingrese el nombre del atributo


En la columna Type ingrese el tipo de datos (N:numrico, F:flotante, C:texto, L:lgico,
D:fecha).
En la columna Width ingrese el ancho del campo, para los datos numricos esto es ingresado
automticamente.
En el campo Decimals ingrese el nmero de decimales para los campos numricos
Utilice los botones de la parte superior para insertar, agregar, o reordenar los atributos
(campos).

6. Presione Update para finalizar.

El programa confirmar la creacin del elemento.


7. Haga doble clic sobre el elemento para mostrarlo en una ventana de GIS.

Juan Pablo Solorzano Ing. MSc. - Consultor 5


CUBE 5.0

1.3. La ventana de GIS


La ventana de GIS contiene un mapa, una table de contenidos que permite
seleccionar y navegar a traves de las capas del mapa, y una serie de
herramientas que permiten trabajar con la informacin.

1.3.1. Agregar informacin


1. Del men Datasets, seleccione Add Geodatabase Data.

El administrador de Geodatabase se abre y muestra la informacin disponible.


Seleccione el elemento que desea agregar y presione el botn Add Data to Map.

2. Presione Close para cerrar el administrador

1.3.2. Edicin de datos


Cuando tenga informacin mostrada en el mapa, es posible trabajar en modo de
edicin de datos, para modificar y crear datos.

Juan Pablo Solorzano Ing. MSc. - Consultor 6


CUBE 5.0

Para habilitar el modo de edicin seleccione el men Editor, y luego la opcin


Start Editing. Para prevenir corrupcin de datos, el programa nicamente
graba las ediciones cuando se selecciona la opcin Save Edits, o cuando se
confirma una vez que se selecciona la opcin Stop Editing.

Una vez que se encuentra en modo de edicin existen tres tareas posibles, las
cuales se seleccionan en el listado denominado Tasks

Edit Feature (editar elemento): para deditar elementos existentes


Create feature (crear elemento): para crear elementos nuevos
Selec feature (seleccionar elemento): para seleccionar elementos existentes

En el recuadro layers se debe seleccionar la capa en la cual se desea realizar las


ediciones o creaciones de elementos.

Para crear elementos se debe seleccionar la flecha de la barra de


herramientas y hacer clic a lo largo del elemento Nuevo, de manera similar a lo
acostumbrado en sistemas CAD de dibujo.

Para finalizar un elemento tipo lnea, polgono o red, basta con realizar doble
clic.

Dependiendo del tipo de elemento, una vez que ha finalizado podr ingresar la
informacin de atributos correspondientes al elemento. Caso contrario podr
seleccionar la tarea Edit Feature, para ingresar la informacin.

Una vez que ha finalizado la edicin debe seleccionar Editor-Save Edits para
guardar la informacin editada.

Juan Pablo Solorzano Ing. MSc. - Consultor 7


CUBE 5.0

1.3.3. Grabar mapas


Un mapa permite guardar informacin de las capas incluidas y sus atributos de
representacin.

1. Del men File seleccione Save.

2. Navegue a la ubicacin deseada

3. Ingrese el nombre del archivo del mapa (.mxd)

Para recuperar el mapa, utilize el men File Open y seleccione en tipo de archivo Gis data, y
navegue hasta la ubicacin del archivo.

Nota del autor: Un archivo de mapa (.mxd) nicamente contiene informacin de las capas
que constituyen el mapa (ubicacin de los archivos) y la configuracin de visualizacin del
mismo. Es decir un archivo .mxd sin los datos geogrficos adjuntos (los archivos o
geodatabases), no es suficiente para mostrar la informacin.

Juan Pablo Solorzano Ing. MSc. - Consultor 8


CUBE 5.0

2
Captulo

2 CATLOGOS Y APLICACIONES

2.1. Catlogos
Un catalogo define una o varas aplicaciones para ser ejecutadas, las entradas
variables denominadas keys, y los escenarios que contienen los valores de cada
variable clave (key). Toda esta informacin se encuentra guardada en un
archivo de catlogo.

2.1.1. Creacin de catlogos


La forma de crear un catlogo es a travs del men File-new-catalog, el archivo
puede ser creado en cualquier lugar, pero recuerde que este archivo
corresponde a una definicin de informacin que ser utilizada en un grupo de
aplicaciones, por lo tanto debera estar ubicado naturalmente en el mismo sitio
que estas.

Es posible tambin crear un nuevo catlogo en la pantalla inicial de CUBE,


seleccionando la ltima opcin.

Para abrir un catalogo se utiliza el men File-Open Catalog, o en la pantalla inicial


de CUBE al seleccionar Open your Last Catalog (abrir ltimo catlogo) u OPen an
Existing Catalog (abrir un catlogo existente).

Para grabar los cambios en un catlogo utilice el men Save Save Catalog, o el
icono de disquete ubicado en la parte superior del administrador de escenarios
(en color negro, no confundirse con el disquete ubicado en la barra de

Juan Pablo Solorzano Ing. MSc. - Consultor 9


CUBE 5.0

herramientas de color azul utilizado para grabar aplicaciones y archivos que


estn siendo editados).

2.1.2. Componentes del catlogo


Una vez creado un catlogo aparecer el panel del administrador de escenarios
en la parte izquierda del programa. Dependiendo de la configuracin este panel
estar compuesto de 4 partes (el orden puede variar), Escenarios (scenarios),
Aplicaciones (applications), Datos (data) y Variables clave (keys), tal como se
muestra en la figura siguiente.

Ntese que con excepcin del casillero de Escenarios, todos las dems estn
vacas, esto se debe a que todo catlogo debe tener un escenario base. No se ha
especificado ninguna aplicacin, o variable clave (key) an, por eso los casilleros
correspondientes estn vacos.

Los componentes se describen a continuacin, cada uno de ellos ser tratado en


secciones posteriores con mayor detenimiento

Juan Pablo Solorzano Ing. MSc. - Consultor 10


CUBE 5.0

2.2. Escenarios
El casillero de escenarios como su nombre lo indica contiene los escenarios
incluidos en el catlogo, cada escenario contiene valores para cada una de las
variables clave (keys) especificadas. Los escenarios son jerrquicos (a partir de
uno Base por defecto), y se puede tener un sinnmero de ellos.

2.2.1.1. Aplicaciones

En este casillero se encuentran todas las aplicaciones correspondientes al


catlogo, en una aplicacin se encuentran los procesos de un modelo de
planificacin de transporte.

Se pueden agregar cuantas aplicaciones como se desee, estas pueden ser


aplicaciones vacas (nuevas), aplicaciones existentes, o simplemente scripts.

2.2.1.2. Datos

El casillero de datos permite ver directamente, sin necesidad de ir a cada


aplicacin, los datos de entrada y salida correspondientes a cada escenario.
Tambin contienen los reportes especificados por el usuario.

2.2.1.3. Keys (variables clave)

Contienen todas las variables clave y los valores correspondientes a cada


escenario. En este casillero se pueden agregar ms variables o editar los valores
ingresados.

Las variables como su nombre lo indica se utilizan para variar datos cada vez
que se ejecuta una aplicacin.

2.2.2. Opciones
Para acceder a la configuracin del administrador de escenarios se utiliza el
men Utilities-Options-Scenario Manager Scenario - Settings con el cual aparecer
el cuadro siguiente.

Figura 2-1 Configuracin del Administrador de Escenarios

Juan Pablo Solorzano Ing. MSc. - Consultor 11


CUBE 5.0

El primer grupo de opciones corresponde a lo que sucede cuando un nuevo


escenario es creado, la primera opcin indica que apenas se crea un escenario
un directorio es creado para este, la segunda que el usuario debe ingresar las
propiedades del mismo, y la tercera que se mostrarn las variables clave para el
nuevo escenario para ser ingresadas por el usuario.

A continuacin se indica si en el casillero de aplicaciones se desea incluir el


nombre de la aplicacin o el nombre del archivo de la aplicacin, y finalmente se
puede seleccionar si se desea incluir el nombre del escenario base como parte
del nuevo escenario creado, (ej. Base.ao2005).

El catlogo tambin tiene opciones configurables que aplican nicamente a ese


catlogo. Para configurarlas es necesario presionar con el botn derecho del
ratn sobre la ceja que contiene el nombre del catlogo en la parte superior del
administrador de escenarios, y seleccionar Properties.

Figura 2-2 Seleccin de propiedades del catlogo

Una vez seleccionada la opcin aparecer la ventana correspondiente indicada a


continuacin la cual tiene informacin del catlogo as como varios campos que
pueden ser editados.

Figura 2-3 Propiedades del catlogo

En la primera ceja se puede configurar la descripcin, la ubicacin del directorio


base (donde se guardaran los subdirectorios de cada escenario). En la parte
inferior existen dos opciones Model Developer y Model Applier. Estas opciones

Juan Pablo Solorzano Ing. MSc. - Consultor 12


CUBE 5.0

permiten indicar quien va a ser el usuario del catlogo, el desarrollador del


modelo o el que lo va a aplicar respectivamente, es decir una vez finalizado el
desarrollo de un modelo se debera seleccionar Model Applier para evitar cambios
no deseados en la estructura del mismo. Tambin es posible proteger el catlogo
mediante una clave.

La segunda ceja contiene la configuracin correspondiente a la presentacin de


la informacin en el casillero de datos, y la tercera ceja corresponde a la
configuracin visual del catlogo en lo que respecta al ingreso de valores de las
variables (colores y dibujos).

Finalmente es posible configurar los casilleros que quieren ser mostrados


utilizando el men Scenario-View-Show

2.3. Aplicaciones
Una aplicacin contiene los procesos individuales que conforman un proceso de
anlisis de transporte. Los procesos individuales se los puede realizar en
cualquiera de los programas de CUBE como son: Voyager, Tranplan o TRIPS. Las
aplicaciones son manejadas a travs del Application Manager y tienen por lo
general una extensin .app.

2.3.1. Jerarqua de la aplicacin


Una aplicacin en Cube es de tipo diagrama de flujo jerrquico, el cual permite
una visualizacin clara de los procesos individuales dentro del proceso global, el
flujo (traspaso) de informacin de un proceso a otro y el orden en el cual se
ejecutan los procesos.

Figura 2-4 Vista del Application Manager

Juan Pablo Solorzano Ing. MSc. - Consultor 13


CUBE 5.0

2.3.2. Creacin de una aplicacin


Una vez que se ha creado un catlogo es posible agregar una o varias
aplicaciones al mismo. Para cumplir esto primero se debe crear la aplicacin
accediendo al men File-New-New Application, inmediatamente aparecer una
ventana solicitando informacin sobre la aplicacin, tal como se indica en la
figura siguiente.

La informacin que se debe ingresar es el nombre de la aplicacin (Application


Group Name), el cdigo de dos caracteres de la aplicacin (Application Group
Code), y el tipo de aplicacin correspondiente a Voyager, Trips, TP+ o Tranplan,
este ltimo depende del programa a utilizarse, no todas las opciones estarn
activadas dependiendo del tipo de licencia disponible. Adems existe la
posibilidad de ingresar descripciones adicionales, imgenes de fondo y versiones
de la aplicacin (para mantener versiones antiguas sin modificar).

Una vez ingresada esta informacin aparecer una ventana en la cual se debe
indicar el nombre y ubicacin del archivo (por lo general se recomienda utilizar
el mismo directorio en el cual se encuentra el catlogo, o de preferencia un
subdirectorio de este).

Posteriormente es necesario agregar la aplicacin al catlogo para lo cual se


hace clic derecho sobre el casillero de Aplicaciones en la parte izquierda de la
ventana y se selecciona Add Application. Luego se debe indicar al programa la
ubicacin fsica en el disco del archivo de aplicacin. Cuando se ha finalizado

Juan Pablo Solorzano Ing. MSc. - Consultor 14


CUBE 5.0

esta operacin la aplicacin aparecer en el listado de aplicaciones del


administrador de escenarios.

Para abrir una aplicacin que ha sido agregada al catlogo (administrador de


escenarios) solo basta con hacer clic simple con el botn izquierdo sobre la misa.

2.4. Programas mdulos


Cada proceso individual dentro de Cube se lleva a cabo a travs de un programa
o mdulo, un proceso es un conjunto de actividades que se realizan con un
determinado fin en el cual existen insumo de entrada (INPUT) y resultados
(OUTPUT).

Los programas (procesos) disponibles en Cube se acceden a travs del men


Program, y a partir de este dependiendo de la actividad que deseamos realizar se
escoge el men correspondiente. En el caso de modelos de transporte
tradicionales utilizando Cube Voyager se escoge Passenger Forecasting-Voyager, y
luego el programa (proceso) correspondiente.

NOTA: Dependiendo de la licencia estarn habilitadas o no las diferentes


opciones del men.

Cuando se ha seleccionado el programa aparecer en la pantalla de la aplicacin


como una caja que contiene el nombre del programa, y un nmero en la parte

Juan Pablo Solorzano Ing. MSc. - Consultor 15


CUBE 5.0

inferior, adems de una serie de archivos de entrada en la parte derecha y


archivos de salida en la parte izquierda. El nmero indica la jerarqua del
proceso y por ende la secuencia en la que va a ser ejecutado.

Es posible definir la ubicacin del programa en la pantalla seleccionando el


programa con el botn derecho del ratn (mantenindolo presionado) y
soltndolo en la ubicacin deseada.

2.4.1. Datos de entrada y salida


Como se menciono anteriormente cada programa tiene datos de entrada y datos
de salida, en Cube los datos estn dados a manera de archivos, estos archivos
dependen del programa que se esta utilizado, por ejemplo para un proceso de
matrices MATRIX los archivos de entrada corresponden a registros de viajes o
matrices y los archivos de salida por lo general son tambin matrices.

Cuando se agrega un nuevo programa (proceso) a una aplicacin los casilleros


de archivos de entrada y salida aparecen en color gris, esto significa que no
tienen informacin ligada a estos, es decir estn vacos.

En el caso de programas de Voyager existe un tipo de archivo de entrada


adicional que se denomina el Script, del cual se hablar en secciones posteriores
de este manual, el cual contiene las instrucciones (el proceso) a realizarse
dentro del programa. En lo que respecta a las salidas, el primer archivo en
ubicado en la parte derecha contiene la informacin de la corrida (ejecucin) del
programa, y se utiliza para ver resultados generales y encontrar errores en la
ejecucin.

Existen varias formas de enlazar los archivos de entrada y salida a informacin.

Juan Pablo Solorzano Ing. MSc. - Consultor 16


CUBE 5.0

2.4.2. Enlaces a archivos existentes


En muchos casos se dispone de informacin generada externamente o en otro
programa (ej. Bases de datos, bases geogrficas, etc.). En este caso el archivo
deber estar ubicado de preferencia en el mismo sitio donde se encuentra la
aplicacin (para permitir la portabilidad del modelo), sin embargo podr estar
ubicado en cualquier parte del disco.

Para realicar este tipo de enlace se selecciona la casilla con el archivo de entrada
del proceso y con el botn derecho escoja la opcin Link to .. Link to File,
alternativamente puede activar la casilla del archivo de entrada y escoger la
opcin Link to File del men Data.

2.4.3. Creacin/enlace de archivos nuevos


Se realiza en caso de que se desee crear un archivo desde cero, ya sea porque
se va a digitar la informacin en el caso de archivos de entrada, o porque
contendr la informacin de salida del proceso.

Para realizar esta operacin se selecciona con el botn derecho la casilla en la


cual se desea crear un nuevo archivo, entre las opciones del men desplegado
se selecciona New File con lo que aparecer la ventana de dilogo de Windows
para crear archivos, una vez creado el mismo la casilla seleccionada cambiar de
color con lo cual podemos distinguir las que tienen informacin ligada a las
mismas.

NOTA: se recomienda guardar el archivo en el mismo sitio en el que se


encuentra la aplicacin y respetar la extensin sugerida (ej. .dat, .net), esto
permitir la portabilidad del modelo (ej. Copiar de una mquina a otra).

Si se considera que el archivo es intermedio y no un resultado final, y no es


necesario acceder a este se puede utilizar la opcin Auto Name Chosen File, la cual
generar automticamente un nombre para el archivo.

Juan Pablo Solorzano Ing. MSc. - Consultor 17


CUBE 5.0

NOTA: en caso de que el archivo sea de importancia se recomienda utilizar


nombres tan descriptivos como sea posible (ej. Matriz2005, redActual).

2.4.4. Enlaces entre salidas y entradas


Las salidas de un proceso son muy frecuentemente utilizadas como entradas
para otro, esto se conoce como un enlace (link).

Para crear un enlace se deben realizar los siguientes pasos:

Seleccione el casillero del archivo de salida del primer proceso con el botn
izquierdo del ratn, mantenga el botn presionado
Mueva el ratn manteniendo el botn presionado, aparecer una lnea en la
pantalla
Mueva el ratn hacia el casillero del archivo de salida deseado y suelte el
botn. Se dibujar un enlace permanente.

Para borrar un enlace se selecciona el archivo de destino (entrada en el proceso)


y se selecciona Delete link del men Edit.

NOTA: Para enlazar dos archivos estos tienen que ser compatibles (ej. Matriz de
salida con matriz de entrada), el administrador de aplicaciones emitir una
advertencia si las extensiones son diferentes (ej. .net y .mat), sin embargo dos
archivos con extensiones iguales pueden contener informacin incompatible.

Juan Pablo Solorzano Ing. MSc. - Consultor 18


CUBE 5.0

2.4.5. Grupos
En caso de tener modelos con muchos procesos es conveniente agrupar
subprocesos en grupos de aplicacin con el objetivo de que el modelo tenga una
estructura fcil de entender y mantener.

Un subgrupo es bsicamente una aplicacin dentro de otra aplicacin, siendo la


aplicacin que contiene el subgrupo la aplicacin padre. Un subgrupo
nicamente tendr una aplicacin padre a la vez.

APLICACIN

SUB-GRUPO 1 SUB-GRUPO 2 SUB-GRUPO 3

SUB-GRUPO 2.1 SUB-GRUPO 2.2

SUB-GRUPO 2.2.1 SUB-GRUPO 2.2.2

Nota: Un modelo puede tener una aplicacin nica y funcionar correctamente,


sin embargo existe una limitacin de 30 procesos por aplicacin (grupo), por lo
cual sera muy difcil realizar un modelo complejo sin utilizar subgrupos,
adems de que el entendimiento y mantenimiento del mismo sera muy
complicado.

Para crear un subgrupo se selecciona el men Group-Make new Sub Group, con lo
que aparecer la misma ventana de informacin que cuando se crea una
aplicacin (hay que recordar que en esencia un grupo es una aplicacin dentro
de otra aplicacin). El subgrupo creado aparecer como una caja en el
administrador de aplicaciones, con un nmero en la parte inferior
correspondiente al orden de ejecucin.

Es posible visualizar la estructura de toda la aplicacin a manera de un rbol


jerrquico en la parte izquierda del programa en la parte del panel
correspondiente a aplicaciones. Haciendo clic en el signo + se puede expandir un
subgrupo para ver a su vez los subgrupos incluidos dentro de este. Haciendo clic
en cualquiera de estos nos llevar directamente al subgrupo.

Juan Pablo Solorzano Ing. MSc. - Consultor 19


CUBE 5.0

Para acceder a un subgrupo (sub-tarea) se lo puede hacer a travs del panel del
catlogo o haciendo doble clic sobre la caja del subgrupo en el administrador de
aplicaciones. Para subir a un nivel superior, se presiona la tecla F9, o
seleccionando la opcin del men Group-Go to Parent.

2.4.6. Datos de entrada y salida pblicos


El programa utiliza el trmino archivos pblicos, a archivos de entrada y salida
que son accesibles entre grupos de aplicaciones. De esta manera es posible
enlazar salidas de un subgrupo con entradas de otro subgrupo.

Para configurar un archivo como pblico, dentro de un subgrupo, se selecciona


el archivo (de entrada o salida) en el proceso que deseamos volverlo pblico, y
se selecciona la opcin del men Data-Make file Public, o a travs del botn
derecho del ratn.

Para enlazar los datos de salida con las entradas se procede de igual manera
como si fueran procesos individuales.

En la figura siguiente se presenta un ejemplo de una aplicacin con 3 subgrupos,


como se puede observar de subgrupo 1 y 2 se tienen un total de 5 archivos
pblicos de salida, estos 5 archivos son utilizados en el subgrupo 3 como
entradas (pblicas). Cabe sealar que dentro de cada subgrupo puede haber
hasta 30 procesos o a su vez subgrupos.

NOTA: se recomienda hacer pblicos nicamente los archivos que sean


necesarios para otros subgrupos, o archivos a los cuales queramos acceder de
manera directa sin necesidad de ingresar al subgrupo.

Juan Pablo Solorzano Ing. MSc. - Consultor 20


CUBE 5.0

2.5. Controles avanzados

2.5.1. LOOPS (bucles)


Un bucle contiene una serie de programas y/o subgrupos que sern ejecutados
una o ms veces cuando toda la aplicacin sea ejecutada. El usuario especifica el
grupo de programas (procesos) que sern incluidos y como se controla el bucle,
ya sea por un nmero de iteraciones definida o cuando se cumpla una condicin.

Es posible utilizar archivos de salida de una iteracin como entrada para la


prxima. En la figura siguiente se presenta un esquema normal de un programa
en el cual las salidas del proceso 1 son utilizadas en el 2 y las del 2 en el 3.

Para crear un bucle se debe primero crear las aplicaciones / grupos / procesos
en el orden deseado y con los archivos de entrada y salida requeridos.

Para crear un nuevo bucle seleccione la opcin del men Control-Loop New, y
aparecer una ventana como la indicada a continuacin, en esta ventana se

Juan Pablo Solorzano Ing. MSc. - Consultor 21


CUBE 5.0

debe indicar el orden del primer y ltimo programa dentro del bucle, as como el
nmero de iteraciones.

Si por ejemplo se requiere crear un bucle con las salidas del ltimo proceso (3)
para ser reutilizadas en el proceso 2, se debe ingresar 2 y 3 en las casillas
correspondientes.

Una vez creado el bucle es necesario reorganizar los archivos de entrada y salida
de acuerdo al siguiente orden:

Los archivos anteriores al bucle deben enlazarse al bucle tal como indicado en la
seccin 2.4.4., esto servir como el archivo de entrada para la primera iteracin
(parte superior izquierda del bucle).
Los archivos que tienen que utilizarse en las iteraciones siguientes (generalmente
el resultado del ltimo proceso del bucle), deben enlazarse a la parte inferior
izquierda del bucle.
La salida del bucle debe enlazarse al proceso dentro del mismo que lo necesite
(generalmente el primer proceso dentro del bucle).

En el ejemplo siguiente desarrollado en funcin del ejemplo anterior, en este
caso se ha modificado la aplicacin para que el resultado del ltimo proceso sea
reutilizado en el proceso anterior mediante la utilizacin de un bucle, ntese que
el resultado del primer proceso solo se utiliza para la primera iteracin.

Juan Pablo Solorzano Ing. MSc. - Consultor 22


CUBE 5.0

2.6. Administrador de Escenarios


El propsito del administrador del escenarios es el de poder ejecutar una
aplicacin con una variedad de entradas de datos diferentes sin tener que
realizar modificaciones a la aplicacin, y as poder comparar los efectos de las
entradas en los resultados.

2.6.1. Variables clave (keys)


Las variables como su nombre lo indica son elementos que pueden variar cada
vez que se ejecuta la aplicacin. Estas son de carcter numrico, texto,
verdadero o falso.

Para definir una variable se selecciona la opcin Scenario-Add Key, con lo que
aparecera una pantalla de definicin de variables tal como se indica a
continuacin, en esta pantalla se debe definir un nombre para la variable
(name), un mensaje para indicarnos que contienen la variable al momento de
ingresar un valor, una descripcin adicional, un valor por defecto, el tipo de
variable (entero, real, texto, archivo, etc), y el tipo de control para el ingreso,
siendo estos casilla, lista, etc.

Se puede definir adems rangos para los datos para evitar errores en el ingreso,
listado de valores permitidos, y filtros en el caso de que la variable contenga
archivos (ej. *.txt, *.csv, etc).

Juan Pablo Solorzano Ing. MSc. - Consultor 23


CUBE 5.0

2.6.2. Utilizacin de variables clave en una aplicacin


Existen dos formas de utilizar las variables (keys) dentro de una aplicacin, la
primera es dentro de un script de un programa, en cuyo caso por lo general la
variable representa un valor numrico o un factor, la segunda opcin
corresponde a variables del tipo archivo con lo cual se esta cambiando la fuente
(entrada) de datos de un proceso de acuerdo a un escenario.

En el caso de un proceso de un programa (script), se debe ingresar la variable


utilizando llaves {}, con el nombre de la variable dentro de las mismas. Por
ejemplo

a[1] = {factorprod} * poblacin.

En este caso el key denominado factorprod puede cambiar de acuerdo al


escenario y por ende el resultado de la ecuacin ser distinto mientras cambien
el valor.

En el caso de variables clave que se refieren a archivos, se debe utilizar el


administrador de aplicaciones de manera similar a lo indicado en la seccin
2.4.2, pero seleccionando la opcin Link to .. Link to Catalog Key.

Una vez seleccionada esta opcin aparecer la pantalla donde se deber escoger
la variable clave correspondiente al nombre del archivo.

Juan Pablo Solorzano Ing. MSc. - Consultor 24


CUBE 5.0

2.6.3. Creacin de escenarios


Una vez que se ha creado y probado tanto la aplicacin como las variables clave,
es posible definir los escenarios a ser probados.

Para realizar esto se utiliza el men Scenario-Add Scenario, y aparecer una casilla
en blanco en la parte del panel correspondiente a escenarios, aqu se deber
escribir un nombre de identificacin del mismo, inmediatamente aparecer una
ventana con las variables clave (key) ingresadas en el modelo y sus valores por
defecto, aqu se ingresarn los valores deseados para el escenario propuesto.
Tambin en esta ventana se podr presionar el botn Run para correr la
aplicacin de acuerdo a los valores ingresados.

Juan Pablo Solorzano Ing. MSc. - Consultor 25


CUBE 5.0

Juan Pablo Solorzano Ing. MSc. - Consultor 26


CUBE 5.0

3
Captulo

3 CUBE VOYAGER

Cube Voyager es un sistema integrado de modelacin para aplicaciones de


planificacin de transporte. En la parte central del programa se encuentra un
lenguaje de control flexible denominado lenguaje de scripts.

El programa cuenta de 4 mdulos principales: Network, Matrix, Highway y Public


Transport (Redes, Matrices, Asignacin y Transporte pblico), adicionalmente
dispone de los mdulos de Generation y Distribution (generacin y distribucin)
para realizar tareas adicionales.

El usuario puede definir cualquier formulacin de modelo a travs del lenguaje


de scripts, no existen ningn tipo de cajas negras dentro de los proyectos.

Nota: Nunca intente de modificar la parte del script creada por el programa
correspondiente a los comandos FILEI y FILEO puesto que obtendr resultados
inesperados. Para modificar los archivos de entrada y salida siempre utilice el
administrador de aplicaciones.

3.1. Introduccin a la programacin (scripting)


Script: Un grupo de instrucciones que son ejecutadas en otro programa y no
por el procesador del sistema

Cube Voyager opera leyendo instrucciones de control de un archivo de scripts


(controlador de un proceso). Cada instruccin empieza por un comando de
control, seguido de palabras clave y valores correspondientes, separados por
espacios y/o comas. El comando indica la funcin a realizarse y las palabras
clave (keywords) indican valores necesarios para ejecutar el comando, cada
palabra clave esta seguida siempre de un signo = y el valor correspondiente.

3.1.1. Reglas Generales


Puede utilizar Maysculas o minsculas o una combinacin de estas.
Sintaxis General:
COMANDO keyword=valor
El COMANDO siempre va solo y lo sigue un espacio en blanco
A una KEYWORD siempre le sigue =
Algunas KEYWORDS invocan a un COMANDO
Algunas KEYWORDS pueden tener subkeywords
Ejemplo: REPORT FILEI=Y, FILEO=Y

Juan Pablo Solorzano Ing. MSc. - Consultor 27


CUBE 5.0

Ejemplo: PATH=TIME, MW[1]=PATHTRACE(TIME)


Para continuar lneas de un script:
La lnea debe finalizar con un operador:
+ - / * , = | &

Ejemplo:
PATHLOAD=COST,
MW[3]=MI.1.TRIPS,
SELECTLINK=(L=1000-1001 & L=2000-2001),
SELECTGROUP=1-3,5,
SELECTLINKGROUP=((GRP[1]=1 & GRP[2]=2)|(GRP[3]=1))

1) Comentarios

Es posible introducir comentarios en cualquier parte del script mediante el


uso de punto y coma ;, y es una prctica recomendable para recordar lo
que se esta haciendo o para que otros comprendan lo que se hizo en el
script. Se puede comentar bloques enteros utilizando /* .. */
Ejemplo:
PATH=TIME, PENI=1,3 MW[1]=PATHTRACE(COST),MW[2]=PATHCOST
; MW[1] y MW[2] pueden ser diferentes por cambios en el tipo de ruta
; si MW[1]=PATHTRACE(TIME,1,3),serian iguales.

3.1.2. Operaciones bsicas


Las expresiones numricas se ingresan como frmulas tradicionales con
variables o valores separadas por operadores, se utilizan las reglas jerrquicas
tradicionales y las operaciones se realizan de izquierda a derecha.

Expresiones simples

Speed = Distance / Time


Direccion = Calle + ',' + Ciudad + ',' + Distrito + ' ' + CodPostal
Operadores: +, -, *, /, ^
NOTA: el usuario es responsable de que las operaciones sean lgicas (ej.
divisiones para 0)

Funciones numricas:

ABS(x) POW(x,y)
CmpNumRetNum(V1,OP,V2,R1,R2) ROUND(x)
EXP(x) SQRT(x)
INT(x) INLIST(n,str)
LN(x) RAND()
LOG(x) RANDOM(n)
MAX(x,y,...) RANDSEED(n)
MIN(x,y,...) POW(x,y)

Funciones de texto:

Juan Pablo Solorzano Ing. MSc. - Consultor 28


CUBE 5.0

FORMAT(x,w,d,str) SUBSTR(str,b,n)
TRIM(str) STRPOS(str,str2)
LTRIM(str) STRLEN(str)
DUPSTR(str,n) STRUPPER(str)
VAL(str) STRLOWER(str)
STR(v,w,d)
Expresiones de seleccin lgicas:

Las expresiones de seleccin se utilizan para especificar un criterio de seleccin


de algo, estas dan como resultado una respuesta verdadera o falsa

A =B A igual que B.
A == B A igual que B.
A != B A no es igual a B.
A >= B A es mayor o igual a B.
A <= B A es menor o igual a B.
A >B A es mayor que B.
A <B A es menor B.
A <> B A no es igual a B.
Ejemplo:
If (i=1-10,20,30 & j=100-200,301,310)
If (area > 3 | (CapClass* 50 * Lanes) < 3000)

3.2. Redes
Existen dos programas en Cube capaces de manejar redes, Network y Highway,
el primero utilizado para la creacin y manipulacin de redes y el segundo para
extraer informacin (skims) y asignacin de viajes a la red.

3.2.1. Creacin de redes (Network)


El programa Network provee toda la funcionalidad para crear, manipular y unir
redes, generalmente es uno de los primeros procesos utilizados, creando una red
a partir de informacin externa, la cual puede ser shapes, bases de datos, etc.
La salida del proceso es un archivo de red en formato binario de Voyager con
extensin .net.

3.2.1.1. Entradas y salidas

Las entradas y saldas bsicas del programa son:

Entradas: Archivos de enlaces (vas) y nodos en formato dbf, texto, binario de


Cube (hasta 10 archivos), geodatabases
Salidas: un archivo de red en formato binario (puede ser geodatabase), 1
archivo en formato de base de datos y 1 archivo de nodos.

Juan Pablo Solorzano Ing. MSc. - Consultor 29


CUBE 5.0

3.2.1.2. Variables

Cada archivo de enlaces o nodos tiene un nmero ilimitado de variables


(atributos, campos), es decir podemos importar una base de datos que contenga
un sinnmero de campos de informacin (ej. Distancia, velocidad, tiempo, tipo
de enlace, modo, etc.), la nica limitacin est dada por la longitud del nombre
del campo que es de 15 caracteres.

Para referirse a una variable se utiliza la siguiente nomenclatura:

Enlaces: Li.#.nombre ,siendo # el nmero del archivo de entrada (ej, 1,2,3),


y nombre el correspondiente a la variable. (ej. Li.1.distancia)
Nodos: Ni.#.nombre, similar a los enlaces.
Variables temporales: se agrega un guon bajo _ al nombre de la variable
(ej. _distanciaAcum)

3.2.1.3. Estructura

El programa procesa los archivos de entrada en diferentes fases, en la mayora


de los casos no es necesario definirlas de manera explcita salvo que se
requieran realizar operaciones especiales.

Las fases son las siguientes:

INPUT: Lee los archivos ASCII y DBF, recodifica valores de los datos de
ingreso designados para el efecto.
NODEMERGE: Lee los datos de los nodos y los organiza
LINKMERGE: Lee los datos de los arcos y los procesa (fase principal)
SUMMARY: Reporta resultados de la fase LINKMARGE
Para especificar una fase se utiliza el comando siguiente:
Phase = nombre de la fase


EndPhase
En donde nombre de la fase corresponde a input, nodemerge, linkmerge o summary.

Cuadro 3-1 Cuando utilizar Fases de Network

Input Manipulacin de datos de entrada


de nodos y enlaces
Nodemerge y linkmerge Mltiples redes/nodos de entrada
Summary Reportes clculos de datos de las
redes

3.2.1.4. Parmetros

Como en todos los programas de Cube Voyager existen parmetros de


configuracin que en muchos casos son necesarios para poder realizar el
proceso.

Juan Pablo Solorzano Ing. MSc. - Consultor 30


CUBE 5.0

Para la creacin de una red es necesario definir el nmero de zonas de


transporte que tendr la misma, de la siguiente forma

Parameters Zones = ## ; donde ## corresponde al nmero de zonas (ej. 25)


En el caso de que se vayan a procesar mltiples redes de entrada se recomienda
definir como se va a realizar la unin de estas mediante el comando MERGE, y la
palabra clave RECORD indicando si se desea unir las redes o no.

Merge Record = true, first=nombre, ave=distancia


Adems es posible utilizar las palabras first(primero), last(ultimo), max
(mximo), min(minimo), ave(promedio), seguidas de = y el nombre de la
variable para indicar como se debe mezclar los valores cuando existan
duplicados en las redes de entrada.

3.2.1.5. Ejemplos de scripts

Ejemplo 1: Un archivo de enlaces, un archivo de nodos, y un archivo de salida


de red.
RUN PGM=NETWORK PRNFILE="X:\1188_CORREDORSUR\MODELOCUBE\TEST\QTNET00A.PRN"
FILEI NODEI[1] = "X:\1188_CORREDORSUR\MODELOCUBE\TEST\QTNOD00A.DAT"
FILEI LINKI[1] = "X:\1188_CORREDORSUR\MODELOCUBE\TEST\QTLNK00A"
FILEO NETO = "X:\1188_CORREDORSUR\MODELOCUBE\TEST\QTNET00A.NET"

Parameters Zones=25

ENDRUN
Ntese que los comandos FileI y FileO son creados por el programa, no se ha
introducido ningn comando especial con excepcin de Parameters que indica el
nmero de zonas.

Ejemplo 2: unir dos archivos de redes y reportar cuando no se encuentra un


enlace en el otro archivo
RUN PGM=NETWORK ; unir dos archivos con diferentes atributos
FILEI LINKI[1]=demo07.dbf, rev=dir
FILEI LINKI[2]=demo07m.dbf,rev=dir
FILEI nodei[1]=demoxy.dbf
merge record=true, AVE=dist
Parameters zones=19
phase=LINKMERGE
if (li.1.a == 0) list=' LI[1] missing link:', a,b
if (li.2.a == 0) list=' LI[2] missing link:' a,b
endphase
ENDRUN
Nota: en ocasiones se debe utilizar la palabra clave REV en el comando FileI,
correspondiente a los enlaces, para indicar que atributo contiene la direccin (1
para una va y 2 para doble sentido)

3.2.2. Extraccin de informacin (skims) (Highway)


La funcionalidad principal del programa Highway es la de asignar viajes de una
matriz a la red, sin embargo en esta seccin cubriremos la segunda
funcionalidad la cual es la de extraer informacin de la red (skims), tal como son
las matrices de tiempos o de distancias.

Juan Pablo Solorzano Ing. MSc. - Consultor 31


CUBE 5.0

3.2.2.1. Entradas y Salidas

Para realizar una extraccin de datos de la red solo se necesita una entrada y
una salida.

Entrada: Red en formato binario de Voyager (.net)


Salida: una matriz del dato extrado (tiempos, costos, distancias)

3.2.2.2. Variables

Para referirse a una variable se utiliza la siguiente nomenclatura:

Enlaces: Li.nombreVariable (solo existe un nico archivo de entrada)


Matrices de trabajo: Mw[n], donde n corresponde al nmero de la matriz de
trabajo

3.2.2.3. Estructura

El programa tiene cinco fases:

SETUP: se utiliza para iniciar ciertas variables y/o arreglos


LINKREAD: para obtener los valores iniciales que se requieren de la red
inicial, y para calcular valores de los arcos que el usuario va a hacer
referencia en otras fases.
ILOOP: se hace un bucle desde la zona 1 al resto de zonas
ADJUST: calcula el tiempo en congestin (Tc) en cada arco y revisa los
valores de TIEMPO que va a utilizarse en la siguiente iteracin
CONVERGE: realiza comprobaciones para verificar si hay convergencia en la
asignacin
Para el caso de extraer informacin de la red solo necesitamos especificar
las fases de Linkread e ILOOP.

3.2.2.4. Proceso

Agregar mediante el administrador de aplicaciones la red de entrada y crear


un archivo para la matriz de salida
Declarar las fases LINKREAD y ILOOP
En la fase de linkread indicar que variable de la red corresponde al tiempo
inicial t0 (tiempo de flujo libre)

Juan Pablo Solorzano Ing. MSc. - Consultor 32


CUBE 5.0

En la fase de iloop utilizar el comando pathload para extraer los costos


(tiempos, etc), la palabra clave path indica como se debe evaluar la red para
extraer los costos.
Se puede realizar clculos adicionales en las matrices de salidas utilizando el
comando comp mw[x] = ..
Agregar al final del comando Fileo correspondiente a la matriz de salida la
palabra clave mo=n, en la cual n corresponde al nmero de la matriz de
trabajo

3.2.2.5. Ejemplo

El siguiente ejemplo obtiene matrices de tiempos y distancias de una red


RUN PGM=HIGHWAY

FILEI NETI = LOADED.NET


FILEO MATO[1] = HWY_SKIMS.MAT, MO=1-2,NAME= HWY Time, HWY Distance

Process PHASE=LINKREAD

T0=li.TIME ;tiempo inicial

ENDPROCESS

PROCESS PHASE=ILOOP
; iterar todas las zonas y extraer los costos.
; en las matrices de trabajo 1 y 2

PATHLOAD PATH=TIME,MW[1]=PATHTRACE(TIME),
MW[2]=PATHTRACE(LI.DISTANCE)

; calcular el valor par alas celdas intrazonales

COMP MW[1][I] = rowmin(1) * 0.5 ; tiempo intrazonal

; calcular la distancia intrazonal como 0

COMP MW[2][I] = 0
ENDPROCESS

ENDRUN

3.3. Matrices
El programa de Cube Voyager utilizado para el procesamiento de informacin
zonal y de matrices es denominado Matrix, adems existen los mdulos
complementarios Fratar, Distribution y Generation, que sirven para realizar
funciones especficas.

3.3.1. Procesamiento de matrices (MATRIX)


El programa Matrix permite realizar una serie de funciones, las cuales se listan a
continuacin:

Clculo de valores nuevos de las matrices


Convertir, unir matrices de distintos formatos
Reportar valores de matrices e informacin zonal

Juan Pablo Solorzano Ing. MSc. - Consultor 33


CUBE 5.0

Distribuciones de frecuencias
Matrices transpuestas
Generacin de matrices
Renumeracin, agregacin y desagregacin de matrices.
Implementacin de modelos logit de seleccin discreta
Procesamiento de registros

3.3.1.1. Entradas y Salidas

El programa puede tener las siguientes entradas y salidas

Entradas:
Hasta 10 archivos de matrices (con mximo 255 tablas (matrices) en
c/u)
Hasta 10 archivos de informacin zonal
1 archivo de registros en ASCII o dbf
Salidas:
Hasta 20 archivos de matrices (255 tablas)
Hasta 20 archivos de registros (dbf)
Hasta 999 matrices de trabajo internas

3.3.1.2. Variables

Para referirse a las matrices de entrada se debe especificar el nmero del


archivo de la matriz de entrada y el nmero de la tabla dentro de la matriz.

MI.#archivo.#tabla, donde #archivo corresponde al nmero del archivo de


entrada, #tabla al nmero o el nombre de la matriz dentro del archivo.
Mi.#archivo.#tabla.t, el subndice t indica que la matriz sera procesada como
la transpuesta
Ej. Mi.3.1 corresponde a la matriz (tabla) 1 ubicada en el archivo 3
Ej. Mi.2.3.t tabla 3 del archivo 2 transpuesta
Para realizar Operaciones con matrices se debe utilizar matrices de trabajo (mw)

Mw[#] (ej. Mw[2]=mi.1.1 ;colocar la matriz de entrada 1 del archivo 1 en la


matriz de trabajo 2)
Para procesar archivos de informacin zonal se procede de manera similar

Juan Pablo Solorzano Ing. MSc. - Consultor 34


CUBE 5.0

Zi.n.nombre, corresponde al archivo de zonas n y a la variable nombre, (ej.


Zi.1.poblacin)
En el caso de archivos de registro se procede de la siguiente forma:

Reci.nombrevariable, siendo nombrevariable el nombre del atributo(campo)


del archivo de entrada
Ro.nombrevariable, siendo nombrevariable el nombre de la variable de salida

3.3.1.3. Estructura

El programa realiza todos los cmputos dentro de un bucle (loop) implcito en I


(origen) denominado Iloop, este bucle inicia en 1, con un intervalo unitario hasta
el final del nmero de zonas.

Nota: Un bucle en programacin es una sentencia que se realiza repetidas


veces, Bucle se utiliza para hacer un accin repetida sin tener que repetir varias
veces el mismo cdigo

Los bucles en J (destinos) son automticos, pero algunos casos se deben


especificar de manera explcita para poder controlar el cmputo deseado.
Cuando se utiliza un bucle en J se incluye un subndice adicional mw[#][x] que
corresponde a la celda (columna) x.

Ejemplo: procesar los valores intrazonales (I = J) (origen = destino)

Jloop J=I
Mw[1][j] = 0
endJloop

El comando Jloop permite adems utilizar las palabras clave Include y Exclude
para procesar nicamente ciertas celdas

Juan Pablo Solorzano Ing. MSc. - Consultor 35


CUBE 5.0

Ejemplo: procesar los valores intrazonales (I = J) (origen = destino), excluyendo


las zonas de las 450 y de la 500-600

Jloop J=I, exclude=450,00-600


Mw[1][j] = 0
endJloop

3.3.1.4. Funciones y operaciones

Existen varias funciones que permiten obtener resmenes

ROWSUM() Total de la fila


ROWCNT() Cuenta el nmero de celdas diferentes a 0
ROWMIN() Valor mnimo de la fila
ROWMAX() Valor mximo de la fila
ROWAVE() Valor promedio para celdas diferentes a 0
ROWFIX() Redondear el valor
ROWFAC() Factorar la fila por un valor
LOWEST() Suma de los n valores mnimos de la matriz
ROWADD() Sumar matrices.
ROWMPY() Multiplicar matrices.
ROWDIV() Dividir matrices.
MATVAL() Obtener valores de celdas aleatorias

Ejemplo: Obtener el total de una matriz de trabajo #1


totalmatriz1=totalmatriz1 + rowsum(1)

Para realizar operaciones con matrices se utiliza nomenclatura de ecuaciones


tradicional, refirindose a las variables propias del modulo.

Ejemplos:

Mw[1] = mi.1.1 ;colocar la matriz 1 del archivo 1 en una matriz de trabajo1

Mw[2] = mw[1] * 1.5 ;multiplicar la matriz de trabajo 1 por 1.5

Mw[3] = mw[1] * mw[2] ;multiplicar la matriz de trabajo 2 por la 1

Es posible tambien procesar los valores intrazonales (I=J) mediante el comando


Intrazonal

Ejemplo:
Intrazonal MW[] = expression

3.3.1.5. Parmetros

En el caso de que las matrices de entrada estn definidas no es necesario


especificar ningn parmetro, pero si se van a convertir o crear matrices se debe
especificar el nmero de zonas.

Juan Pablo Solorzano Ing. MSc. - Consultor 36


CUBE 5.0

Parameters Zones = ## ; donde ## corresponde al nmero de zonas (ej. 25)

3.3.1.6. Proceso

Crear y/o enlazar los archivos de entrada y salida

Realizar todas las expresiones clculos necesarios

Especificar en el comando FILEO la palabra clave mo=# donde #


corresponde al nmero de la matriz de trabajo que se desea
guardar

Nota: no es necesario grabar todas las matrices de trabajo, nicamente las que
se necesite reportar, o utilizar en otro proceso

3.3.1.7. Procesamiento de archivos de registros de viajes

Para importar registros de viajes como es el caso de encuestas de origen y


destino se realiza el siguiente proceso:

En el comando FILEI se debe especificar el patrn de los datos

Ms comn IJ:MV grupos de I y J de matrices y viajes

I J M V
1 15 1 25
2 11 2 17
Especificar los campos (FIELDS), depende del archivo de entrada,

Ejemplo FIELDS=I,J,M,V

Especificar el numero de zonas PARAMETERS ZONES=ZZ

Ejemplo

FILEI MATI[1] = "H:\CURSOCUBE\DATA2\REGVIAJES.DBF",


pattern=ij:mv,FIELDS=I,J,M,V

3.3.1.8. Ejemplos

Ejemplo de clculo de matrices en function de matrices de entrada, ntese que


se estn utilizando variables claves definidas por un escenario (fac1, fac2 y
tasaocup)

RUN PGM=MATRIX PRNFILE="C:\1177\ModeloCUBE\Calibracion\MSMAT00B.PRN"


FILEI MATI[1] = "C:\1177\ModeloCUBE\Calibracion\VIAJESPM.MAT"
FILEO MATO[1] = "C:\1177\ModeloCUBE\Calibracion\MATPMSD.MAT",
mo=1-3,name=privado,bus,total

;matriz livianos (vehiculos)


mw[1] = mi.1.1*{fac1} + mi.1.2*{fac1}

;matriz Bus (pasajeros)


mw[2] = mi.1.1*{fac1} + mi.1.2*{fac2}

;matriz Total (pasajeros)


Mw[3] = mw[1]*{tasaocup} + mw[2]

Juan Pablo Solorzano Ing. MSc. - Consultor 37


CUBE 5.0

ENDRUN

Procesamiento de un archivo de registros de viajes


RUN PGM=MATRIX PRNFILE="C:\1177\ModeloCUBE\Calibracion\MSMAT00B.PRN"
FILEI MATI[1] = "c:\CURSOCUBE\DATA2\REGVIAJES.DBF", pattern=ij:mv,FIELDS=I,J,M,V
FILEO MATO[1] = "C:\1177\ModeloCUBE\Calibracion\MATPMSD.MAT",
mo=1,name=od

parameters zones = 25
mw[1] = mi.1.1

ENDRUN

Rezonificar una matriz en funcin de un archivo de equivalencias


RUN PGM=MATRIX PRNFILE="C:\1177\ModeloCUBE\Calibracion\MSMAT00B.PRN"
FILEI MATI=IN.MAT
FILEO MATO=OUT.MAT, MO=1

MW[1]=MI.1.1 ; cargar los valores de la matriz inicial en matriz de trabajo


; renumerar la matriz de salida OUT.MAT de acuerdo a 2005zon.eq
RENUMBER FILE=2005ZON.EQ, MISSINGZI=M, MISSINGZO=W
ENDRUN

Juan Pablo Solorzano Ing. MSc. - Consultor 38


CUBE 5.0

3.4. Generacin de viajes


El mdulo de generacin se utiliza para procesar informacin zonal de acuerdo a
expresiones (ecuaciones) ingresadas por el usuario para producir vectores de
producciones y atracciones (tripends).

3.4.1. Entradas y salidas


Datos de ingreso:

o Hasta 10 archivos de informacin zonal

Datos de salida:

o Hasta 10 archivos de producciones y atracciones

3.4.2. Variables
Para procesar archivos de informacin zonal se procede de manera similar al
resto de mdulos

Zi.n.nombre, corresponde al archivo de zonas n y a la variable nombre, (ej.


Zi.1.poblacin)
Los clculos (producciones y atracciones) se especifican de la siguiente manera
dentro de una fase de Iloop

P[num] = ecuacin ; donde num corresponde al motivo de viaje

A[num] = ecuacin

3.4.3. Estructura
Contiene dos fses

ILOOP: realiza un bucle de la zona 1 a todo el resto de zonas

ADJUST: para balancear las Ps y As finales.

FILEI ZDATI
FILEO PAO
PARAMETERS zones=num
Process Phase = ILOOP
COMP P[num]=
COMP A[num]=
EndProcess
Process Phase =ADJUST
COMP P[num][zone]=
BALANCE a2p=1
EndProcess

Juan Pablo Solorzano Ing. MSc. - Consultor 39


CUBE 5.0

3.4.4. Proceso
Definir el parmetro correspondiente al nmero de zonas

Introducir las ecuaciones dentro de una fase de Iloop (recomendable usar


constantes como coeficientes)

o P[1] = factor1 * poblacion + factor2 * trabajadores + .

o A[1] = factor11 * poblacin + factor22 * areacomercial + .

Especificar como balancear las producciones y las atracciones en una fase


de Ajuste (adjust) (A2P balancear las atracciones a las producciones, P2A,
NHB, no basados en el hogar)

o BALANCE A2P=1,3 NHB=2 ; ajustar las atraciones a las


producciones para los motivos 1 y 3, y aplicar no basados
en el hogar para el motivo 2

3.4.5. Ejemplo
; Do not change filenames or add or remove FILEI/FILEO statements using an editor.
Use Cube/Application Manager.
RUN PGM=GENERATION PRNFILE="C:\ \CUBEPRAC\CALIBRACION\MCGEN00A.PRN" MSG='generacion
de viajes'
FILEO PAO[1] = "C:\ \CUBEPRAC\CALIBRACION\TENDS.DBF",
dbf=y, list = z,p[1],p[2],p[3],a[1],a[2],a[3]
FILEI ZDATI[1] = "C:\MaestriaPUCE\ModelosTransporte\CUBEPRAC\DATA\ZONAS.DBF"

;definir el numero de zonas


parameters zones=22

;proposito basado en trabajo


hbp_p = 0.35 ; tasa de produccion por persona por dia (poblacion total)
hbp_i = 1.05 ; tasa de produccion por trabajador industrial
hbp_c = 1.15 ; tasa de produccion por trabajador comercios oficinas
hbp_g = 0.95 ; tasa de produccion por empleado gubernamental

hba_p = 0.2 ; tasa de atraccion por persona por dia (poblacion total)
hba_i = 8 ; tasa de atraccion por area industrial 100 m2
hba_c = 38 ; tasa de atraccion por area comercial 100 m2
hba_g = 30 ; tasa de atraccion por area entidad oficial 100 m2

;proposito no basado en el hogar


nhbp_p = 0.05 ; tasa de produccion por persona por dia (poblacion total)
nhbp_i = 1.5 ; tasa de produccion por area industrial 100 m2
nhbp_c = 3 ; tasa de produccion por area comercial 100 m2
nhbp_g = 1.2 ;tasa de produccion por area entidad oficial 100 m2

nhba_p = 0.1 ; tasa de atraccion por persona por dia (poblacion total)
nhba_i = 5 ; tasa de atraccion por area industrial 100 m2
nhba_c = 15 ; tasa de atraccion por area comercial 100 m2
nhba_g = 15 ; tasa de atraccion por area entidad oficial 100 m2

;proposito escuela
schp_p = 0.01 ; tasa de produccion por persona por dia (poblacion total)
schp_s = 0.90 ; tasa de produccion por estudiandte por dia
scha_p = 0.005 ; tasa de atraccion por persona por dia (poblacion total)
scha_s = 0.90 ; tasa de atraccion por capacidad de alumnos por dia

Juan Pablo Solorzano Ing. MSc. - Consultor 40


CUBE 5.0

;clculo de producciones y atracciones


;motivo 1 basado en hogar
p[1] = pob2001 * hbp_p + TrabInd * hbp_i + TrabCom * hbp_c + TrabPub * hbp_g
a[1] = pob2001 * hba_p + AreaInd * hba_i /100 + AreaCom * hba_c /100 + AreaPub *
hba_g /100
;motivo 2 NO basado en el hogar
p[2] = pob2001 * nhbp_p + AreaInd * nhbp_i /100 + AreaCom * nhbp_c /100 + AreaPub *
nhbp_g /100
a[2] = pob2001 * nhba_p + AreaInd * nhba_i /100 + AreaCom * nhba_c /100 + AreaPub *
nhba_g /100
;motivo 3 escuela
p[3] = pob2001 * schp_p + estudiante * schp_s
a[3] = pob2001 * scha_p + Alumnos * scha_s

;balancear las atracciones a las producciones


PROCESS PHASE=ADJUST
BALANCE A2P=1,3 NHB=2
ENDPHASE

ENDRUN

Juan Pablo Solorzano Ing. MSc. - Consultor 41


CUBE 5.0

3.5. Distribucin y proyeccin de matrices


Existen dos mdulos en voyager que permiten realizar operaciones de
distribucin de matrices, el primero DISTRIBUTION, permite realizar una
distribucin de viajes mediante el mtodo gravitacional, y el segundo FRATAR se
utiliza para modificar una matriz en funcin de factores de produccin y
atraccin por zonas.

3.5.1. Distribucin Modelo Gravitacional


La distribucin es el proceso de estimar el nmero de viajes que se realizaran
entre las zonas del modelo. El mdulo de voyager que permite realizar este
proceso se denomina DISTRIBUTION.

3.5.1.1. Entradas y salidas

Se requieren los siguientes archivos de entrada para realizar este proceso:

Hasta 10 archivos de matrices de costos (skim matrices)

Hasta 10 archivos de producciones y atracciones (Generation)

1 archivo de factores de friccin

El resultado de este proceso es una matriz de producciones y atracciones de


viajes

3.5.1.2. Factores de friccin

Empricos, mejores resultados que funciones


Se ingresan en archivos de texto, o base de datos (dbf)
Se buscan con funcin LOOKUP
Primera columna contiene el tiempo (costo)
Columnas 2 en adelante factores de friccin para distintos tipos, propsitos
Por lo general el factor es menor mientras mayor sea el tiempo, puede
obtenerse de una funcin definida ej exp(-C)

Juan Pablo Solorzano Ing. MSc. - Consultor 42


CUBE 5.0

Costo
(tiempo FF FF
min) Livianos Pesados
0.01 1200 800
1 1000 700
5 800 300
7 200 75
10 100 25
25 50 10
50 5 5

3.5.1.3. La funcin LOOKUP

La funcin LOOKUP puede ser utilizada en todos los mdulos de Voyager, es


necesario especificarla de manera obligatoria en el proceso de DISTRIBUTION

Es una funcin de bsqueda (similar a la funcin buscarV de Excel)

Se pueden tener varios resultados (columnas)

Definicin LOOKUP

Indicar el nmero del archivo en el cual estan los datos LOOKUPI

Definir nombre de la function

Indicar la columna de busqueda LOOKUP[x]=y

Indicar de que columna se quieren obtener los datos RESULT=z

Indicar cual es el resultado si la bsqueda falla

Indicar si se deben interpolar los valores

Ejemplo

LOOKUP LOOKUPI=1,
NAME=alfaF,
LOOKUP[1]=1, RESULT=2
LOOKUP[2]=1, RESULT=2
Una funcin con nombre alfa, por ejemplo si el archivo tiene los siguientes
datos:
10 150 225
13 241 265
15 355 326
18 578 890
alfa(1,13) ;Producir como resultado 241
alfa(2,15) ;Producir como resultado 326

Juan Pablo Solorzano Ing. MSc. - Consultor 43


CUBE 5.0

3.5.1.4. Estructura

Este proceso no tiene fases


FILEI MATI
FILEI ZDATI
FILEO MATO
PARAMETERS zones=num1 maxiters=num2
SETPA P[num1]= A[num2]= MW[num3]=
GRAVITY PURPOSE=1, LOS=MW[10], FFACTORS=FF

3.5.1.5. Proceso

Definir - enlazar el archivo de entrada de informacin zonal de


producciones y atracciones (Zonal Data)

Enlazar el archivo de la matriz de costos (skim matrix)

Crear el archivo de factores de friccin (puede crearse con el


utilitario automtico)

Definir los parmetros (parameters zones=num)

Indicar al programa cuales atributos corresponden a las


producciones y atracciones por motivo de viaje (TripEnds)

SETPA P[1]=zi.1.P1 A[1]=zi.1.a1


SETPA P[2]=zi.1.P2 A[2]=zi.1.A2
Especificar que matriz contiene la matriz de costos (tiempos)
cargndola a una matriz de trabajo x

MW[10] = MI.1.1
Especificar que se realizara una distribucin gravitacional
especificando el propsito (motivo) de viaje, la matriz de costos, y
la funcin de bsqueda de los factores de friccin.

GRAVITY PURPOSE=1, LOS=MW[10], FFACTORS=FF

Especificar en los comandos MATO la matriz de trabajo se va a


guardar (igual al # del propsito).

FILEO MATO[1] = "su archivo de matrices", mo=1-


..,name='nombres,

Juan Pablo Solorzano Ing. MSc. - Consultor 44


CUBE 5.0

3.5.1.6. Ejemplo
RUN PGM=DISTRIBUTION PRNFILE="C:\1177\ModeloCUBE\Calibracion\DIDST00A.PRN" MSG='distribucion'
FILEI ZDATI[1] = "C:\1177\ModeloCUBE\Calibracion\GENERACION05.DBF"
FILEI MATI[1] = "C:\1177\ModeloCUBE\Calibracion\SKIMTIMEDIST.MAT"
FILEI LOOKUPI[1] = "C:\1177\ModeloCUBE\Calibracion\FFACTORS.PRN"
FILEO MATO[1] = "C:\1177\ModeloCUBE\Calibracion\VIAJESXTIPO.MAT",
mo=1-3,12

Parameters MAXITERS={maxiters},MAXRMSE={maxRMSE}
;Definir las funciones de busqueda de factores de friccion.
LOOKUP, lookupi=1,
INTERPOLATE=Y, NAME=FF,
LOOKUP[1]=1,RESULT=2,
LOOKUP[2]=1,RESULT=3,
LOOKUP[3]=1,RESULT=4,

; configurar las producciones y las atracciones


SETPA P[1]=P1 A[1]=A1
SETPA P[2]=P2 A[2]=A2
SETPA P[3]=P3 A[3]=A3

; Asignar la matriz de costos a la matriz de trabajo #10


MW[10] = MI.1.2
; realizar la distribucion gravitacional
GRAVITY PURPOSE=1, LOS=MW[10], FFACTORS=ff
GRAVITY PURPOSE=2, LOS=MW[10], FFACTORS=ff
GRAVITY PURPOSE=3, LOS=MW[10], FFACTORS=ff

;sumar las matrices


MW[12]=MW[1]+MW[2]+MW[3]

ENDRUN

3.5.2. Expansin de matrices (FRATAR)


El proceso FRATAR se utiliza para modificar los valores de una matriz en funcin
de factores para las producciones y atraccin (o valores).

3.5.2.1. Entradas y Salidas

Se requieren los siguientes archivos de entrada para realizar este proceso:

Hasta 10 archivos de matrices de viajes

Hasta 10 archivos de producciones y atracciones (o factores) (zonal data)

El producto de este proceso es uno o varios archivos de matrices

Juan Pablo Solorzano Ing. MSc. - Consultor 45


CUBE 5.0

3.5.2.2. Estructura

Este proceso no tiene fases


FILEI MATI
FILEI ZDATI
FILEO MATO
PARAMETERS zones=num1 maxiters=num2
SETPA PGF[num1]= AGF[num2]= MW[num3]= Control=P

3.5.2.3. Proceso

Definir - enlazar el archivo de entrada de informacin zonal de


producciones y atracciones o factores (Zonal Data)

Enlazar el archivo de la matriz de viajes que se desea modificar

Definir los parmetros (parameters zones=num, maxiters=num)

Indicar al programa cuales atributos corresponden a las


producciones y atracciones por motivo de viaje (TripEnds) ya sea
como valor (P, A) o como Factor (PGF, AGF), indicar la matriz de
trabajo en la que se va a guardar y de donde provienen los datos
iniciales y el control (P, A, PA)

SETPA P[1]=zi.1.P1 A[1]=zi.1.a1 mw[1] = mi.1.1 Contro=P


SETPA P[2]=zi.1.P2 A[2]=zi.1.A2 mw[2] = mi.1.2 Contro=P
Especificar en los comandos MATO la matriz de trabajo se va a
guardar (igual al # definido en el proceso anterior).

FILEO MATO[1] = "su archivo de matrices", mo=1-


..,name='nombres,

3.5.2.4. Ejemplo
RUN PGM=FRATAR PRNFILE="C:\1177\ModeloCUBE\Evaluacion\MFFRA00A.PRN" MSG='Matrices
futuras'
;matrices de entrada
FILEI MATI[1] = "C:\1177\ModeloCUBE\Evaluacion\MATPM.MAT"
..
;trip ends
FILEI ZDATI[1] = "{SCENARIO_DIR}\TENDFUT.DAT"
;matrices de salida
FILEO MATO[1] = "{SCENARIO_DIR}\MATFPM.MAT",
mo=1-4,name='privado','bus','taxi','camion'
FILEO MATO[2] = "{SCENARIO_DIR}\MATFFP.MAT",
mo=5-8,name='privado','bus','taxi','camion'
FILEO MATO[3] = "{SCENARIO_DIR}\MATFPT.MAT",
mo=9-12,name='privado','bus','taxi','camion'
;livianos
SETPA PGF[1]=zi.1.p1, AGF[1] = zi.1.a1, MW[1] = mi.1.1 CONTROL=P

;buses
SETPA PGF[2]=zi.1.p1, AGF[2] = zi.1.a2, MW[2] = mi.1.2 CONTROL=P

;taxi
SETPA PGF[3]=zi.1.p1, AGF[3] = zi.1.a1, MW[3] = mi.1.3 CONTROL=P
.
;camion
SETPA PGF[4]=zi.1.p2, AGF[4] =zi.1. a2, MW[4] = mi.1.4 CONTROL=P
.
ENDRUN

Juan Pablo Solorzano Ing. MSc. - Consultor 46


CUBE 5.0

3.6. Eleccin modal


La eleccin modal corresponde en determinar la proporcin de usuarios que
seleccionan un modo de transporte para realizar un viaje.

Para realizar este proceso en Cube Voyager se utiliza el mdulo MATRIX.

3.6.1. El mdulo MATRIX


Otra de las funcionalidades del mdulo MATRIX es la de realizar la eleccin
modal.

3.6.1.1. Entradas y Salidas

El mdulo puede tener las siguientes entradas y salidas para efectos de realizar
una eleccin modal

Entradas:
Hasta 10 archivos de matrices (con mximo 255 tablas (matrices) en
c/u) (matrices de viajes y de costos (utilidad)
Salidas:
Hasta 20 archivos de matrices (255 tablas)
Hasta 20 archivos de registros (dbf)
Hasta 999 matrices de trabajo internas

3.6.1.2. Variables

Para referirse a las matrices de entrada se debe especificar el nmero del


archivo de la matriz de entrada y el nmero de la tabla dentro de la matriz.

MI.#archivo.#tabla, donde #archivo corresponde al nmero del archivo de


entrada, #tabla al nmero o el nombre de la matriz dentro del archivo.
Mi.#archivo.#tabla.t, el subndice t indica que la matriz sera procesada como
la transpuesta
Ej. Mi.3.1 corresponde a la matriz (tabla) 1 ubicada en el archivo 3
Ej. Mi.2.3.t tabla 3 del archivo 2 transpuesta
Para realizar Operaciones con matrices se debe utilizar matrices de trabajo (mw)

Mw[#] (ej. Mw[2]=mi.1.1 ;colocar la matriz de entrada 1 del archivo 1 en la


matriz de trabajo 2)

Juan Pablo Solorzano Ing. MSc. - Consultor 47


CUBE 5.0

3.6.1.3. Estructura

El programa realiza todos los cmputos dentro de un bucle (loop) implcito en I


(origen) denominado Iloop, este bucle inicia en 1, con un intervalo unitario hasta
el final del nmero de zonas.

Nota: Un bucle en programacin es una sentencia que se realiza repetidas


veces, Bucle se utiliza para hacer un accin repetida sin tener que repetir varias
veces el mismo cdigo

Los bucles en J (destinos) son automticos, pero algunos casos se deben


especificar de manera explcita para poder controlar el cmputo deseado.
Cuando se utiliza un bucle en J se incluye un subndice adicional mw[#][x] que
corresponde a la celda (columna) x.

Figura 3-1 Procesamiento de matrices (bucles I y J)

FILEI MATI
FILEO MATO
CHOICE alternatives=
demand= costs=
odemand= startmw=
split=

3.6.1.4. Proceso

Crear y/o enlazar los archivos de entrada y salida (matrices)

Incluir un comando Choice con las palabras clave respectivas

Realizar todas las expresiones clculos necesarios adicionales

Especificar en el comando FILEO la palabra clave mo=# donde #


corresponde al nmero de la matriz de trabajo que se desea
guardar

Nota: no es necesario grabar todas las matrices de trabajo, nicamente las que
se necesite reportar, o utilizar en otro proceso

Juan Pablo Solorzano Ing. MSc. - Consultor 48


CUBE 5.0

3.6.1.5. El commando Choice

El comando CHOICE tiene las siguientes palabras clave disponibles

ALTERNATIVES, especifica las alternativas (ej, Auto, TP, etc)

DEMAND, especifica la demanda (matriz) (ej, mw[1], mi.1.1, etc)

COST, especifica las matrices de costo (utilidad) de cada modo (ej,


mw[2], mi.1.3, etc)

UTILITIES, especifica las utilidades (desutilidades) de cada


modo(ej. Mw[1], mi.1.3, etc)

ODEMAND, indica los # de las matrices de salida (11, 12, etc.)

SPLIT, divide la matriz entre las opciones disponibles, utilizando un


coeficiente denominado parmetro de escala (modelos basados en
costo) ( = TOTAL, 0.02, Auto, TP) (= total auto, tp)

STARTMW, nmero de inicio de matrices de trabajo internas (ej.


60)

3.6.1.6. Parmetro de escala

Este parmetro se especifica en el caso de los modelos basados en costo. Este


parmetro permite establecer la sensibilidad entre las diferencias de costos entre
los modos y el porcentaje de seleccin de cada uno de estos.

Juan Pablo Solorzano Ing. MSc. - Consultor 49


CUBE 5.0

3.6.1.7. Ejemplos

Ejemplo1: El script siguiente corresponde a una eleccin modal mediante un


modelo logit absoluto, utilizando costos.
;matrices de costos
Mw[3] = mi.1.1
Mw[4] = mi.2.1
CHOICE,
ALTERNATIVES = car, tp, ; Listar alternativas (modos)
DEMAND = mi.1.1, ; Demanda total
COSTS = MW[3], MW[4], ; Ingresar costos
ODEMAND = 15,16, ; Pronosticar demanda (matrices)
SPLIT = TOTAL 0.02, car, pt, ; Estructura del modelo
STARTMW = 30 ; Matrices de trabajo (internas)

Ejemplo 2: Script para un modelo logit absoluto utilizando utilidades. Ntese que
no se utiliza el parmetro de escala.
;matrices de utilidades
Mw[3] = mi.1.1
Mw[4] = mi.2.1
CHOICE,
ALTERNATIVES = car, tp, ; Listar alternativas (modos)
DEMAND = mi.1.1, ; Demanda total
UTILITIES = MW[3], MW[4], ; definir desutilidades
ODEMAND = 15,16, ; Pronosticar demanda (matrices)
SPLIT = TOTAL car, pt, ; Estructura del modelo
STARTMW = 30 ; Matrices de trabajo (internas)

Juan Pablo Solorzano Ing. MSc. - Consultor 50


CUBE 5.0

3.7. Asignacin de viajes


Como se mencion anteriormente la funcionalidad primaria del mdulo
HIGHWAY es la de realizar la asignacin de viajes de una matriz OD a la red vial.

3.7.1. El mdulo HIGHWAY


Un proceso de asignacin de viajes tpico calcula las rutas disponibles entre los
diferentes pares de zonas basados en costo (impedancia), y asigna los viajes a
estas rutas.

Una vez que se ha realizado la asignacin se recalculan los costos en las vas de
acuerdo a la congestin y se vulva a realizar la asignacin, este proceso es
iterativo y finaliza una vez que se considera que no existen cambios
significativos en los costos, es decir se ha llegado al equilibrio.

3.7.1.1. Entradas y Salidas

Para realizar una asignacin se necesita disponer de la red en formato binario y


de una matriz de viajes.

Entradas:
Red en formato binario de Voyager (.net)
Matrices de viajes
Salidas
Red asignada
Matrices de extraccin de datos (skims) (opcional)

3.7.1.2. Variables

Para referirse a una variable se utiliza la siguiente nomenclatura:

Enlaces: Li.nombreVariable (solo existe un nico archivo de entrada)


Matrices de trabajo: Mw[n], donde n corresponde al nmero de la matriz de
trabajo

3.7.1.3. Estructura

El programa tiene cinco fases:

Juan Pablo Solorzano Ing. MSc. - Consultor 51


CUBE 5.0

SETUP: se utiliza para iniciar ciertas variables y/o arreglos


LINKREAD: para obtener los valores iniciales que se requieren de la red
inicial, y para calcular valores de los enlaces que el usuario va a hacer
referencia en otras fases.
ILOOP: se hace un bucle desde la zona 1 al resto de zonas
ADJUST: calcula el tiempo en congestin (Tc) en cada arco y revisa los
valores de TIEMPO que va a utilizarse en la siguiente iteracin
CONVERGE: realiza comprobaciones para verificar si hay convergencia en la
asignacin

3.7.1.4. Proceso

Agregar mediante el administrador de aplicaciones la red de entrada y la


matriz de viajes, crear un archivo para la red de salida
Declarar las fases LINKREAD y ILOOP
En la fase de linkread indicar que variable de la red corresponde al tiempo
inicial t0 (tiempo de flujo libre), en caso de que no se utilicen nombres de
variables convencionales
En la fase de iloop utilizar el comando pathload para asignar la matriz, la
palabra clave path indica como se debe evaluar la red para calcular las rutas,
y la palabra vol indica que matriz asignar

3.7.1.5. Funciones y variables por defecto

Que define la capacidad? Variable C

C=li.capacity

Cual es el tiempo en flujo libre del enlace? T0 (cero)

T0=li.distance *60/li.speed

Que volumen se utiliza en el clculo de capacidad? V, vol[n]

V=vol[1]+2*vol[2]

Cual es el tiempo de viaje para enlaces congestionados? tc

TC[1] = T0 *(1 + 0.15* (V/C) ^ 4)

Cual es el costo generalizado?

cost= TIME

Tc y cost vara por tipo de enlace (o grupo de tipos de enlaces)

En caso de no utilizar las funciones por defecto hace falta definirlas

Juan Pablo Solorzano Ing. MSc. - Consultor 52


CUBE 5.0

FUNCTION{V= TC= COST=}

3.7.1.6. Parmetros

Se puede especificar el mtodo de combinacin de cada iteracin utilizado para


realizar la asignacin, siendo estos equilibrio, suma, suma ponderada, promedio.
Tambin es posible especificar el nmero de iteraciones.

PARAMETERS COMBINE=SUM, FRACTIONS=.30,.20,5*.10 ; 7 Iteraciones-Incremental


PARAMETERS COMBINE=EQUI, MAXITERS=10

3.7.1.7. El Comando Pathload

El comando PATHLOAD se utiliza siempre dentro de una fase de ILOOP, sirve


para construir rutas y completar otros procesos basndose en dichas rutas.

Puede utilizar las siguientes palabras clave, las cuales pueden ser definidas en
cualquier orden:

PATH: especifica que variable (atributo) de la red se utilizar para construir las
rutas (ej. PATH=cost, PATH=time)

TRACE: se utiliza para extraer rutas entre zonas y reportarlas en el archivo de


impresin (ej. TRACE=(I=1, J=15) )

MW[]: Genera una fila de una matriz, se utiliza por lo general para extraer
costos (skims) de redes (ej. MW[1]=PATHTRACE(time) )

VOL[]: Especifica una expresin que ser resuelta para cada J (destino), se
utiliza para realizar la asignacin de viajes, generalmente se especifica la matriz
de viajes o una expresin. (ej. VOL[1] = mw[3] )

3.7.1.8. Ejemplos de expresiones Pathload para asignar viajes

A continuacin se presentan varias posibilidades de scripts de asignacin


dependiendo del objetivo deseado.

1. Caso simple, entrada una matriz de viajes, una red, salida una red asignada.
Las rutas a evaluarse son de acuerdo al tiempo, los tiempos de viaje se
ajustarn en cada iteracin de acuerdo a los niveles de congestin utilizando
la ecuacin de flujo-demora por defecto.

PHASE = ILOOP
PATHLOAD PATH=TIME, VOL [1]=mi.1.1

2. Igual que el anterior, pero con dos matrices de viajes (en uno do dos
archivos), ambas matrices utilizan las mismas rutas. Por defecto el programa
suma los volmenes 1 y 2 para recalcular los tiempos de viaje.

PHASE = ILOOP
PATHLOAD PATH=TIME, VOL [1] =mi.1.1, VOL [2] =mi.1.2

3. Igual que el anterior pero utilizando rutas diferentes, por ejemplo tiempos de
viaje para camiones establecidos en los atributos de la red (archivo original

Juan Pablo Solorzano Ing. MSc. - Consultor 53


CUBE 5.0

del GIS). Ntese que se debe definir una variable temporal lw en la cual se
pueden fijar o calcular valores.

PHASE = LINKREAD
LW.tiempoCAM= LI.TiempoCam
PHASE = ILOOP
PAHTLOAD PATH=TIME, VOL [1] =mi.1.1
PATHLOAD PATH=LW.TRKTIME, VOL [2] =mi.1.2

4. Simplemente obtener una matriz de tiempos y distancias (skim), sin asignar


viajes, no es necesario tener una matriz de viajes de entrada (obtendr
tiempos de viaje de flujo libre).

PHASE=ILOOP
PATHLOAD PATH=TIME, MW[1]=PATHTRACE(TIME),
MW[2]=PATHTRACE(LI.DISTANCE)

5. Igual que el anterior pero en combinacin con una asignacin de viajes para
obtener los tiempos de viaje reales (con trfico presente en las vas)

PHASE = ILOOP
PATHLOAD PATH=TIME, VOL[1]=mi.1.1, MW[1]=PATHTRACE(TIME)

6. Extraer un archivo de rutas (caminos), se deber definir primero en la caja


del proceso el archivo de salida Path File1, el keyword Patho=1 se refiere al
archivo 1 de salida de rutas.

PHASE = ILOOP
PATHLOAD PATH=TIME, VOL[1]=MI.1.1,PATHO=1,NAME='rutas'

3.7.1.9. Los resultados

La red asignada tendr los siguientes campos

V_1 , volumen total de las matrices asignadas

Vx_1, donde X corresponde al volumen X de la matriz correspondiente a vol[X]


= mi.num.num

VT_1, total de volmenes en los dos sentidos

VxT_1, total de los dos sentidos para el volumen x

Time_1, tiempo congestionado

VC_1, relacin volumen capacidad

Nota: el subndice _1 es creado la primera vez y evita que se sobrescriban los


volmenes asignados en caso de realizar asignaciones sucesivas, en cuyo caso
agregar el subndice 2, 3, ..

Juan Pablo Solorzano Ing. MSc. - Consultor 54


CUBE 5.0

3.7.1.10. Ejemplo

Ejemplo completo, los valores de las variables (atributos) debern corresponder


a los de la red que se utiliza, as como las matrices de viajes (este es un ejemplo
no necesariamente se puede aplicar directamente a los datos que UD. dispone)

RUN PGM=HIGHWAY
FILEI NETI = NETWORK.NET
FILEI MATI[1] = TRIPS.MAT
FILEI TURNPENI = TURNPEN.PEN
FILEO NETO = LOADED.NET
FILEO PATHO[1] = HWY_PATHS.PTH
; indicar los parmetros y los costos del tiempo
PARAMETERS COMBINE = EQUI GAP = 0.005
time_cost1 = 0.5
time_cost2 = 0.7
distance_cost1 = 0.2
distance_cost2 = 0.4
;indicar la capacidad y las clases de vas
PROCESS PHASE=LINKREAD
CAPACITY = LI.CAPACITY * 1.0
; indicar el tipo para vias principales tipo 1-4
IF (li.CLASS = 1-4) LINKCLASS = 1
; indicar el tipo para vias secundarias tipo 5-10
IF (li.CLASS = 5-10) LINKCLASS = 2
; definer grupos para exclusion de estos en la asignacin (enlaces de ferrocarril)
IF (li.CLASS = 11 | li.CLASS = 12) ADDTOGROUP=1
ENDPROCESS
;fase de asignacin (carga) a la red
PROCESS PHASE=ILOOP
PATHLOAD PATH=COST, PENI=1-2, ; incluir penalidades de giro,
VOL[1]=MI.1.CAR, ; cargar viajes de vehculos,
VOL[2]=MI.1.TRUCKS, ; cargar viajes de camiones,
EXCLUDEGROUP=1, ; excluir enlaces de ferrocarril
PATHO=1 NAME=COST_PATH INCLUDECOSTS=T ALLJ=T
; grabar archive de rutas
ENDPROCESS
;fase de ajuste
PROCESS PHASE=ADJUST
; Definir funciones de costo y demora
function {
tc[1]=t0*(1.0+0.15*((v/c)^8)) ; funcin de demora para vias principales
tc[2]=t0*(1.0+0.15*((v/c)^4)) ; funcin de demora para vas secundarias
cost[1]=time*time_cost1+li.distance*distance_cost1 ; funcin de costo para vias principales
cost[2]=time*time_cost2+li.distance*distance_cost2} ; funcin de costo para vias secundarias
ENDPROCESS
ENDRUN

Juan Pablo Solorzano Ing. MSc. - Consultor 55


CUBE 5.0

3.7.2. Obteniendo medidas de desempeo de la red


Generalmente la forma de analizar los resultados de varias alternativas es la de
comparar alguna medida de desempeo. Por ejemplo se puede comparar el
valor del total de vehculos hora de la red entre dos alternativas.

La salida de un proceso de HIGHWAY presenta un resumen de los valores del


costo, distancia y tiempo total de la red, sin embargo en el caso de tener varias
alternativas (escenarios), quizs no sea la manera mas ptima de ver los
resultados.

Adems es comn obtener matrices de costos extradas (skims) de la red


asignada como medida de comparacin.

Para automatizar el proceso de reportar resultados es posible y recomendable


crear un proceso de NETWORK posterior a la asignacin para extraer resultados
totales de la asignacin de viajes a la red.

3.7.2.1. NETWORK para procesar redes asignadas

Se necesita como entrada una red asignada y la salida ser otra red

En la fase de LINKMERGE definir las ecuaciones de desempeo, se necesita


acumular los resultados para obtener totales.

Ejemplo:
Process phase = linkmerge
vehKm = v_1 * distance ;calcular los vehculos kilmetro para cada enlace
_vehKmTotales = _vehKmTotales + vehKm ;acumular los resultados en una variable
temporal
endProcess
Process phase = summary
Print list= _vehKmtotales
EndProcess

Juan Pablo Solorzano Ing. MSc. - Consultor 56


CUBE 5.0

4
Captulo

4 TRANSPORTE PUBLICO

Este captulo describe las opciones que se pueden utilizar cuando se trabaja con
trasnporte pblico en Cube.

C ube dispone de un mdulo especfico para el manejo de transporte


pblico denominado PUBLIC TRANSPORT. Este permite realizar todas las
operaciones realizadas con transporte pblico desde el desarrollo de la
red hasta la asignacin y obtencin de resultados del sistema.

A partir de la versin 5.0 de Cube los sistemas de transporte pblico (lneas de


buses) pueden ser creados y editados en formato de Geodatabase de Arcgis, lo
cual facilita su edicin y presentacin.

Nota del autor: El uso de Geodatabase es opcional, Cube mantiene an el soporte para las versiones
anteriores en la cual los archivos de lneas de buses son en formato texto.

Juan Pablo Solorzano Ing. MSc. - Consultor 57


CUBE 5.0

4.1. Creacin / edicin de rutas


1. Del men File:

Seleccione Open para seleccionar un archivo existente de Geodatabase (archivo .mdb).


En el tipo de archivo seleccione GIS files (*.mdb, *.mxd)
Seleccione el archivo y presione Open.
Cube abrir el administrador de Geodatabase para la base seleccionada.

Tambin se puede utilizar el botn de administrador de geodatabase.

2. Una ves que se abre la ventana del Geodatabase, haga doble clic sobre la red vial (network)
que servir de base para las rutas de TP.

3. Abra nuevamente el administrador de Geodatabases

Presione el botn New y posteriormente seleccione PT Network, presione OK

Juan Pablo Solorzano Ing. MSc. - Consultor 58


CUBE 5.0

4. Seleccione a continuacin PT line data

5. Escriba el nombre que va a dar a sistema de rutas

6. Seleccione la red vial base que va a utilizar

7. Espere hasta que aparezca la ventana que indica que se cre exitosamente el sistema de rutas

8. En el administrador de Geodatabase haga doble click sobre el sistema de rutas creados,


confirme con SI la pregunta sobre abrir el archivo en la ventana activa. Alternativamente
puede seleccionar la opcin Add Data to Map

9. Seleccione en la barra superior el men Editor Start Editing, y posteriormente en Layer


seleccione el nombre del sistema de rutas de TP-

En este momento est listo para realizar ediciones de rutas.

10. Seleccione el botn creador de elementos y luego haga clic sobre el nodo de inicio de la ruta

Juan Pablo Solorzano Ing. MSc. - Consultor 59


CUBE 5.0

11. A continuacin aparecer una ventana en la que se debe ingresar informacin de la ruta,
siendo esta el Nombre, el modo (nmero), el operador (nmero) y si es de una direccin o
doble (ruta de regreso utiliza exactamente la misma ruta (rara vez).

12. Una vez ingresados estos datos se mueve la ventana a un costado y se procede a realizar clics
con ratn por los sitios donde circula la ruta. No es necesario hacer clic sobre todos los nodos,
pues el programa tiene un algoritmo de mnima ruta que permite dibujar la ruta probable entre
dos nodos.

Juan Pablo Solorzano Ing. MSc. - Consultor 60


CUBE 5.0

13. Cuando ha finalizado la edicin de la ruta se selecciona el visto ubicado en la parte superior
izquierda de la ventana de edicin de datos de la ruta, la ruta aparecer en la ventana de gis.

14. Para agregar ms rutas se repite el proceso

15. Para finalizar la edicin se selecciona del men Editor la opcin Stop Editing, y se confirma
que se quiere guardar los cambios.

Juan Pablo Solorzano Ing. MSc. - Consultor 61


CUBE 5.0

4.2. El mdulo PUBLIC TRANSPORT


La asignacin de pasajeros/viajes a la red de TP parecera ms simple; pero en
la mayora de casos es ms difcil que la de transporte privado.

Mayores requerimiento computacionales


Requiere que se haga suposiciones para simplificar el problema
Oferta

Los enlaces en la red se considera la que existe entre dos paradas/


terminales
Concepto de capacidad del enlace esta asociada a la capacidad de las
unidades (bus) y su frecuencia
El componente de tiempo debe incluir:
en el vehculo + caminar a parada + espera parada
La red debe incluir tramos de va compartida + tramos exclusivos o
segregados
Pasajeros

Se modela el movimiento de pasajeros y no de vehculos


Se requiere enlaces para caminar y transferencias
Costos
Privado: asociado al combustible
TP: asociado a las tarifas (ms complicado)
Por zonas, transferencias, por tiempo, fijas
Costo generalizado

4.2.1. Entradas y Salidas


Para realizar una asignacin se necesita disponer de la red base en formato
binario, red de transporte pblico, datos del sistema y de una matriz de viajes.

Entradas:

1 Archivo de redes Network


hasta10 archivos de Matrices de viajes
1 Archivo de sistema de TP
hasta 10 Archivos de factores
hasta 7 archivos de Lneas
hasta 7 archivos de NTLEG (enlaces a pie)
hasta 10 archivos de rutas
Salidas:

1 Archivo de lneas
1 red

Juan Pablo Solorzano Ing. MSc. - Consultor 62


CUBE 5.0

1 archivo DBF de enlaces


10 Matrices
1 archivos de NTLEG (enlaces a pie)
1 archivo de reporte
10 archivos de rutas

4.2.1.1. Las entradas


Archivo de red

Corresponde al archivo de la red vial, que fue resultado del proceso anterior

Archivo de lneas:

Se pueden utilizar varios archivos de lneas de transporte, en este caso se han


utilizado dos, uno correspondiente a la variable (key) lineasTP y otro fijo que
corresponde las lneas comunes para todos los escenarios. La edicin de las
lneas de transporte pblico se explic anteriormente.

Estos archivos pueden estar en formato texto y por lo tanto pueden ser editados
manualmente. El formato se presenta a continuacin:

LINE NAME="C0101", LONGNAME="C.Ecovia", MODE=1, OPERATOR=7,


VEHICLETYPE=1, TIMEFAC=1, CIRCULAR=F, HEADWAY[1]=30,
HEADWAY[2]=30, HEADWAY[3]=24, HEADWAY[4]=30, N=3245, -1589, 1588,
1307, 1595, 1591, 1592, 1331, -1736, 1804, -2159, 1232

Desde CUBE 5.0 los archivos de lneas pueden estar en formato Geodatabase (GIS) tal como
indicado en la seccin anterior

Archivo de sistema

Este archivo contiene la informacin correspondiente a los datos de modos,


operadores y curvas de espera del sistema. El archivo est en formato de texto
por lo cual su edicin tambin se la puede realizar manualmente, este se
presenta a continuacin.

;;<<PT>><<SYSTEM>>;;
MODE NUMBER=1 LONGNAME="Troncales sur" NAME="Troncal"
MODE NUMBER=2 LONGNAME="alimentadores" NAME="Alimentador"
MODE NUMBER=100 LONGNAME="Acceso-egreso" NAME="Acc"
MODE NUMBER=200 LONGNAME="Transferencia" NAME="xfer"

Juan Pablo Solorzano Ing. MSc. - Consultor 63


CUBE 5.0

OPERATOR NUMBER=1 LONGNAME="Vecinal"


VEHICLETYPE NUMBER=1 LONGNAME="Bus articulado" NAME="art" SEATCAP=128
CRUSHCAP=160 LOADDISTFAC=0.9 ,
CROWDCURVE[1]=1
VEHICLETYPE NUMBER=2 LONGNAME="Bus tipo I" NAME="Tipo I" SEATCAP=70
CRUSHCAP=90 LOADDISTFAC=0.9 ,
CROWDCURVE[1]=1
VEHICLETYPE NUMBER=3 LONGNAME="Bus Tipo II" NAME="Tipo II" SEATCAP=56
CRUSHCAP=70 LOADDISTFAC=0.9 ,
CROWDCURVE[1]=1
WAITCRVDEF NUMBER=1 LONGNAME="InitialWait" NAME="InitWait" ,
CURVE=1-0.5,16-8,27-12,48-15,
160-20
WAITCRVDEF NUMBER=2 LONGNAME="TransferWait" NAME="XferWait" ,
CURVE=1-0.5,4-2,12-6,20-8,
40-15,60-20
CROWDCRVDEF NUMBER=1 NAME="Demora" ,
CURVE=0-1,80-1.1,90-1.2,100-2.5

Archivo de tarifas

Contiene las definiciones del archivo de tarifas a ser utilizado, el programa puede
modelar varios sistemas. Para este proyecto se utiliz un sistema plano (flat), en
el cual existe un costo para abordar el servicio y existe otro costo para
transferirse de uno a otro servicio, pudiendo ser este ltimo igual al costo para
abordar. Por facilidad se codificaron tantos tipos de tarifas como modos de
transporte. En el ejemplo siguiente se indica la codificacin de un sistema de
tarifa, la variable IBOARDFARE indica el costo de abordar el servicio en USD, y la
variable FAREFROMFS indica el costo de transferencia desde los diferentes
servicios hacia este servicio. El sistema implementado corresponde a un sistema
en el cual las transferencias son gratuitas.

FARESYSTEM NUMBER=1,
NAME=Troncal,
LONGNAME="Servicio Troncal Corredores",
STRUCTURE=flat, SAME=SEPARATE,
IBOARDFARE= 0.250,
farefromfs =0.0,0.0
Archivo de factores

En este archivo se especifican los factores para el clculo del costo generalizado
y la informacin de control para los procesos de enumeracin y evaluacin de
rutas. A continuacin, se presenta el archivo junto con su explicacin respectiva.

Juan Pablo Solorzano Ing. MSc. - Consultor 64


CUBE 5.0

Factores Descripcin
/*For Route Enumeration*/ Asignacin del sistema de tarifas a los
FARESYSTEM=1, MODE=1 modos existentes, en este caso para
FARESYSTEM=1, MODE=2 cada modo se ha asignado un sistema
de tarifa.

MAXFERS=1 Mximo nmero de transferencias


EXTRAXFERS1 = 2 Numero de transferencias en el cual la
exploracin de rutas menos directas
cesa
EXTRAXFERS2 = 1 Mximo nmero de rutas exploradas en
exceso del nmero de transferencias
requeridas por la ruta de mnimo costo
SPREADFACT = 1.4 Factor multiplicativo utilizado por la
funcin de distribucin
SPREADFUNC=2 Define la funcin a utilizarse para la
distribucin del costo utilizado para la
evaluacin de rutas
SPREADCONST = 5 Constante adicionada a la funcin de
distribucin
/*For Route Enumeration and Evaluation*/
XFERPEN = 5, FROM= 1 TO=1
XFERPEN = 5, FROM= 1 TO=2 Define las penalidades en minutos para
XFERPEN = 5, FROM= 2 TO=1 las transferencias entre los distintos
XFERPEN = 10, FROM= 2 TO=2 modos, as como el factor a aplicarse a
XFERFACTOR=2.5, FROM= 1-10 TO=1-10 estas transferencias
/*For Route Evaluation*/ Define el modelo de servicio, pudiendo
SERVICEMODEL = FREQUENCYCOST ser solamente frecuencia, o como en
este caso frecuencia y costo
ALPHA = 0.80 Indica el peso del costo de caminata en
relacin al costo en un servicio
LAMBDAW = 0.8 Factor de escala para el modelo de
seleccin de caminata
LAMBDAA = 0.2 Factor de escala para modelo de
bajadas alternativas en nodos
CHOICECUT=0.05 Es aplicado en puntos de decisin de
caminata o salida para eliminar las
alternativas con poca probabilidad
IWAITCURVE=1, NODES=1000-5500 Indica el nmero de la curva de espera
y los nodos a los que se aplica
XWAITCURVE=2, N=1000-5500 Indica el nmero de la curva de espera
en puntos de transferencia y los nodos
a los que se aplica
WAITFACTOR=1.4,N=1000-5500 Factor de multiplicacin al tiempo de
espera en cada nodo
VALUEOFTIME= 8*{VofTime} Valor del tiempo en unidades
monetarias por hora, utilizados para
convertir las tarifas en tiempo.

4.2.2. Estructura
El programa tiene siete fases, (no todas son necesarias)

NODEREAD: Fase de lectura de nodos, puede realizar cmputos


adicionales Opcional)
LINKREAD: Lectura y computo de enlaces (opcional)
DATAPREP: Creacin y/o lectura de enlaces a pie (requerido para
creacin de red de TP)
MATI: Manipulacin de matrices de entrada y trabajo antes de
procesar cada zona de origen I, (Opcional)

Juan Pablo Solorzano Ing. MSc. - Consultor 65


CUBE 5.0

SELECTIJ: Permite la seleccin de pares de zonas especficos IJ,


para la evaluacin de rutas o para la revisin o asignacin de viajes
(Opcional)
SKIMIJ: Graba y manipula las matrices extradas de los pares de
zonas IJ (requerida para extraccin de matrices)
MATO: Permite el procesamiento de matrices de trabajo antes de
grabarlas a los archivos MATO (Opcional)

4.2.3. Proceso
Agregar mediante el administrador de aplicaciones la red de entrada, red de
TP y la matriz de viajes, crear un archivo para la red de salida, rutas y
reporte.
Declarar las fases DATAPREP
Crear los archivos del sistema, de factores y de tarifas
Editar el script

4.2.4. Funcionalidad
Crear una red de Transporte Pblico a partir de:

Una red de vas producida por NETWORK con distancias, tiempos,


tiempos de caminata, nodos. Sobre esta red de vas funciona la red de
Transporte Pblico
Informacin del sistema de transporte pblico, operadores, modos,
curvas de espera
Informacin de las lneas o servicios. Caractersticas y nodos
atravesados
Ramales a pie, accesos egresos de zonas, transferencias (generados
externamente o por script en el programa )
Informacin de control para enumeracin y evaluacin de rutas
Parmetros
Modelacin

Enumeracin y evaluacin de rutas: Encontrar mltiples rutas


discretas razonables y atractivas entre zonas, tomando en cuenta:
o Nmero de transferencias
o Dispersin Margen de costo sobre ruta mnimo costo
o Costos a pie y dentro del vehculo
o Penalidades por abordar o transferencia
o Tiempo de espera
o Tarifas (solo evaluacin)
Extraccin de matrices de costos
o Costos compuestos
o Valor de la seleccin
o Costos percibidos y costos reales (tiempos) de viaje

Juan Pablo Solorzano Ing. MSc. - Consultor 66


CUBE 5.0

o Tiempo de mnimo costo


Asignacin de viajes
o Modelo de seleccin de caminata (reparticin entre servicios
disponibles)
o Modelo de Servicio y Frecuencia Servicio, Frecuencia y Costo
para repartir entre servicios disponibles
Anlisis de asignaciones de viajes
o Transferencias entre modos
o Transferencias entre operadores
o Movimientos parada a parada

4.2.5. El script
En los parmetros se define el nmero de la matriz de viajes y el atributo
correspondiente al tiempo de viaje en TP.

PARAMETERS TRIPSIJ[1] = MI.1.1 TRANTIME = li.trantime

En la fase de DATAPREP mediante el comando GENERATE se crean los enlaces


de caminata, esta fase requiere de un atributo de la red base que indique el
costo de evaluacin de enlaces de caminata y los nodos en los cuales se desea
generar estos enlaces

PROCESS PHASE = DATAPREP


;Generar enlaces de acceso y egreso
GENERATE,
COST=lw.WalkCost,
MAXCOST=2*20,
NTLEGMODE = 100,
FROMNODE=1-18, TONODE=999-5500
ENDPROCESS

4.2.6. Resultados
Los reportes de inters son bsicamente tres. El primero corresponde al reporte
de transferencias, el cual consiste de una matriz de transferencias de pasajeros
entre modos de transporte. El segundo es un resumen de la asignacin por lnea
de transporte, que adems presenta informacin bsica de la misma como es el
modo, operador, nmero de paradas, nombre, frecuencia, distancia y tiempo. El
tercer reporte y el ms extenso es un listado de cada lnea de TP, nodo por
nodo, de las subidas, bajadas y volumen de pasajeros.

La informacin los reportes antes indicados es la que se utiliza para realizar una
evaluacin del sistema as como para realizar el dimensionamiento de la flota
necesaria adems de los anlisis econmicos.

Juan Pablo Solorzano Ing. MSc. - Consultor 67


CUBE 5.0

Reporte de transferencias

REPORT XFERSUM=OPERATOR UserClass=1


OPERATOR 1 2 3 4 5 6 7 10
------------------------------------------------------------------------
1 6,617.5 38.7 443.5 117.8 517.1 69.5 2,896.9 1,774.4
2 37.2 16.2 -- 92.7 299.0 -- 55.2 702.1
3 44.7 1.0 -- 13.5 1,472.2 0.0 120.4 445.9
4 518.1 163.0 389.3 -- 6.5 25.6 578.2 535.8
5 144.9 43.2 11.3 32.3 -- -- 837.0 978.8
6 118.9 0.5 0.9 36.5 -- -- 57.5 93.5
7 1,180.3 82.1 16.5 767.0 48.5 40.9 615.2 1,114.5
10 5,869.8 1,046.5 2,071.7 399.5 173.9 33.4 2,044.9 302.9

Resumen de lneas de TP
REPORT LINES UserClass=1
Name Mode Op Stp Cr Distance Time Pass PassDist PassHr
Sort=NAME
--------------------------------------------------------------------------------
029i 1 0 53 - 15.60 26.18 756.06 6,533.83 157.56 La Joya - Parque Industrial
029r 1 0 58 - 15.20 25.90 964.13 9,206.19 231.32 La Joya - Parque Industrial
030i 1 0 16 - 11.86 20.26 110.76 1,192.97 34.66 Quisapincha - Ambato
030r 1 0 19 - 11.32 18.74 83.60 932.25 25.51 Quisapincha - Ambato
031i 1 0 12 - 18.07 26.23 65.34 1,003.19 23.71 San Fernando - Ambato
031r 1 0 10 - 18.02 25.72 54.89 764.19 17.66 San Fernando - Ambato
032i 1 0 30 - 23.20 29.21 44.18 662.98 12.00 Pilahuin - Ambato
032r 1 0 30 - 23.16 29.13 67.47 1,035.73 20.09 Pilahuin - Ambato
050i 1 0 11 - 18.33 14.81 1,366.32 20,424.05 273.68 Expresa Terminales
050r 1 0 11 - 18.33 14.81 803.90 10,618.82 142.24 Expresa Terminales
IP010i 2 0 3 - 64.58 44.57 678.00 43,390.90 499.24 Occidente
IP010r 2 0 3 - 64.50 44.47 742.25 47,023.58 540.60 Occidente
IP012i 2 0 4 - 47.30 31.47 2,648.32 122,217.81 1,355.34 Sur
IP012r 2 0 4 - 47.30 31.47 2,341.31 104,417.87 1,158.30 Sur
IP001i 2 0 4 - 11.08 7.85 6,130.15 67,686.76 798.72 Norte
IP001r 2 0 4 - 11.08 7.85 6,034.36 66,680.08 786.89 NorteCuadro

Reporte nodo por nodo

REPORT LINEVOLS UserClass=Total


Name Mode Op ONs
N ON OFF VOL FM-On FM-Off FM-Vol
-----------------------------------------------------------------------------------

A011 2 10 Ons= 36.68 Capacity= 180.00


-------------------------------------------------------------------------------
1924 7.19 -- 7.19 7.19 -- 7.19
2854 0.60 -- 7.79 0.60 -- 7.79
1553 28.89 0.95 35.73 28.89 0.95 35.73
1554 -- 5.47 30.26 -- 5.47 30.26
3061 -- 16.32 13.94 -- 16.32 13.94
1551 -- 13.94 -- -- 13.94 0.00

Juan Pablo Solorzano Ing. MSc. - Consultor 68

You might also like