Τι είναι ο γενετικός προγραμματισμός;

Ο γενετικός προγραμματισμός είναι η διαδικασία ενίσχυσης των προγραμμάτων υπολογιστών με τη χρήση αλγορίθμων εμπνευσμένων από τη βιολογική εξέλιξη. Γλώσσες προγραμματισμού που προσφέρονται φυσικά στον γενετικό προγραμματισμό είναι εκείνες που μπορούν να αξιολογήσουν τον δικό τους κώδικα. Ένα κλασικό παράδειγμα είναι το LISP, του οποίου η χαρακτηριστική δομή δεδομένων είναι μια λίστα. Κάθε πρόγραμμα LISP γράφεται ως λίστα, έτσι τα προγράμματα LISP είναι πολύ καλά στο χειρισμό και την παραγωγή προγραμμάτων LISP.

Πώς λειτουργεί;

Ένα γενετικό πρόγραμμα ξεκινά με ένα σύνολο οδηγιών που χρησιμεύουν ως "χρωμοσώματα", και μια "λειτουργία φυσικής κατάστασης" που καθορίζει ποια αποτελέσματα είναι ιδανικά. Οι οδηγίες συνδυάζονται τυχαία για να παράγουν μια πρώτη "γενιά" προγραμμάτων, και στη συνέχεια τα συγκεκριμένα προγράμματα ελέγχονται για την καταλληλότητά τους.

Τα πιο κατάλληλα προγράμματα - εκείνα που πλησιάζουν περισσότερο στην επίτευξη της συμπεριφοράς που ορίζεται από τη λειτουργία φυσικής κατάστασης - επιλέγονται για "αναπαραγωγή". Τα χρωμοσώματα των ισχυρότερων προγραμμάτων συνδυάζονται, όπως ο γενετικός κώδικας συνδυάζεται στη βιολογική αναπαραγωγή. Μερικά χρωμοσώματα "διασχίζονται" (ανταλλάσσονται) με αυτά σε άλλα προγράμματα, και μερικά μεταλλάσσονται τυχαία με προκαθορισμένο τρόπο. Χιλιάδες ή ακόμη και εκατομμύρια προγράμματα μπορούν να παραχθούν, με κάθε γενιά να πλησιάζει και να προσεγγίζει περισσότερο την επίτευξη ενός επιθυμητού αποτελέσματος.

Οδηγίες, Προγραμματιστικοί όροι