Algorithms For Dummies


PART 5   Challenging Difficult Problems



Download 7,18 Mb.
Pdf ko'rish
bet608/651
Sana15.07.2021
Hajmi7,18 Mb.
#120357
1   ...   604   605   606   607   608   609   610   611   ...   651
Bog'liq
Algorithms

 

   


  PART 5 

 Challenging Difficult Problems

            run 

+= graph_weight(graph, A, B)

        return run

    else:

        return 0

Having prepared all the basic functions, the example creates a maze using a seed 

value of 30. This maze presents two main routes going from vertex A to vertex Y 

because  there  are  some  obstacles  in  the  middle  of  the  map  (as  shown  in 

 Figure 20-3). There are also some dead ends on the way (such as vertexes E and O).

graph, coordinates = create_maze(seed=30)

start = 'A'

goal  = 'Y'

scoring=manhattan_dist

The BFS implementation is a bit more complex than the depth-first search code 

found in Chapter 9. It uses two lists: one to hold the never-visited vertexes (called 

open_list

), and another to hold the visited ones (

closed_list

). The 


open_list

 

list acts as a priority queue, one in which a priority determines the first element 



to extract. In this case, the heuristic provides the priority, thus the priority queue 

provides a direction that’s closer to the target. The Manhattan distance heuristic 

works best because of the obstacles obstructing the way to the destination:

# Best-first search

path = {}

open_list = set(graph.nodes())



FIGURE 20-3: 

An intricate maze 

to be solved by 

heuristics.




CHAPTER 20


Download 7,18 Mb.

Do'stlaringiz bilan baham:
1   ...   604   605   606   607   608   609   610   611   ...   651




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish