Advertisement
Guest User

gacAStar

a guest
Oct 1st, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.75 KB | None | 0 0
  1. def gacAStar(g,constraints):
  2.     G0 = g.createCopy()
  3.     openQ = PriorityQueue()
  4.     closedQ = []
  5.     initialize(G0,constraints)
  6.     domainFilter(G0,constraints)
  7.     print G0
  8.  
  9.     openQ.add(G0)
  10.    
  11.     while len(openQ)>0:
  12.         Gn = openQ.pop()
  13.         closedQ.append(Gn)
  14.         if Gn.isSolution(): return Gn
  15.         elif Gn.isContradictory(): return None
  16.         else:
  17.             Vn = Gn.startingPoint()
  18.             index = Vn.index
  19.             for i in range(0,len(Vn.domain)):
  20.                 Gi = Gn.createCopy()
  21.                 Vi = Gi.get(index)
  22.                 Vi.assignDomain(Vn.domain[i])
  23.                 openQ.add(Gi)
  24.                 rerun(Gi,Vi,constraints)
  25.                
  26.                 Gi.computeF()
  27.                 print Gi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement