Cloud Search-algoritmen er en søkemetode som innebærer å generere et stort sett med tilfeldige løsninger, ofte referert til som "skyen", og deretter søke etter de beste løsningene i dette settet. Denne tilnærmingen brukes ofte for å finne omtrentlige løsninger for komplekse problemer når ingen spesifikk veiledning er tilgjengelig.
Hvordan det fungerer
- Skyinitialisering: Lag et stort sett med tilfeldige løsninger(skyen).
- Evaluering: Evaluer kvaliteten på hver løsning i skyen basert på den objektive funksjonen eller evalueringskriteriene.
- Utvalg: Velg et undersett av de beste løsningene fra skyen basert på sannsynligheter eller utvalgskriterier.
- Forbedring: Forbedre kvaliteten på løsninger i skyen ved å bruke transformasjoner eller optimaliseringer.
- Iterasjon: Gjenta trinn 2 til 4 til et tilfredsstillende resultat er oppnådd eller et forhåndsdefinert antall iterasjoner er nådd.
Eksempel: Cloud Search for Traveling Salesman Problem
Tenk på Traveling Salesman Problem(TSP), der målet er å finne den korteste Hamiltonian-syklusen som besøker alle byer. Cloud Search-metoden kan generere et stort antall tilfeldige Hamiltonian-sykluser, og velg deretter syklusen med lavest kostnad.
Kodeeksempel i C++
I dette eksemplet bruker vi Cloud Search-metoden for å løse TSP. Vi genererer et stort antall tilfeldige Hamiltonske sykluser ved å stokke byene tilfeldig, beregne kostnadene for hver syklus og velge syklusen med lavest kostnad.