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

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

Δημοσ.

Εχω κατι ερωτησουλες αν καποιος γνωριζει.Προσπαθω να λυσω ενα προτζεκτ με λαβυρινθο και δεν ξερω πως να δωσω εντολη να μετακινηθει το "ρομποτ" στον λαβυρινθο ωστε να βρει την εξοδο.

Δηλαδη αν μπορει να παει και πανω και κατω και αριστερα και δεξια....ποια κατευθυνση θα διαλεξει ωστε να μην παγιδευτει σε καμια γωνια?

 

Αν με διαφωτησει καποιος του ειμαι ευγνωμων.

 

Με αλλα λογια: Με ποιο μοτιβο θα δωθουν εντολες ωστε να μην παγιδευτω καπου και να βρω καποια στιγμη την λυση.

 

Αν καποιος ξερει,η παραμικρη βοηθεια θα βοηθουσε.Εστω και απο αλλες γλωσσες.Δεν μπορω να το λυσω ουτε με την λογικη μου.Αν στο μυαλο μου δεν ξεκαθαριστει δεν μπορω να το μετατρεψω σε κωδικα :wacko:

Δημοσ.

Χωρίς να ξέρω ruby, έχω μια ιδέα για το πως μπορεί να υλοποιηθεί.

Για κάθε δεδομένη στιγμή μέσα στο λαβύρινθο κοιτάζει προς ποια κατεύθυνση έχει άνοιγμα. Δηλαδή του λες

Στρίψε αριστερά, σου δίνει false.

Στρίψε δεξιά, πάλι το ίδiο

τότε πάει front.

μετά ξανά το ίδιο.

αν σου επιστρέψει ένα από τα δύο true τότε πάς σε αυτό, αλλιώς αν είναι και τα δύο, math.random, αν είναι μεγαλύτερο απο 0.5 τότε δεξιά αλλιώς αριστερά

μόλις βγεί σε αδιέξοδο, δηλαδή front, right, left δίνουν false το στέλνεις back.

Φαντάζομαι με μία while και μία πολλαπλή επιλογή υλοποιείται.

Θέλει τα variables front, back, left, right σίγουρα. 

Φυσικά και η λύση μου δεν είναι ιδανική, θα φάει τρελό χρόνο μέχρι να βγεί αλλα πιστεύω θα βγεί.

Δημοσ.

Ευχαριστω για την απαντηση και τον χρονο σου αλλα δεν μπορω να καταλαβω πως να κανω random αλλα ακομα σημαντικοτερα.Αν ειμαι σε αδιεξοδο και κανω back και η θεση πισω οδηγει ξανα μπροστα στο αδιεξοδο γιατι δεν παει ουτε αριστερα ουτε δεξια?Πως να το κανω να καταλαβει οτι θα ξανακανει back?Ετσι οπως το σκεφτομαι θα μπαινει ολη την ωρα μπρος πισω,μπρος πισω συνεχεια...

Δημοσ.

Ευχαριστω για την απαντηση και τον χρονο σου αλλα δεν μπορω να καταλαβω πως να κανω random αλλα ακομα σημαντικοτερα.Αν ειμαι σε αδιεξοδο και κανω back και η θεση πισω οδηγει ξανα μπροστα στο αδιεξοδο γιατι δεν παει ουτε αριστερα ουτε δεξια?Πως να το κανω να καταλαβει οτι θα ξανακανει back?Ετσι οπως το σκεφτομαι θα μπαινει ολη την ωρα μπρος πισω,μπρος πισω συνεχεια...

Μόλις δει ότι δεν πάει ούτε μπροστά ούτε δεξιά-αριστερά θα το στείλει πίσω, που είναι το τελευταίο κομμάτι της if που θα γράψεις, μετά γυρνάει ξανά πάνω για να δει προς τα που μπορεί να πάει. Κοιτάει δεξιά, τίποτα, αριστερά, τα ίδια, μπροστά όμως έχει γιατί στην τελευταία επιλογή της if μόλις το έστειλες πίσω έκανες και την μεταβλητή front, true, άρα δεν θα μπεί στην επιλογή που το στέλνει πίσω.

