Branch-and-bound med dynamisk programmering

Mål: finne korteste sti fra S til G i en graf.
  1. La Q være en kø med ett element: stien av lengde null fra S til S.
  2. Gjenta inntil Q er tom eller inntil første stien i Q terminerer i G:
    1. La s være første stien i Q, fjern s fra Q; dann nye stier s1,s2,... ved å utivde s langs kanter fra siste node i s.
    2. Fjern alle nye stier som inneholder løkker.
    3. Legg alle gjenværende stier til Q.
    4. Hvis to eller flere stier i Q når samme node, fjern alle stiene utenom den som når den felles noden med lavest kostnad
    5. Sorter Q med hensyn på sti-lengde, la stiene med minst kostnad være først i Q.
  3. Hvis G ble nådd, rapporter den billigste stien til G (første sti i Q), ellers rapporter at G ikke kan nås fra S.

Siden er skrevet at Inge Jonassen, vennligst send en melding til inge@ii.uib.no dersom du oppdager feil eller har andre kommentarer ellers spørsmål.