Το πρόγραμμα Airplane Optimization χρησιμοποιεί αλγόριθμο βελτιστοποίησης VRP (Vehicle Routing Problem) και υπολογιστικό τύπο Haversine για να υπολογίζει τις βέλτιστες διαδρομές αεροπλάνων με βάση τα δεδομένα των προορισμών και άλλων παραμέτρων.
Ακολουθήστε τα παρακάτω βήματα για να τρέξετε το πρόγραμμα.
Αν έχετε λογαριασμό GitHub:
- Επισκεφτείτε το GitHub repository.
- Αντιγράψτε το URL του repository.
- Στο
cmd, εκτελέστε τις παρακάτω εντολές:
git clone https://github.com/AnastasiosDrimis/My-Project-Repository.git
cd My-Project-Repository
cd airplaneoptimization
cd src
cd main
cd java
cd com
cd codewarrios
java CombinedApplicationΑν δεν έχετε GitHub:
- Επισκεφτείτε το GitHub repository.
- Πατήστε το κουμπί Code και επιλέξτε την επιλογή Download ZIP.
- Αποσυμπιέστε το ZIP στον υπολογιστή σας.
- Ανοίξτε τα αρχεία του project και εκτελέστε το
.jarαρχείο (βρίσκεται στον target φάκελο).
Αν έχετε το .jar αρχείο, μπορείτε να το εκτελέσετε με την παρακάτω εντολή:
java -jar airplaneoptimization-1.0-SNAPSHOT.jarΚατά την εκκίνηση της εφαρμογής, εμφανίζεται το παράθυρο Login. Μπορείτε να συνδεθείτε με τους εξής λογαριασμούς:
-
Για χρήστη:
- Username:
user - Password:
user123
- Username:
-
Για διαχειριστή (admin):
- Username:
admin - Password:
admin123
- Username:
Αν συνδεθείτε ως admin, θα εμφανιστεί το παράθυρο επιλογής για τους διαχειριστές, το οποίο επιτρέπει στον admin να:
- Δημιουργεί νέους χρήστες/admins με διαφορετικούς κωδικούς.
- Προσθέτει αεροδρόμια δίνοντας τα απαραίτητα στοιχεία.
Σε περίπτωση λάθους κατά την εισαγωγή στοιχείων, το πρόγραμμα εμφανίζει τα κατάλληλα μηνύματα σφάλματος. Όσο δεν κλείνετε την εφαρμογή, μπορείτε να κάνετε login με τα στοιχεία των νέων χρηστών που δημιουργείτε, αλλά και να βλέπετε στην λίστα τους προορισμούς που προσθέσατε.
Αν συνδεθείτε ως user, το πρόγραμμα θα ζητήσει να εισάγετε:
- Αριθμό αεροπλάνων που θέλετε να χρησιμοποιήσετε.
- Αριθμό προορισμών που επιθυμείτε να προσθέσετε.
Στη συνέχεια, θα εμφανιστεί ένας πίνακας με τους προορισμούς. Μπορείτε να επιλέξετε τους προορισμούς που θέλετε να επισκεφτείτε κρατώντας πατημένο το Control και κάνοντας κλικ σε κάθε προορισμό. Πατώντας Submit, θα εμφανιστούν:
- Τα αεροπλάνα που θα χρησιμοποιηθούν.
- Οι διαδρομές των αεροπλάνων.
- Η συνολική χιλιομετρική απόσταση που διανύει το κάθε αεροπλάνο.
Στο αποθετήριό μας στο github βρίσκεται ένας φάκελος airplaneoptimization. Εκεί περιέχονται όλα τα απαραίτητα αρχεία για το πρόγραμμά μας. Επίσης, υπάρχει το file license, με την απαραίτητη άδεια του προγράμματος. Υπάρχει η φωτογραφία για το uml. Τέλος, υπάρχει το file readme.
Σε περίπτωση που εισάγονται λάθος στοιχεία ή δεν είναι έγκυρες οι εισαγωγές, το πρόγραμμα εμφανίζει τα κατάλληλα μηνύματα σφάλματος.
Το πρόγραμμα χρησιμοποιεί:
- Πίνακες, λίστες, μεταβλητές, μέθοδοι και κλάσεις για την αποθήκευση και επεξεργασία δεδομένων.
- Υπολογιστικό τύπο Haversine για τον υπολογισμό της χιλιομετρικής απόστασης μεταξύ προορισμών με βάση το γεωγραφικό πλάτος και ύψος.
- Αλγόριθμο βελτιστοποίησης VRP σε απλή μορφή για την εύρεση των καλύτερων διαδρομών.
- Βεβαιωθείτε ότι έχετε το JDK εγκατεστημένο στον υπολογιστή σας για να μπορέσετε να μεταγλωττίσετε και να τρέξετε το πρόγραμμα μέσω του
javacή τουjava. - Αν η εφαρμογή δεν λειτουργεί σωστά, ελέγξτε τα δεδομένα εισόδου και βεβαιωθείτε ότι οι κωδικοί και οι παράμετροι εισαγωγής είναι σωστοί.
Το συγκεκριμένο project έχει την άδεια Apache License 2.0 - πάτα το αρχείο LICENSE για περισσότερες λεπτομέρειες.
