zisis13 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Εχω κατι ερωτησουλες αν καποιος γνωριζει.Προσπαθω να λυσω ενα προτζεκτ με λαβυρινθο και δεν ξερω πως να δωσω εντολη να μετακινηθει το "ρομποτ" στον λαβυρινθο ωστε να βρει την εξοδο. Δηλαδη αν μπορει να παει και πανω και κατω και αριστερα και δεξια....ποια κατευθυνση θα διαλεξει ωστε να μην παγιδευτει σε καμια γωνια? Αν με διαφωτησει καποιος του ειμαι ευγνωμων. Με αλλα λογια: Με ποιο μοτιβο θα δωθουν εντολες ωστε να μην παγιδευτω καπου και να βρω καποια στιγμη την λυση. Αν καποιος ξερει,η παραμικρη βοηθεια θα βοηθουσε.Εστω και απο αλλες γλωσσες.Δεν μπορω να το λυσω ουτε με την λογικη μου.Αν στο μυαλο μου δεν ξεκαθαριστει δεν μπορω να το μετατρεψω σε κωδικα
Dinos_12345 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Χωρίς να ξέρω ruby, έχω μια ιδέα για το πως μπορεί να υλοποιηθεί. Για κάθε δεδομένη στιγμή μέσα στο λαβύρινθο κοιτάζει προς ποια κατεύθυνση έχει άνοιγμα. Δηλαδή του λες Στρίψε αριστερά, σου δίνει false. Στρίψε δεξιά, πάλι το ίδiο τότε πάει front. μετά ξανά το ίδιο. αν σου επιστρέψει ένα από τα δύο true τότε πάς σε αυτό, αλλιώς αν είναι και τα δύο, math.random, αν είναι μεγαλύτερο απο 0.5 τότε δεξιά αλλιώς αριστερά μόλις βγεί σε αδιέξοδο, δηλαδή front, right, left δίνουν false το στέλνεις back. Φαντάζομαι με μία while και μία πολλαπλή επιλογή υλοποιείται. Θέλει τα variables front, back, left, right σίγουρα. Φυσικά και η λύση μου δεν είναι ιδανική, θα φάει τρελό χρόνο μέχρι να βγεί αλλα πιστεύω θα βγεί.
zisis13 Δημοσ. 8 Σεπτεμβρίου 2015 Μέλος Δημοσ. 8 Σεπτεμβρίου 2015 Ευχαριστω για την απαντηση και τον χρονο σου αλλα δεν μπορω να καταλαβω πως να κανω random αλλα ακομα σημαντικοτερα.Αν ειμαι σε αδιεξοδο και κανω back και η θεση πισω οδηγει ξανα μπροστα στο αδιεξοδο γιατι δεν παει ουτε αριστερα ουτε δεξια?Πως να το κανω να καταλαβει οτι θα ξανακανει back?Ετσι οπως το σκεφτομαι θα μπαινει ολη την ωρα μπρος πισω,μπρος πισω συνεχεια...
Dinos_12345 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Ευχαριστω για την απαντηση και τον χρονο σου αλλα δεν μπορω να καταλαβω πως να κανω random αλλα ακομα σημαντικοτερα.Αν ειμαι σε αδιεξοδο και κανω back και η θεση πισω οδηγει ξανα μπροστα στο αδιεξοδο γιατι δεν παει ουτε αριστερα ουτε δεξια?Πως να το κανω να καταλαβει οτι θα ξανακανει back?Ετσι οπως το σκεφτομαι θα μπαινει ολη την ωρα μπρος πισω,μπρος πισω συνεχεια... Μόλις δει ότι δεν πάει ούτε μπροστά ούτε δεξιά-αριστερά θα το στείλει πίσω, που είναι το τελευταίο κομμάτι της if που θα γράψεις, μετά γυρνάει ξανά πάνω για να δει προς τα που μπορεί να πάει. Κοιτάει δεξιά, τίποτα, αριστερά, τα ίδια, μπροστά όμως έχει γιατί στην τελευταία επιλογή της if μόλις το έστειλες πίσω έκανες και την μεταβλητή front, true, άρα δεν θα μπεί στην επιλογή που το στέλνει πίσω. Αν θές να σου το υλοποιήσω σε js, τον σκελετό μόνο γιατί και εγώ δεν ξέρω πολλά ακόμα.
zisis13 Δημοσ. 8 Σεπτεμβρίου 2015 Μέλος Δημοσ. 8 Σεπτεμβρίου 2015 Αν δεν σου κανει κοπο θα με βοηθησεις πολυ.Γιατι και εγω δεν ξερω πολλα και δυσκολευομαι. Τον σκελετο,τα if και το τι συγκρινω για να βγει true.Μηπως ξεκολλησει το μυαλο μου.
Dinos_12345 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Δε μου βγαίνει :/ θέλει γνώσεις που ακόμα δεν έχω, δεν υλοποιείται όπως σκεφτόμουν γιατί αφήνει πολλές περιπτώσεις να αρχίσει να κάνει το ίδιο loop συνεχώς
zisis13 Δημοσ. 8 Σεπτεμβρίου 2015 Μέλος Δημοσ. 8 Σεπτεμβρίου 2015 Ναι αυτα παθαινω και εγω.Δυστυχως ακρη δεν βγαλαμε αλλα ευχαριστω για την προσπαθεια σου να με βοηθησεις.
akis_fc Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Δεν ξέρω πως ορίζεις το βήμα στο λαβύρινθο αλλά δοκίμασε σε κάθε σταυροδρόμι να κρατάς τις διαθέσιμες επιλογές και το που πήγες. Έτσι όταν χρειαστεί να πας πίσω δεν πας πίσω ένα βήμα αλλά στο αμέσως προηγούμενο σταυροδρόμι και κάνεις μία επιλογή διαφορετική από αυτή που έκανες πριν. Αν σε γυρίσεις σε ένα στυρόδρομι και έχεις εξαντλήσει τις επιλογές αυτό θεωρείται αδιάξοδο και πας στο προηγούμενο. Έστω Ε=ευθεία, Δ=δεξιά, Α=αριστερά, Π=πίσω Αν υποθέσουμε δλδ ότι ο σωστός δρόμος για να βγείς είναι ΕΕΑΔΑ και η μέθοδος που ακολουθείς είναι πάντα Α>Ε>Δ>Π το ρομποτάκι θα κάνει Α(...)ΠΕΑ(...)ΠΕΑΑ(...)ΠΕ(...)ΠΔΑ υποθέτω ότι κάθε σταυροδρόμι έχει όλες τις επιλογές και ότι σε κάθε γράμμα βρίσκεται σε σταυροδρόμι
MeTaXaS4 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 αυτή η ερώτηση μου θύμισε τις σπουδές μου και το μάθημα τεχνητής νοημοσύνης. Δεν ξέρω πως να σε βοηθήσω για το κομμάτι του κώδικα, αλλά για το θέμα του αλγορίθμου ρίξε μια ματιά Site: εδώ
groot Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Βασικά... Η λέξη "ruby" στον τίτλο είναι εντελώς παραπλανητική. Προσωπική μου άποψη είναι να ρωτήσεις κανέναν που έχει περάσει το μάθημα να σου πει ή να το ξαναπάρεις του χρόνου.
Dinos_12345 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Βασικά... Η λέξη "ruby" στον τίτλο είναι εντελώς παραπλανητική. Προσωπική μου άποψη είναι να ρωτήσεις κανέναν που έχει περάσει το μάθημα να σου πει ή να το ξαναπάρεις του χρόνου. Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος;
Moderators Kercyn Δημοσ. 8 Σεπτεμβρίου 2015 Moderators Δημοσ. 8 Σεπτεμβρίου 2015 Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος; Σε κάνα μάθημα ΤΝ πολύ άνετα. Γιατί;
Dinos_12345 Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Σε κάνα μάθημα ΤΝ πολύ άνετα. Γιατί;Μου φαίνεται αρκετά "απλό" παρόλο που δεν μπορώ να το λύσω λόγω γνώσεων ακόμα. Σαν σκεπτικό φαίνεται απλό, η υλοποίηση είναι το θέμα
Moderators Kercyn Δημοσ. 8 Σεπτεμβρίου 2015 Moderators Δημοσ. 8 Σεπτεμβρίου 2015 Εγώ θυμάμαι κάτι τέτοια τα λύναμε με κάτι δέντρα που κρατούσαν όλα τα πιθανά μονοπάτια συν τα μονοπάτια που είχες πάει ήδη και έκανες υπολογισμούς κλπ αλλά δεν τα πολυθυμάμαι 2
groot Δημοσ. 8 Σεπτεμβρίου 2015 Δημοσ. 8 Σεπτεμβρίου 2015 Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος; Βασικά η ερώτηση του TS είναι ερώτηση φοιτητή σε ελληνικό πανεπιστήμιο
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα