Imagine que você tenha executado uma simulação dinâmica (meso, micro ou híbrida) que lhe dá tempos de viagem precisos para veículos de transporte público que levam em conta congestionamentos, faixas reservadas, semáforos e algoritmos de prioridade de circulação. Não seria bom usar estas informações para obter uma estimativa mais precisa do tempo de viagem de ponto-a-ponto em uma atribuição macroscópica de transporte público?

Graças ao ambiente de modelagem integrado fornecido pelo Aimsun, isto é possível. Basta escrever uma função de Atraso no Transporte Público que lê o tempo de viagem do ônibus a partir das séries temporais produzidas pela simulação dinâmica.

Atribuição de transporte público
Por exemplo:

costCol = None
def pdf( context, line, ptsection ):
	global costCol
	if costCol == None:
		model = ptsection.getModel()
		vehicleType = model.getType("GKVehicle")
		vehicleId = model.getCatalog().findByName("Bus", vehicleType).getId()
		costCol = model.getColumn("DYNAMIC::SRC_GKSection_travelTime_%i" % vehicleId)
	res = 0.0
	fromStop = ptsection.getMaster().getOrigin()
	if fromStop != None:
		sectionLength = fromSection.length2D()
		fromSection = fromStop.getSection()
		fromFraction = (sectionLength - fromStop.getPosition()) / sectionLength
	else:
		fromSection = None
	toStop = ptsection.getMaster().getDestination()
	if toStop != None:
		toSection = toStop.getSection()
		toFraction = toStop.getPosition() / toSection.length2D()
	else:
		toSection = None
	for section in ptsection.getMaster().getRoute():
		fraction = 1.0
		if fromSection != None and section.getId() == fromSection.getId():
			fraction = fromFraction
		elif toSection != None and section.getId() == toSection.getId():
			fraction = toFraction
		ts = section.getDataValueTS(costCol)
		if ts != None:
			res += ts.getAggregatedValue()/60 * fraction
	if res == 0.0:
		print "No dynamic cost for PT Section %i" % ptsection.getId()
		res = 60.0 * ptsection.getDistance()/1000.0 / 20.0 #km/h
	return res

A função lê o tempo de viagem da última simulação para o tipo de veículo do ônibus a partir da seção, e como o custo para a atribuição do TP é expresso para as seções do TP, ou seja, para os segmentos de parada a parada, ele o adiciona para todas as seções entre paradas, calculando uma fração para a primeira e última seção, dependendo da posição dos pontos de parada do ônibus.

Uma aplicação importante desta abordagem é estimar o efeito na distribuição e divisão modal das mudanças operacionais feitas no sistema de transporte, tais como a introdução de prioridade de sinal e faixas reservadas ao longo de um corredor.