Tartalomjegyzék:
Meghatározás - Mit jelent a hegymászás?
A hegymászás matematikai optimalizálási heurisztikus módszer, amelyet többféle megoldással bíró, számítástechnikai szempontból nehéz feladatok megoldására használnak. Egy iteratív módszer, amely a lokális keresőcsaládhoz tartozik, és véletlenszerű megoldással kezdődik, majd azt egyenként, egyenként továbbfejleszti, amíg egy többé-kevésbé optimalizált megoldáshoz jut.
A Techopedia magyarázza a hegymászást
A hegymászás egy optimalizálási technika, amelyet arra használnak, hogy "helyi optimális" megoldást találjanak egy számítási problémára. Egy olyan megoldással kezdődik, amely nagyon rossz az optimális megoldáshoz képest, és onnan fokozatosan javul. Ezt úgy hozza létre, hogy "szomszédos" megoldásokat hoz létre, amelyek viszonylag egy lépéssel jobbak, mint a jelenlegi megoldások, kiválasztja a legjobbat, majd megismétli a folyamatot, amíg a legoptimálisabb megoldáshoz nem érkezik, mivel már nem talál javulást.
Változatok:
- Egyszerű - az első legközelebbi csomópont vagy megoldás kerül kiválasztásra.
- Legszélesebb emelkedés - Valamennyi rendelkezésre álló megoldást megvizsgálunk, majd kiválasztjuk a legközelebbi megoldást.
- Sztochasztikus - A szomszédos megoldást véletlenszerűen választják ki, majd az aktuális csomóponttal szembeni javítás nagysága alapján döntenek arról, hogy továbbmegyek-e ehhez a megoldáshoz.
A hegymászást iteratív módon hajtják végre - egy teljes eljáráson megy keresztül, és a végső megoldást tárolják. Ha egy másik iteráció jobb végső megoldást talál, a tárolt megoldást vagy állapotot kicseréli. Ezt úgy is nevezik, hogy puskás hegymászás, mivel egyszerűen kipróbál különböző útvonalakat, amíg el nem éri a legjobbat, csakúgy, mint a pontatlan lőfegyver, de a lövedékek széles elterjedése miatt mégis elérheti a célpontját. Ez sok esetben nagyon jól működik, mivel kiderül, hogy jobb a CPU-erőforrásokat különféle útvonalak feltárására fordítani, mint a kezdeti körülményektől gondosan optimalizálni.