Αν θές να σου το υλοποιήσω σε js, τον σκελετό μόνο γιατί και εγώ δεν ξέρω πολλά ακόμα.

Δημοσ.

Αν δεν σου κανει κοπο θα με βοηθησεις πολυ.Γιατι και εγω δεν ξερω πολλα και δυσκολευομαι.

 

Τον σκελετο,τα if και το τι συγκρινω για να βγει true.Μηπως ξεκολλησει το μυαλο μου.

Δημοσ.

Δε μου βγαίνει :/

θέλει γνώσεις που ακόμα δεν έχω, δεν υλοποιείται όπως σκεφτόμουν γιατί αφήνει πολλές περιπτώσεις να αρχίσει να κάνει το ίδιο loop συνεχώς

Δημοσ.

Ναι αυτα παθαινω και εγω.Δυστυχως ακρη δεν βγαλαμε αλλα ευχαριστω για την προσπαθεια σου να με βοηθησεις.

Δημοσ.

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

 

Αν σε γυρίσεις σε ένα στυρόδρομι και έχεις εξαντλήσει τις επιλογές αυτό θεωρείται αδιάξοδο και πας στο προηγούμενο.

 

Έστω Ε=ευθεία, Δ=δεξιά, Α=αριστερά, Π=πίσω

Αν υποθέσουμε δλδ ότι ο σωστός δρόμος για να βγείς είναι ΕΕΑΔΑ 

 

και η μέθοδος που ακολουθείς είναι πάντα Α>Ε>Δ>Π 

το ρομποτάκι θα κάνει

Α(...)ΠΕΑ(...)ΠΕΑΑ(...)ΠΕ(...)ΠΔΑ

 

υποθέτω ότι κάθε σταυροδρόμι έχει όλες τις επιλογές και ότι σε κάθε γράμμα βρίσκεται σε σταυροδρόμι

Δημοσ.

αυτή η ερώτηση μου θύμισε τις σπουδές μου και το μάθημα τεχνητής νοημοσύνης. Δεν ξέρω πως να σε βοηθήσω για το κομμάτι του κώδικα, αλλά για το θέμα του αλγορίθμου ρίξε μια ματιά Link.png Site: εδώ

Δημοσ.

Βασικά... Η λέξη "ruby" στον τίτλο είναι εντελώς παραπλανητική. 

 

Προσωπική μου άποψη είναι να ρωτήσεις κανέναν που έχει περάσει το μάθημα να σου πει ή να το ξαναπάρεις του χρόνου. 

Δημοσ.

Βασικά... Η λέξη "ruby" στον τίτλο είναι εντελώς παραπλανητική.

 

Προσωπική μου άποψη είναι να ρωτήσεις κανέναν που έχει περάσει το μάθημα να σου πει ή να το ξαναπάρεις του χρόνου.

Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος;
  • Moderators
Δημοσ.

Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος;

 

Σε κάνα μάθημα ΤΝ πολύ άνετα. Γιατί;

Δημοσ.

Σε κάνα μάθημα ΤΝ πολύ άνετα. Γιατί;

Μου φαίνεται αρκετά "απλό" παρόλο που δεν μπορώ να το λύσω λόγω γνώσεων ακόμα. Σαν σκεπτικό φαίνεται απλό, η υλοποίηση είναι το θέμα
  • Moderators
Δημοσ.

Εγώ θυμάμαι κάτι τέτοια τα λύναμε με κάτι δέντρα που κρατούσαν όλα τα πιθανά μονοπάτια συν τα μονοπάτια που είχες πάει ήδη και έκανες υπολογισμούς κλπ αλλά δεν τα πολυθυμάμαι :P

  • Like 2
Δημοσ.

Wait wait. What? Αυτό είναι πρόβλημα πανεπιστημιακού μαθήματος;

 

 

Βασικά η ερώτηση του TS είναι ερώτηση φοιτητή σε ελληνικό πανεπιστήμιο :P 

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

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

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

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

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

Σύνδεση

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

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