A Comparative Study of Maze Generation Algorithms in a Game-Based Mobile Learning Application for Learning Basic Programming Concepts
Abstract
:1. Introduction
- 1.
- How do different maze generation algorithms compare regarding time efficiency and space complexity in a mobile game-based learning environment?
- 2.
- Which algorithm is optimal for solving a generated maze in a mobile game-based learning environment?
- 3.
- What are the educational implications of using various maze generation algorithms in mobile applications designed to teach children basic programming concepts?
2. Related Work
2.1. Fostering Computational Thinking and Programming Skills in Young Children through Maze-Based Games
2.2. Maze Generation and Solving Algorithms
3. Maze-Based Mobile Application for Learning Basic Programming Concepts
3.1. Application Overview
3.2. Maze Generation Algorithms
3.2.1. Repeating Pattern Algorithm
3.2.2. Random Selection Algorithm
3.2.3. Binary Tree Algorithm
3.2.4. Sidewinder Algorithm
3.2.5. Aldous–Broder Algorithm
3.2.6. Wilson’s Algorithm
3.2.7. Hunt and Kill Algorithm
3.2.8. Recursive Backtracker
3.3. Algorithms for Solving Generated Mazes
3.3.1. Recursive Algorithm
3.3.2. Dead-End Filling Algorithm
3.3.3. Customized Dijkstra’s Algorithm
4. Analysis of Maze Generation Algorithms
4.1. Maze Generation Time Analysis
4.2. Analysis of the Ratio of the Longest Path in the Maze Area
4.3. Analysis of the Share of Direct and Curved Movement
5. Analysis of Algorithms for Finding Maze Solutions
6. Discussion and Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Matthews, W.H. Mazes and Labyrinths: Their History and Development; Courier Corporation: North Chelmsford, MA, USA, 1970. [Google Scholar]
- Brainin, E.; Shamir, A.; Eden, S. Robot programming intervention for promoting spatial relations, mental rotation and visual memory of kindergarten children. J. Res. Technol. Educ. 2022, 54, 345–358. [Google Scholar] [CrossRef]
- Demir, B.E.; Demir, F. Coding, Robotics and Computational Thinking in Preschool Education: The Design of Magne-Board. Avrupa Bilim Teknol. Derg. 2021, 23, 52–61. [Google Scholar] [CrossRef]
- Ching, Y.H.; Hsu, Y.C.; Baldwin, S. Developing Computational Thinking with Educational Technologies for Young Learners. TechTrends 2018, 62, 563–573. [Google Scholar] [CrossRef]
- Buck, J. Mazes for Programmers: Code your Own Twisty Little Passages; The Pragmatic Programmers, The Pragmatic Bookshelf: Dallas, TX, USA, 2015. [Google Scholar]
- Wing, J.M. Computational thinking. Commun. ACM 2006, 49, 33–35. [Google Scholar] [CrossRef]
- Macrides, E.; Miliou, O.; Angeli, C. Programming in early childhood education: A systematic review. Int. J. Child Comput. Interact. 2021, 32, 100396. [Google Scholar] [CrossRef]
- Papert, S. Mindstorms: Children, Computers, and Powerful Ideas; Basic Books, Inc.: New York, NY, USA, 1980. [Google Scholar]
- Abelson, H.; Goodman, N.; Lee, R. Logo Manual; MIT Libraries: Cambridge, MA, USA, 1974. [Google Scholar]
- Anderson, L.M.; Shinn, C.; Fullilove, M.T.; Scrimshaw, S.C.; Fielding, J.E.; Normand, J.; Carande-Kulis, V.G. The effectiveness of early childhood development programs: A systematic review. Am. J. Prev. Med. 2003, 24, 32–46. [Google Scholar] [CrossRef]
- Richter, L.M.; Daelmans, B.; Lombardi, J.; Heymann, J.; Boo, F.L.; Behrman, J.R.; Lu, C.; Lucas, J.E.; Perez-Escamilla, R.; Dua, T.; et al. Investing in the foundation of sustainable development: Pathways to scale up for early childhood development. Lancet 2017, 389, 103–118. [Google Scholar] [CrossRef]
- Essa, E.L.; Burnham, M.M. Introduction to Early Childhood Education; SAGE Publications: Thousand Oaks, CA, USA, 2019. [Google Scholar]
- Trakosas, D.; Tikva, C.; Tambouris, E. Visual programming and computational thinking environments for K-9 education: A systematic literature review. Int. J. Learn. Technol. 2023, 18, 94–121. [Google Scholar] [CrossRef]
- Maloney, J.; Resnick, M.; Rusk, N.; Silverman, B.; Eastmond, E. The Scratch Programming Language and Environment. ACM Trans. Comput. Educ. 2010, 10, 1–15. [Google Scholar] [CrossRef]
- Weintrop, D.; Wilensky, U. To Block or Not to Block, That is the Question: Students’ Perceptions of Blocks-Based Programming; ACM: New York, NY, USA, 2015. [Google Scholar] [CrossRef]
- Yang, W.; Ng, D.T.K.; Su, J. The impact of story-inspired programming on preschool children’s computational thinking: A multi-group experiment. Think. Ski. Creat. 2023, 47, 101218. [Google Scholar] [CrossRef]
- Law, C.Y.; Goh, K.O.; Ooi, S.Y.; Chong, L.Y.; Siow, W.K.; Wong, B.J. Introducing Coding to Children with Scratch: A Pilot Study. In Proceedings of the Future Technologies Conference (FTC), San Francisco, CA, USA, 2–3 November 2023; Volume 4, pp. 362–371. [Google Scholar]
- Chatain, J.; Bitter, O.; Fayolle, V.; Sumner, R.W.; Magnenat, S. A Creative Game Design and Programming App. In Proceedings of the 12th ACM SIGGRAPH Conference on Motion, Interaction and Games, New York, NY, USA, 2019. [Google Scholar] [CrossRef]
- Huang, S.Y.; Tarng, W.; Ou, K.L. Effectiveness of AR Board Game on Computational Thinking and Programming Skills for Elementary School Students. Systems 2023, 11, 25. [Google Scholar] [CrossRef]
- Segura, R.; Pino, F.; Ogáyar, C.; Rueda, A. VR-OCKS: A virtual reality game for learning the basic concepts of programming. Comput. Appl. Eng. Educ. 2020, 28, 31–40. [Google Scholar] [CrossRef]
- Plass, J.L.; Homer, B.D.; Kinzer, C.K. Foundations of Game-Based Learning. Educ. Psychol. 2015, 50, 258–283. [Google Scholar] [CrossRef]
- Qian, M.; Clark, K.R. Game-based Learning and 21st century skills: A review of recent research. Comput. Hum. Behav. 2016, 63, 50–58. [Google Scholar] [CrossRef]
- Behnamnia, N.; Kamsin, A.; Ismail, M.A.B.; Hayati, S.A. A review of using digital game-based learning for preschoolers. J. Comput. Educ. 2023, 10, 603–636. [Google Scholar] [CrossRef]
- Theodoropoulos, A.; Lepouras, G. Digital Game-Based Learning and Computational Thinking in P-12 Education: A Systematic Literature Review on Playing Games for Learning Programming; IGI Global: Hershey, PA, USA, 2020; pp. 159–183. [Google Scholar] [CrossRef]
- Shute, V.J.; Sun, C.; Asbell-Clarke, J. Demystifying computational thinking. Educ. Res. Rev. 2017, 22, 142–158. [Google Scholar] [CrossRef]
- Shaffer, D.; Squire, K.; Halverson, R.; Gee, J. Video Games and the Future of Learning. Phi Delta Kappan 2005, 87, 104–111. [Google Scholar] [CrossRef]
- Werner, L.; Denner, J.; Campe, S.; Kawamoto, D. The fairy performance assessment: Measuring computational thinking in middle school. In Proceedings of the SIGCSE’12-Proceedings of the 43rd ACM Technical Symposium on Computer Science Education, Raleigh, NC, USA, 29 February–3 March 2012; ACM: New York, NY, USA, 2012. [Google Scholar] [CrossRef]
- Nančovska Šerbec, I.; Ternik, Ž.; Koron, T.; Koron, A. Learning Programming Concepts through Maze Game in Scratch. In Proceedings of the 11th European Conference on Games Based Learning (ECGBL 2017), Graz, Austria, 5–6 October 2017. [Google Scholar]
- Jagušt, T.; Krzic, A.S.; Gledec, G.; Grgić, M.; Bojic, I. Exploring Different Unplugged Game-like Activities for Teaching Computational Thinking. In Proceedings of the 2018 IEEE Frontiers in Education Conference (FIE), San Jose, CA, USA, 3–6 October 2018; pp. 1–5. [Google Scholar] [CrossRef]
- Papadakis, S. Robots and Robotics Kits for Early Childhood and First School Age. Learn. Technol. Libr. 2020, 14, 34. [Google Scholar] [CrossRef]
- Wernhuar, T.; Su, Y.C.; Ou, K.L. Development of a Virtual Reality Memory Maze Learning System for Application in Social Science Education. Systems 2023, 11, 545. [Google Scholar] [CrossRef]
- Aldous, D.J. The Random Walk Construction of Uniform Spanning Trees and Uniform Labelled Trees. Siam J. Discret. Math. 1990, 3, 450–465. [Google Scholar] [CrossRef]
- Guenaga, M.; Eguíluz, A.; Garaizar, P.; Gibaja, J. How do students develop computational thinking? Assessing early programmers in a maze-based online game. Comput. Sci. Educ. 2021, 31, 259–289. [Google Scholar] [CrossRef]
- Kruskal, J.B. On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Proc. Am. Math. Soc. 1956, 7, 48–50. [Google Scholar] [CrossRef]
- Prim, R.C. Shortest connection networks and some generalizations. Bell Syst. Tech. J. 1957, 36, 1389–1401. [Google Scholar] [CrossRef]
- Wilson, D.B. Generating random spanning trees more quickly than the cover time. In Proceedings of the Symposium on the Theory of Computing, Philadelphia, PA, USA, 22–24 May 1996. [Google Scholar]
- Mane, D.; Harne, R.; Pol, T.; Asthagi, R.; Shine, S.; Zope, B. An Extensive Comparative Analysis on Different Maze Generation Algorithms. Int. J. Intell. Syst. Appl. Eng. 2023, 12, 37–47. [Google Scholar]
- Gabrovšek, P. Analysis of maze generating algorithms. IPSI Trans. Internet Res. 2019, 15, 23–30. [Google Scholar]
- Hendrawan, Y. Comparison of Hand Follower and Dead-End Filler Algorithm in Solving Perfect Mazes. J. Phys. Conf. Ser. 2020, 1569, 022059. [Google Scholar] [CrossRef]
- Bellot, V.; Cautrès, M.; Favreau, J.M.; Gonzalez-Thauvin, M.; Lafourcade, P.; Le Cornec, K.; Mosnier, B.; Rivière-Wekstein, S. How to generate perfect mazes? Inf. Sci. 2021, 572, 444–459. [Google Scholar] [CrossRef]
- Mcclendon, M. The Complexity and Difficulty of a Maze. Bridg. Math. Connect. Art Music. Sci. 2001, 213–222. [Google Scholar]
- Sadik, A.M.J.; Dhali, M.A.; Farid, H.M.A.B.; Rashid, T.U.; Syeed, A. A Comprehensive and Comparative Study of Maze-Solving Techniques by Implementing Graph Theory. In Proceedings of the 2010 International Conference on Artificial Intelligence and Computational Intelligence, Sanya, China, 23–24 October 2010; Volume 1, pp. 52–56. [Google Scholar] [CrossRef]
- Martín-Nieto, M.; Castaño Torrijos, D.; Horta Muñoz, S.; Ruiz, D. Solving Mazes: A New Approach Based on Spectral Graph Theory. Mathematics 2024, 12, 2305. [Google Scholar] [CrossRef]
- Tjiharjadi, S.; Razali, S.; Sulaiman, H. A Systematic Literature Review of Multi-agent Pathfinding for Maze Research. J. Adv. Inf. Technol. 2022, 13, 1–10. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Čarapina, M.; Staničić, O.; Dodig, I.; Cafuta, D. A Comparative Study of Maze Generation Algorithms in a Game-Based Mobile Learning Application for Learning Basic Programming Concepts. Algorithms 2024, 17, 404. https://doi.org/10.3390/a17090404
Čarapina M, Staničić O, Dodig I, Cafuta D. A Comparative Study of Maze Generation Algorithms in a Game-Based Mobile Learning Application for Learning Basic Programming Concepts. Algorithms. 2024; 17(9):404. https://doi.org/10.3390/a17090404
Chicago/Turabian StyleČarapina, Mia, Ognjen Staničić, Ivica Dodig, and Davor Cafuta. 2024. "A Comparative Study of Maze Generation Algorithms in a Game-Based Mobile Learning Application for Learning Basic Programming Concepts" Algorithms 17, no. 9: 404. https://doi.org/10.3390/a17090404