Hvordan finne Minimum Genetiske Algoritmer

Hvordan finne Minimum Genetiske Algoritmer


Genetiske algoritmer er et programmeringsteknikk som dataforskere lært av naturen. Nature design vakre planter og dyr løsninger på vanskelige problemer ved strengt mekaniske midler uten intelligente retninger. Genetiske algoritmer kan finne den optimale svaret på vanskelige design problemer når du har ingen anelse om hvordan du går frem. De eneste nødvendige begrensninger er at du må ha et optimaliseringsproblem og at løsningene kan beskrives med en tallrekke.

Bruksanvisning

1 Design en streng av tall som beskriver en løsning på problemet. Design en funksjon som kan vurdere disse strengene; gitt en streng, kan denne funksjonen fortelle deg hvor god strengen er som et svar på problemet. For eksempel kan strengen være en liste over målinger av det indre av en rakettmotor turbopumpe. Funksjonen vil være en beregning av skyvekraft fra et kammer med disse målingene. Strengen kan også være prosenter av vann, sand, sement og grus som utgjør en blanding av undersjøiske betong.

2 Skriv et dataprogram som utvikler seg strengene mot optimalisering. Start med en befolkning på strenger der alle tallene i strengene ble valgt tilfeldig. En "generasjon" består av å evaluere alle strenger i "befolkningen" og forkaster strengene med de laveste verdiene. Strengene med høyest evalueringene vil fortsette inn i neste generasjon. En tilfeldig blanding av de store preforming strengene vil også gjøre det til neste generasjon. Noen av disse strengene kan ha tilfeldige mutasjoner til ett av tallene i strengen. Denne prosessen gjentas for flere generasjoner. Antall strenger i hver generasjon er de samme.

3 Finn minimum genetiske algoritmen ved å kjøre løsningen med en av de tallene som mangler. Hvis det er "n" antall i en streng, vil dette bety kjører "n" forskjellige populasjoner ett med hvert av numrene mangler. Hvis de kortere strengene har fortsatt den samme høye evaluering, løpe kortere og kortere populasjoner til du finner den korteste strengen som vil fungere for det spesifikke problemet. For konkret problem, vil dette fortelle deg om du kunne la ut en av ingrediensene.

Hint

  • Jo større befolkningen er, jo mer sannsynlig er det at du vil finne den optimale streng.
  • Jo større befolkning, jo lenger tid tar det å kjøre programmet. Genetisk algoritme programmer er vanligvis kjøres over natten.