1. Introduction
In the past, large-scale group school trips were typically conducted with standardized destinations and program-centered schedules, often becoming formalities focused more on fulfilling a rigid itinerary than delivering meaningful educational experiences. As a result, students came to perceive school trips as monotonous and uniform, diminishing the original educational purpose. In fact, due to constraints in group size and budget, such trips tend to involve visiting fixed tourist sites, making it structurally difficult to reflect individual students’ interests and needs [
1,
2].
In today’s educational environment, there is a growing emphasis on experiential and customized learning activities that go beyond simple knowledge transfer and take into account students’ interests and learning levels. Within this shift, school trips are increasingly recognized as meaningful extracurricular experiences that promote emotional development and social skills.
To address these needs, schools have adopted “small-scale themed school trips,” which allow for in-depth, sensory-rich learning experiences. These trips are designed for small groups, typically at the class level, and structured around specific themes, making it possible to tailor the program to students’ interests, career goals, and academic levels. Studies show that such themed trips offer greater scheduling flexibility and allow students to actively choose their activities, leading to significantly higher overall satisfaction compared to large-scale trips. Furthermore, themed school trips foster self-directed learning and active participation, positively influencing students’ identity formation and career exploration.
However, the need for teachers to independently plan trip themes, secure locations, coordinate schedules, and manage safety protocols creates a substantial burden during implementation. To alleviate this issue, we developed EduTrip, a school trip itinerary recommendation system. This system allows users to input conditions such as trip theme, activity type, group size, budget, and preferred destinations. Based on these inputs, the system automatically filters suitable locations and experiences, and uses clustering and genetic algorithm-based optimization to generate efficient and realistic itineraries. This process considers travel time, duration of stay, and variety of activities, aiming to reduce manual planning time, ease teachers’ workload, and improve user satisfaction.
With growing societal emphasis on student diversity, career-oriented education, and post-pandemic safety concerns, the need for personalized, efficient, and safe school trip planning has become more urgent than ever. While existing planning methods rely heavily on manual processes or limited digital tools, they fail to support the complexity of modern themed educational trips. This research thus proposes EduTrip as both a practical solution and a contribution to the evolving discourse on technology-supported educational personalization.
3. Methodology
3.1. Research Objectives
This research was conducted based on the recognition that school trips are often operated with standardized itineraries centered around travel agencies, limiting their educational effectiveness. When teachers attempt to plan trips independently, they face a significant administrative burden. The research also highlights the lack of a travel itinerary recommendation system that reflects educational goals tailored to students’ needs, and was thus designed to address this gap. Accordingly, we investigated key questions to enhance itinerary planning. First, we explored how destinations and activities can be effectively filtered based on specific input conditions. Second, we examined how itineraries can be structured to ensure both a diverse range of activities and efficient travel routes. Finally, we analyzed which optimization algorithms could be used to generate itineraries that are not only feasible but also educationally effective under various constraints (
Table 1).
The research design was created as shown in
Table 2.
3.2. Data Collection and Processing
To build a school trip recommendation system for the Jeju region, data on tourist attractions and experiential learning sites were collected from various sources, including “Everyone’s Experiential Learning,” the Public Data Portal, and the Ministry of Education’s Career Experience Platform. Each location included metadata such as the name, activity type, average duration of stay, geographic coordinates, cost, and capacity.
The “Everyone’s Experiential Learning” dataset (
https://home.pen.go.kr/schooltrip/na/ntt/selectNttList.do?bbsId=4148&searchCate=7 (1 May 2025)) contains detailed information on 150 experiential learning sites categorized by region and theme. Each site includes data such as a description, address, operating hours, cost, website, and contact information, along with helpful tips for teachers selecting school trip destinations. In this research, the dataset was used to construct candidate sites for itineraries and to select appropriate locations based on user-defined conditions.
The “Jeju Safe School Trip Service” dataset from the Public Data Portal (
https://www.data.go.kr/data/15142952/fileData.do (1 May 2025)) provides information on 718 restaurants, 497 accommodations, and 7 activity sites in Jeju. It includes details such as inspection status, responsible departments, and safety notes, helping teachers choose reliable locations. This dataset plays a key role in ensuring safety and operational feasibility during itinerary planning.
“Dream Path” (
https://www.ggoomgil.go.kr/front/index.do (1 May 2025)) is a career experience platform operated by the Ministry of Education, offering information on 283 in-person career experience programs for middle and high school students. In this system, the platform was used to identify candidate locations for career-related itineraries, especially those themed around “future careers.”
The initial dataset was filtered to exclude locations unsuitable for school trips—such as those for adults, entertainment venues, or closed facilities—and focused on sites with high educational value. Activity types and subtypes were clearly categorized, and the data were grouped by theme—history/tradition, nature/ecology, culture/art, and career exploration—to improve recommendation precision.
The preprocessing process consisted of seven main stages. First, basic information such as location names, coordinates, and user ratings was extracted. Second, ChatGPT-4o was used to filter out general tourist spots, restaurants, and closed locations that were not educationally appropriate. Third, the capacity of each site was set between 15 and 400 people, depending on its characteristics, with estimated values used when exact data were unavailable. Fourth, using ChatGPT’s web search capabilities, experience, and admission fees were collected to set the average cost per person within a range of up to 30,000 KRW. Fifth, the average duration of stay was set between 1 and 3 h, based on site types and typical visitor behavior. Sixth, to prevent redundancy in clustering, each location was categorized into one of 28 detailed activity types, such as historic sites, caves, theme parks, career experiences, and natural volcanic cones. Seventh, for personalized itinerary generation, each site was classified into one of four main themes: history/tradition, nature/ecology, culture/art, and career exploration. Through this preprocessing process, a total of 790 locations were refined and prepared, serving as the core input data for algorithm design and recommendation system implementation.
3.3. Clustering Method
In this research, a clustering-based combination search algorithm was designed as the core mechanism for automatically generating school trip itineraries. The focus lies in grouping locations that can be visited within a single day into a cohesive itinerary. The system was developed specifically with the educational objectives and real-world constraints of middle and high school field trips in mind. Rather than relying solely on distance-based optimization, the algorithm considers a variety of factors such as duration of stay, travel distance, duplication of activity types, capacity limitations, and user-selected activity filters, in order to enhance the quality and practicality of the generated itineraries. To achieve this, a two-stage approach combining K-means clustering and backtracking search was applied.
The first stage involves K-means clustering as a preprocessing step. Candidate locations within the same thematic category are clustered based on geographic coordinates (latitude and longitude) to group geographically close locations. Each theme is divided into a predefined number of clusters (e.g., 15), and from each cluster, 2–3 locations nearest to the cluster center are selected as starting point candidates. This method significantly reduces the search space compared to random combinations and acts as a filter to ensure only meaningful combinations proceed to the next stage.
The second stage is the itinerary generation process using a backtracking algorithm. Starting from each selected candidate location, additional locations are added one by one to build potential itineraries, with real-time pruning of the search path based on the following constraints:
Number of locations: Each daily itinerary must consist of 2 to 4 locations.
Distance constraint: The maximum distance between any two locations in the same itinerary must not exceed 15 km, calculated using the Haversine formula.
Total time limit: The sum of stay durations must fall within 300 to 420 min, depending on the user’s preferred travel style (relaxed, moderate, or tight).
No activity type duplication: Each itinerary must include diverse types of activities; duplication within the same activity group is not allowed to ensure educational variety.
Capacity condition: Each location must be able to accommodate the specified number of participants; otherwise, it is excluded from the combination.
Activity type filtering: At least one of the activity types selected by the user must be included in each itinerary; otherwise, the combination is deemed invalid.
No location reuse: Each location can only be included in one itinerary to prevent duplication and to ensure diversity and balance across the full set of itineraries.
This clustering and backtracking-based approach allows for the creation of optimized, balanced, and educationally meaningful school trip itineraries, making it applicable to a wide range of educational travel planning systems.
3.4. Schedule Generation and Optimization Algorithm
We applied a genetic algorithm (GA) to generate and optimize multi-day travel itineraries based on user-defined durations, such as 4 days and 3 nights. GA is an evolutionary optimization method suitable for complex combinatorial problems with multiple constraints. In this system, each daily schedule is treated as a chromosome, and a fitness function evaluates travel distance, activity diversity, and site popularity. Through repeated selection, crossover, and mutation, GA produces high-quality itinerary combinations that meet user requirements more effectively than simple greedy methods, offering better speed, constraint satisfaction, and consistency.
Chromosomes are initialized as sequences of daily schedules using the generate_multi_day_groups() function, which forms combinations based on geographical similarity within a selected theme. To promote diversity, the initialization process filters out overly similar combinations by analyzing geographic proximity and activity type overlap. Additionally, itinerary overlap is restricted—up to n − 1 shared sites for general themes and n for science-related themes—ensuring more varied and customized final schedules.
The fitness function evaluates the quality of itinerary combinations quantitatively using the following three criteria:
Travel Distance efficiency: Calculated using the cumulative Haversine distance between the centers of each daily schedule; shorter total distances yield higher scores.
Activity type diversity: Measured by the number of distinct activity types across the full itinerary, converted into a score using the formula log(number of types + 1).
Location attractiveness (popularity): Each location is assigned a preference or educational value score, normalized using the log1p(score) function. The cumulative score reflects the overall attractiveness of the itinerary.
These three components are weighted according to user-defined preferences (e.g., distance < diversity < popularity) with corresponding weights (e.g., 0.5, 0.3, 0.2), enabling personalized evaluation of itinerary quality.
The evolutionary process of the genetic algorithm proceeds as follows: high-fitness combinations are selected, and new generations are produced by crossover of parts of schedules and random mutation. This process continues for up to 300 generations, with the range automatically adjusted to 100–200 generations if the initial population is small. If the number of valid schedule combinations drops below three in any generation, randomly combined new individuals are introduced to maintain diversity and prevent premature convergence.
After evaluating the fitness of all generated combinations, a filtering process removes combinations with excessive overlap among the top 2000 candidates. The maximum allowed overlap is two shared daily schedules. As a result, up to 100 final candidate itineraries are produced. If the number of valid itineraries falls short of the required minimum, fallback courses are automatically added. These are generated based on location preference scores and serve as an exception handling mechanism to ensure sufficient course coverage while improving the system’s search stability and recommendation completeness.
3.5. Programming Environment
The developed system uses a modular architecture consisting of back-end logic, front-end rendering, data processing, and external service integration. The back-end, built with Python (version 3.12.9) and Flask, handles itinerary generation, user input, and application programming interface (API) connections. It integrates external services such as Naver APIs for maps and OpenAI’s GPT for itinerary summarization. Data is processed using Pandas and NumPy, and itineraries are exported as Word files via python-docx. The front-end, built with HTML, Jinja2, and JavaScript, offers a responsive interface for input, result viewing, and map-based visualization.
3.6. Example User Interfacing Screens for the Implemented System
Before itinerary recommendations are generated, users input their preferences, including travel themes, group size, activity types, flight times, travel style, and priority order of preferences. These inputs are directly reflected in the filtering and itinerary generation process. When the user clicks the “Generate Recommended Itinerary” button, the full recommendation process is executed automatically.
- 2.
Course selection screen
This screen allows users to view and compare the recommended 4-day, 3-night itineraries as shown in
Figure 1. Daily schedules are displayed with summaries of locations, durations of stay, travel, and auto-generated itinerary titles. Users can navigate through multiple course options using the “Previous Course” and “Next Course” buttons and view routes on the map. They can also select, modify, or export their preferred itinerary.
- 3.
Map screen
Daily routes and visit sequences are visualized on a map, with different colors representing different days, as shown in
Figure 2. Each location is marked with a numbered icon that includes details, and users can compare and switch daily itineraries using functions provided at the bottom of the map. This enables users to intuitively evaluate travel efficiency and itinerary composition.
- 4.
Location detail pop-up
When a location marker is clicked on the map, a pop-up displays detailed information such as the place name, activity type, price, and expected duration. A “View Details” button allows users to access more in-depth information, including the educational value of the location.
- 5.
Accommodation selection
Clicking the “View Accommodations” button displays lodging options within a 30 km radius of the average coordinates of the scheduled locations. Only group-suitable educational facilities, such as training centers or youth hostels, are shown. Selected accommodations are visualized on the map and included in route calculations and document exports, offering flexibility for real-world school trip planning.
- 6.
Schedule replacement
Using “Schedule Replacement Mode,” users can selectively replace a specific day of the itinerary. The current day’s schedule is displayed on the left, and available replacement options that meet predefined conditions are shown on the right. Users can switch schedules with a simple click, without regenerating the entire itinerary. This feature supports flexible, partial modifications.
- 7.
DOCX export
Finalized itineraries can be downloaded as editable Word documents via the “Save Itinerary as Word” button. Generated server-side using the python-docx library, the document includes day-by-day schedules, location names, activity types, durations, travel times, costs, and lodging details. This output is suitable for use in the field by teachers or as official documentation.
4. Result and Discussion
To compare the quality of travel itinerary recommendation systems, it is important to analyze the range and level of detail in the user input options. In this research, we compared the user input fields of three systems—EduTrip, Triple, and MYRO—to assess the degree of customization each system supports, as summarized in
Table 3. While EduTrip limits the travel destination to Jeju Island, this constraint ensures consistency in the study, which focuses on optimizing school trip itineraries. EduTrip supports detailed user inputs such as start and end times, group size, preferred themes and activity types, daily activity intensity, and itinerary optimization criteria, allowing for greater flexibility and precision in personalized planning. In contrast, Triple and MYRO offer only limited input options and lack educational relevance. EduTrip stands out with features such as activity filtering, theme-based clustering, and consideration of travel time—functions rarely found in commercial platforms. These make EduTrip well-suited for educational group travel, with further improvements expected through future user feedback.
Next, we developed a questionnaire to evaluate the performance of EduTrip, and the survey items to enable assessment based on actual system usage. Respondents accessed and experienced the EduTrip and provided feedback through the survey. The questionnaire consisted of 10 items, aiming to evaluate the compatibility between user input and recommended itineraries, overall satisfaction and acceptability of the recommendations, and the usability and user satisfaction with the system. The survey was conducted from 13 June to 18 June 2025, targeting four high school teachers, four middle school teachers, and three pre-service teachers.
Regarding the “relevance between travel themes and recommended itineraries,” 18.2% responded “very appropriate,” and 81.8% responded “appropriate.” For the “appropriateness of daily site composition,” 27.3% answered “very appropriate,” 54.5% “appropriate,” and 18.2% “neutral.” Concerning the “efficiency of routes between locations,” 36.4% found them “very efficient,” 45.5% “efficient,” and 18.2% “neutral.” Regarding the “suitability of recommended accommodation locations,” 9.1% responded “strongly agree,” 72.7% “agree,” and 18.2% “neutral.” For the “reflection of input priorities,” 36.4% answered “strongly agree,” 54.5% “agree,” and 9.1% “neutral.” Regarding “satisfaction with schedule editing and accommodation selection functions,” 36.4% were “very satisfied,” 54.5% “satisfied,” and 9.1% “dissatisfied.” For the “readability and completeness of the Word (.docx) itinerary,” 45.5% responded “very satisfied,” 36.4% “satisfied,” and 18.2% “neutral.” In terms of the “practical applicability of the itinerary to actual school trips,” 45.5% answered “strongly agree,” 36.4% “agree,” and 18.2% “neutral.” Finally, regarding “overall system satisfaction,” 54.5% were “very satisfied” and 45.5% were “satisfied” (
Table 3).
5. Conclusions
We developed and evaluated the usability and user satisfaction of EduTrip, a school trip itinerary recommendation system designed for middle and high school teachers and students. The EduTrip automatically recommends optimal travel routes and combinations of destinations based on user input conditions such as travel theme, activity type, and trip duration. It provides results in the form of map-based visualizations and downloadable Word documents. The system aims to support teachers in organizing school trips more systematically and conveniently. A usability survey was conducted with four high school teachers, four middle school teachers, and three pre-service teachers. The results showed a high level of satisfaction regarding itinerary structure, route efficiency, and reflection of user input.
According to the survey, all respondents rated the system as “satisfactory” or higher and provided positive feedback on its practicality and intuitiveness. In particular, the ability to plan transportation, accommodations, and sightseeing schedules in an integrated manner, as well as the map-based visualization and time-specific itinerary management, were highlighted as key strengths. These findings suggest that EduTrip can reduce the administrative burden on teachers and serve as an effective tool for designing educationally meaningful school trip itineraries. In the future, EduTrip has the potential to evolve into a more sophisticated educational travel planning platform by expanding its features to support various regions and purposes, recommending alternative locations, and visualizing connections between sites and activity types.