Ανάπτυξη λογισμικού για τη δημιουργία σχηματικού σε αυτοματοποιημένη διαδικασία παραγωγής ψηφιακών κυκλωμάτων
Abstract
Η τεχνητή νοημοσύνη έχει μεταμορφώσει τις βιομηχανικές δραστηριότητες. Μία από
τις πιο σημαντικές εφαρμογές της τεχνητής νοημοσύνης είναι η μείωση του υπολογιστικού
κόστους βελτιστοποίησης.
Τα τελευταία χρόνια παρατηρείται η ολοένα και περισσότερο χρήση της τεχνητής
νοημοσύνης για την επίλυση προβλημάτων με μεγάλη χρονική πολυπλοκότητα.
Με τον όρο βελτιστοποίηση εννοούμε ότι ελαχιστοποιούμε ή μεγιστοποιούμε κάποια
μεγέθη ανάλογα με το πρόβλημα που έχουμε να αντιμετωπίσουμε.
Οι αλγόριθμοι βελτιστοποίησης ταξινομούνται σε δύο τύπους: ακριβείς αλγόριθμους
και κατά προσέγγιση αλγόριθμους. Οι ακριβείς αλγόριθμοι μπορούν να βρουν με ακρίβεια
βέλτιστες λύσεις, αλλά δεν ισχύουν για πολύπλοκα προβλήματα βελτιστοποίησης και ο
χρόνος λύσης τους αυξάνεται εκθετικά σε τέτοια προβλήματα. Οι κατά προσέγγιση
αλγόριθμοι μπορούν να βρουν σχεδόν βέλτιστες λύσεις για δύσκολα προβλήματα
βελτιστοποίησης σε σύντομο χρονικό διάστημα.
Στην παρούσα διπλωματική εργασία λύνουμε κατά προσέγγιση ένα πρόβλημα
βελτιστοποίησης υπό περιορισμούς με τη χρήση γενετικού αλγόριθμου. Πιο συγκεκριμένα,
λύνουμε το πρόβλημα της δημιουργίας βελτιστοποιημένων σχηματικών ψηφιακών
κυκλωμάτων. Δύο είναι τα βασικά υποπροβλήματα που έχουμε να αντιμετωπίσουμε, πρώτον
είναι το πρόβλημα της τοποθέτησης αντικειμένων σε δισδιάστατο χώρο με βέλτιστο τρόπο
και δεύτερον το πρόβλημα της εύρεσης συντομότερης διαδρομής για την διασύνδεση των
στοιχείων μεταξύ τους.
Επιπλέον, θα χρησιμοποιήσουμε το εργαλείο Logisim που είναι ένα λογισμικό για
σχεδίαση ψηφιακών κυκλωμάτων. Το Logisim είναι λογισμικό ανοιχτού κώδικα,
χρησιμοποιείται από Πανεπιστημιακά τμήματα για την διεξαγωγή των μαθημάτων της
Ψηφιακής Σχεδίασης και είναι διαθέσιμο για χρήση χωρίς χρέωση. Μπορεί κάποιος να το
κατεβάσει ελεύθερα από http://www.cburch.com/logisim/download.html.
Για τον λόγο αυτό αναπτύχθηκε ένα εργαλείο γραμμής εντολών, που δέχεται σαν
είσοδο ένα αρχείο (.dot) με τον ορισμό του ψηφιακού κυκλώματος και σαν έξοδο έχουμε ένα
αρχείο (.circ) συμβατό με το Logisim, που περιέχει το σχηματικό του ψηφιακού κυκλώματος
4 | 9 4
μετά την βελτιστοποίηση. Η βελτιστοποίηση του σχηματικού μπορεί να επηρεαστεί σε
μεγάλο βαθμό από τον χρήστη μέσω των παραμέτρων γραμμής εντολών του εργαλείου.
Επίσης, ένα μεγάλο και χρονοβόρο κομμάτι του εργαλείου ήταν η διασύνδεση του με
τα κυκλωματικά στοιχεία του Logisim. Τα κυκλωματικά στοιχεία του Logisim με τα
αντίστοιχα χαρακτηριστικά τους είναι αποδεκτά στο σύνολό τους με λίγες εξαιρέσεις σε
ορισμένα χαρακτηριστικά.
Artificial intelligence has transformed industrial activities. One of the important
applications of artificial intelligence is the reduction of computing optimization costs.
In recent years, we have noticed the increasing use of artificial intelligence to solve
problems with great time complexity.
By optimization we mean that we minimize or maximize some sizes depending on the
problem we have to deal with.
Optimization algorithms are classified into two types: precise algorithms and
approximate algorithms. Precise algorithms can accurately find optimal solutions, but they do
not apply to complex optimization problems and their solution time increases exponentially in
such problems. Approximate algorithms can find almost optimal solutions to difficult
optimization problems in a short period of time.
In the present dissertation, we solve approximately a problem of optimization under
constraints using genetic algorithm. More specifically, we solve the problem of creating
optimized schematic digital circuits. There are two main sub-problems we have to deal with,
firstly the problem of placing objects in two-dimensional space in an optimal way and
secondly the problem of finding the shortest path to interconnect the components with each
other.
In addition, we will use the Logisim tool which is software for designing digital
circuits. Logisim is open source software, used by University departments to conduct Digital
Design courses and is available for free use. You can download it for free from
http://www.cburch.com/logisim/download.html.
For this reason, a command-line tool was developed, which accepts a file (.dot) as the
input with the definition of the digital circuit, and as an output, we get a file (.circ) compatible
with Logisim, which contains the schematic of the digital circuit after optimization.
Schematic optimization can be greatly influenced by the user through the command line
arguments.
6 | 9 4
Also, a big and time-consuming part of the tool creation was its interconnection with
Logisim's circuit elements. Logisim's circuit elements with their corresponding characteristics
are acceptable in their entirety with a few exceptions to certain features.