σχεδιάσει μια σειρά από αριθμούς που περιγράφει μια λύση στο πρόβλημά σας . Σχεδιάστε μια λειτουργία που μπορεί να αξιολογεί αυτές τις χορδές ? Δοθεί μια σειρά , αυτή η λειτουργία μπορεί να σας πει πόσο καλή είναι η σειρά είναι η απάντηση στο πρόβλημά σας . Για παράδειγμα, η συμβολοσειρά μπορεί να είναι ένας κατάλογος των μετρήσεων του εσωτερικού της αντλίας Turbo κινητήρα πυραύλου. Η λειτουργία θα ήταν ένα υπολογισμό της ώσης από ένα θάλαμο με αυτές τις μετρήσεις. Η σειρά θα μπορούσε επίσης να είναι τα ποσοστά του νερού , άμμο , τσιμέντο και χαλίκι που αποτελούν ένα μείγμα από υποθαλάσσια σκυροδέματος . 2
Γράψτε ένα πρόγραμμα υπολογιστή που εξελίσσεται τις χορδές προς βελτιστοποίηση . Ξεκινήστε με πληθυσμό χορδές , όπου όλοι οι αριθμοί στις χορδές είχαν επιλεγεί τυχαία . Μια " γενιά " αποτελείται από την αξιολόγηση όλων των χορδών στον « πληθυσμό» και απορρίπτοντας τις χορδές με τις χαμηλότερες τιμές . Οι χορδές με τις υψηλότερες αξιολογήσεις θα συνεχίσουν στην επόμενη γενιά . Μια τυχαία ανάμειξη των υψηλών χορδές προδιαμόρφωσης θα καταστήσει επίσης στην επόμενη γενιά . Μερικές από αυτές τις χορδές θα έχουν τυχαίες μεταλλάξεις σε ένα από τους αριθμούς στη συμβολοσειρά . Αυτή η διαδικασία επαναλαμβάνεται για αρκετές γενεές . Ο αριθμός των χορδές σε κάθε γενιά είναι η ίδια .
Εικόνων 3
Βρείτε το ελάχιστο γενετικό αλγόριθμο εκτελώντας λύση σας με έναν από τους αριθμούς που λείπουν . Εάν υπάρχουν αριθμοί "η" σε μια σειρά , αυτό θα σημαίνει τρέχει "η" διαφορετικούς πληθυσμούς μία με καθένα από τους αριθμούς που λείπουν . Εάν οι μικρότερες χορδές εξακολουθούν να έχουν την ίδια υψηλή αξιολόγηση , τρέχει όλο και μικρότερες πληθυσμούς , μέχρι να βρουν τη συντομότερη σειρά που θα λειτουργήσει για το συγκεκριμένο πρόβλημα . Για το συγκεκριμένο πρόβλημα , αυτό θα σας πω αν θα μπορούσε να αφήσει ένα από τα συστατικά .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα