Προς το περιεχόμενο
  • 0

Constraints σε genetic algorithm


Lanike71

Ερώτηση

Καλησπέρα,

Καραντίνα έχουμε, να σκοτώσουμε το χρόνο μας λίγο... :-)

Πλάκα κάνω, λοιπόν:

Θέλω να λύσω ένα πρόβλημα και επέλεξα γενετικό αλγόριθμο ως το μέσο. Το πρόβλημα που δημιουργείται είναι ότι υπάρχουν πολλές συνθήκες και δε μπορεί οποιοδήποτε χρωμόσωμα να αποτελεί λύση, έστω και με κακό fitness. Παράδειγμα, αν το πρόβλημα είναι η ελαχιστοποίηση μίας συνάρτησης, έστω f(x) = x1 + x2 + x3^2 - 100*x4,  τότε μπορεί να υπάρχουν constraints τύπου x1+x2 > 100, x2*x3 < 50 κλπ.

Ακόμα χειρότερα, αν υπάρχουν στο ίδιο χρωμόσωμα πολλές φορές τα x1, x2 κλπ (σαν ένας δισδιάστατος πίνακας στο τέλος) και ανάλογα με τη θέση και την τιμή, να επηρεάζει το ένα το άλλο ως προς τις συνθήκες.

Υπάρχει κάποιος αλγόριθμος ή στρατηγική ώστε στην αρχή να δημιουργούνται χρωμοσώματα τα οποία να είναι αποδεκτά ως λύση;

Λινκ είναι μια χαρά, έψαξα και δε βρήκα κάτι συγκεκριμένο.

Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

3 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

  • 0

Παει καιρος που ασχοληθηκα, αλλα θεωρητικά αν πας και βαλεις fitness O (μηδεν) σε ολα οσα αυτα που δεν επιτρεπονται, σιγα-σιγα ο πλυθυσμος σου θα μαθει. 
 

Δεν εχει τοσο νοημα να τα κατασκευαζεις apriori με συγκεκριμενο τροπο, αυτο ειναι το πλεονεκτημα των γενετικων.

  • Like 1
Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0
15 ώρες πριν, Technology fan είπε

Παει καιρος που ασχοληθηκα, αλλα θεωρητικά αν πας και βαλεις fitness O (μηδεν) σε ολα οσα αυτα που δεν επιτρεπονται, σιγα-σιγα ο πλυθυσμος σου θα μαθει. 
 

Δεν εχει τοσο νοημα να τα κατασκευαζεις apriori με συγκεκριμενο τροπο, αυτο ειναι το πλεονεκτημα των γενετικων.

Νομίζω όμως ότι έτσι χάνεις το mutation, εκτός και αν θέσεις κάποια σημεία στο χρωμόσωμα εκτός διαδικασίας mutation με πιθανότητα 0%.

Ευχαριστώ.

Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Πρέπει στο fitness να δώσεις μια "ποινή" ανάλογα με τις ανισότητες, δλδ όσο πιο λάθος χρωμοσώματα είναι τόσο μεγαλύτερο να είναι το penalty.

Αν θυμάμαι καλά δηλαδή ψάξε για penalty functions.

  • Like 1
Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Εγγραφείτε για έναν νέο λογαριασμό

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...

Με την περιήγησή σας στο insomnia.gr, αποδέχεστε τη χρήση cookies που ενισχύουν σημαντικά την εμπειρία χρήσης.