Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

ss15:projekte_im_sommersemester_15:dokumentation:iteration

Dies ist eine alte Version des Dokuments!


iteration

Wird von main aufgerufen. Returned eine Liste von Knoten.

# -*- coding: utf-8 -*-
from __future__ import division
 
from getVorschlag import getVorschlag
from pruefen import pruefen
from config import GOTT, Variablen
GOTT = GOTT()
variablen = Variablen()
 
 
def iteration(front):
 
	'''Wird in einer Schleife aufgerufen'''
	neufront=[]
 
	for knoten in front:
		for vorschlag in getVorschlag(knoten):
			neufront=pruefen(vorschlag,knoten,neufront)
 
 
	#Erhöht Indizes von allen Elementen in der Warteliste um 1
	GOTT.warteliste=[[x[0],x[1]+1] for x in GOTT.warteliste]
 
	while len(GOTT.warteliste)>0 and GOTT.warteliste[0][1]>=variablen.nebenstrassenverzoegerung:
		neufront.append(GOTT.warteliste.pop(0)[0])
 
	return neufront

In iteration wird für jeden Knoten in der „front“-Liste getVorschlag durchgeführt. Jedes Element dieser Liste wird in pruefen geprüft. Dabei werden manche Elemente in die neufront übernommen. Schließlich wird der Index von allen Elementen in der Warteliste inkrementiert und anschließend werden alle Knoten, die lange genug in der Warteliste gewartet haben, in die neue Front übernommen.

ss15/projekte_im_sommersemester_15/dokumentation/iteration.1433429311.txt.gz · Zuletzt geändert: 2016/05/10 14:46 (Externe Bearbeitung)