Uploaded by HISHAMDEEN14

LLM Athletics Chatbot Project Report

advertisement
Universiti Tenaga Nasional
Putrajaya Campus
CGEB4313 (Project 1)
2024/2025
LLM-based Athletics Chatbot for Track and Field
Coaching
Name: Muhamed Hisham Bin Mohamed Bahurudeen
Section: IS
Supervisor: Lim Fung Chen, Ts.
i
Table of Contents
Executive Summary ............................................................................................................. 1
Chapter 1 .............................................................................................................................. 2
1.1 Background............................................................................................................... 2
1.2 Problem Statement ................................................................................................... 2
1.3 Objective .................................................................................................................. 3
1.4 Project Aim .............................................................................................................. 3
1.5 Scope ....................................................................................................................... 3
1.6 Timeline ................................................................................................................... 4
Chapter 2 .............................................................................................................................. 5
2.1 Review Current System.............................................................................................. 5
2.2 Business Process Flow Diagram ................................................................................ 7
2.3 Review of Similar Systems ......................................................................................... 8
2.3.1 Nike Training Club .............................................................................................. 8
2.3.2 Strava ................................................................................................................ 8
2.4 System Development Methodology .......................................................................... 10
2.5 Requirement Gathering Techniques ......................................................................... 10
2.5.1 Google Form Survey ......................................................................................... 10
2.5.2 Interview.......................................................................................................... 12
2.6 Tools and Technology .............................................................................................. 13
ii
Executive Summary
This project is aimed to develop a Chatbot that be like a Virtual coach. This chatbot’s main
owner will be UPM athletics team. The chatbot will provide personalized training program,
real time feedback, like chatting with real coach, and track the athlete progress with their
current personal best and performance. The current training system at UPM athletics is a
manual training plan send by a coach via WhatsApp, and athlete sometimes training by alone
without real time feedback from coaches, which can lead to performance issues or injuries.
The lack of Track and Field focused and high-cost apps, show they need a more tailor and
accessible solution.
The chatbot will fill in this gap by offering real time advice and detailed training adjustments,
helping athletes improve their performance, even when coaches are not around. The chatbot
will also track athletes progress and give instant responses to their questions, like they really
chatting with the coach. This approach make sure that athletes will have consistent and
personal support during their training.
To collect data to develop this chatbot, a survey was conducted with 29 athletes from UPM
athletics team. The result highlight the need for a system that provide real time feedback,
personalize training and injury prevention advice. Coaches also interested in this chatbot, as it
could ease their job a bit by handling their task like make a training program.
This project will be developed using Agile methodology, which allow a constant feedback
and improvement. The tools and technologies that will be used for this project is, like python
as programming language, Flask or Django for backend, GPT-neo as a language model cause
it is the most compatible model for my laptop, MySQL for data storing, and google form for
data gathering. These technologies, will give the chatbot flexible, real time solution for
specifically track and field athletes, ensuring they receive the support they need to reach peak
performance.
1
Chapter 1
1.1 Background
Track and field athletes, like the ones in the UPM Athletics Team, usually train about five
times a week. These sessions focus on things like speed, speed endurance, endurance,
jumping exercises, and gym workouts. The training is changed based on how skilled the
athlete is—some are beginners, others are in the middle, and a few are advanced. Because of
these different skill levels, not all athletes take part in every tournament across Malaysia. For
example, one group might get ready for Tournament A, while others train for Tournament B.
When the coach goes with athletes to a tournament, the ones not competing must train on
their own.
Right now, athletes use general fitness apps like Nike Training Club or Strava for support.
These apps aren’t made just for track and field, so they don’t have the features athletes need
for this sport. Because of this, athletes use them to stay active or track general progress, but
the apps don’t give programs designed just for track and field athletes.
1.2 Problem Statement
A big challenge athletes face is there are no special apps just for track and field training.
Right now, most athletes have to rely on general fitness apps like Nike Training Club or
Strava. But these apps do not have features that fit track and field needs. Because of this,
athletes using these apps don’t get the focused coaching that could help them get better in
areas like speed or endurance.
Another problem is the high cost of apps that give custom coaching. There are some
platforms with personal features, but many have expensive fees. This makes them hard to
afford for athletes who need special guidance for their track and field training but can’t pay
for it.
Lastly, training alone is hard because there’s not enough support when a coach is not there.
Athletes who train alone might have trouble with their form, technique, or planning their
workouts, which can lead to injuries or slow their progress. Without a coach’s feedback in
real-time, it’s hard for them to know if they’re training right, making it harder to reach their
best performance.
2
1.3 Objectives
1. To develop a chatbot that provides personalized training programs for track and field
athletes based on their preferences and goals
2. To implement a feature that tracks athletes’ progress and adjusts their training
programs according to their performance.
3. To build a module that allows athletes to ask questions about training, technique, and
performance, and receive relevant coaching advice.
1.4 Project Aim
This project aims to create a chatbot that acts like a virtual coach just for track and field
athletes. The chatbot will give personal training plans, real-time advice, and keep track of the
athlete’s progress. By making a coaching experience that is tailored, this project wants to help
athletes reach their training goals better, even when a human coach is not available.
1.5 Scope
System Scope
System Scope
Personalized Training Programs
Description
Real-Time Advice
Provides instant responses, for athlete’s questions.
Progress Tracking
Tracks athlete progress and adjusts training plans as
they achieve new personal bests or improve
performance over time.
Training Guidance
Provides custom training based on athlete goals and
preferences.
Ensures athletes have guidance for training even when
they are training by themselves.
Figure 1.1 Table of System Scope
3
User Scope
User Scope
Athletes
Description
Coaches
Coaches can use the chatbot similarly to athletes,
training plans without needing to manually create
programs, especially during busy periods.
Admin
Responsible for managing system settings, user access,
and maintaining data accuracy.
Figure 1.2 Table of User Scope
Primary users who interact with the chatbot to receive
custom training programs and guidance for
performance improvement.
1.6 Timeline
Timeline Table
Milestone/Task
FYP 1: Milestone 1 - Proposal
Start
Date
Oct 4
End
Date
Oct 11
Duration
(Days)
7
FYP 1: Milestone 2B - Draft Report
Oct 12
Nov 15
34
FYP 1: Milestone 3B - Complete Report
Nov 16
Jan 10
55
FYP 2: Project Planning and Requirements
Feb 10
Feb 16
6
FYP 2: Literature Review
Feb 17
Feb 23
6
FYP 2: Choose Framework and Tools
Feb 24
Feb 27
3
FYP 2: Design Chatbot Architecture
Feb 28
Mac 6
6
FYP 2: Data Collection and Preparation
Mac 7
Mac 20
13
FYP 2: Model Training and Fine-tuning
Mac 21
Apr 10
20
FYP 2: User Interface Development
Apr 11
Apr 24
13
FYP 2: Integration of Chatbot with UI
Apr 25
Apr 30
5
FYP 2: Testing and User Feedback
May 1
May 5
4
FYP 2: Final Adjustments and Improvements
May 6
May 9
3
Figure 1.3 Table of Project Timeline
4
SEM BREAK
Gantt Chart
Figure 1.4 Gantt Chart of Project Timeline
Chapter 2
2.1
Review of Current System
Athletes of UPM athletics team is currently follows a coach-led training program, where
every day or weekly the programs will be shared with athletes in PDF or text messages via
WhatsApp. Every program will cover specific areas such as speed, endurance and strength,
with sessions that fit by the coach. Coach will oversee the sessions to give a real time advice
or feedback to an athlete. However, sometimes when coaches not around, athletes must train
independently, relying solely on the instructions in the PDF or messages send by coach.
If the athletes are injured, the coach will prepare a separate program for them to recovery fast
and to maintain their gains. These customized plans will be shared via WhatsApp also by
coach as soon as it’s ready, and the injured athletes will start to use it until their injury fully
recovered. After the training, athletes will record their performance such as sprint timing and
share the result in WhatsApp group. This allows coaches to evaluate their progress, and
coaches will send a comment later as the system does not allow for real time guidance when
coach not around.
Some athletes use fitness apps like Nike Training Club or Strava to make up when coach not
around, but this apps only provide general workout plans and tracking. This apps also do not
contain any features that designed for Track and Field. While the current system allows basic
5
performance tracking, not personalized and Track and Field focused training app means that
athletes will miss out a lot when training independently. This shows the need for a specialized
tool like the virtual coach chatbot, which will provide real time feedback that will help
athletes improve their performance even coach is not around.
2.2
Business Flow Diagram
The flowchart below showing the current process of UPM athletics Team’s training. It starts
with coach prepare the training program, which is shared to athletes via WhatsApp. After
that, athletes will follow the program, either supervised by coach or if coach not around, they
train independently. After completing their trainings, athletes will record their performance
metrics such as their timing, distance jumped, or distance throwed to a coach via WhatsApp
for evaluation. Finally, the coach will review and give his feedback.
6
Figure 2.1 Current Training Process Flowchart
7
2.3
Review of the Similar Systems
2.3.1
Nike Training Club
What is the System?
Nike Training Club (NTC) is a fitness app that is designed to give user guided workout
programs. It focus on general fitness like strength, endurance, mobility, and others.
System Processes
User can browse and select from many workout programs or individual exercises that
available in the app. Every workout comes with detailed instructions and video demo to guide
user during the session. The app will tracks user progress, like how many workout done, and
then adjust their future plans based on user goals or preferences.
Functionalities
•
Guided workout plan for strength, endurance, and mobility.
•
Video tutorials for exercises to help with proper techniques.
•
Tracking progress for user’s activity.
•
Suggestion for workout based on user goal or past performance.
Special Functions
Nike Training Club have video demo for every exercise, which is useful especially for user
that don’t know the correct techniques. It also work with the Nike system, so user can get
more personalized training plan based on their activity in other Nike apps. But this app
cannot provide real-time feedback or custom guide for specific sports like track and field
events.
2.3.2
Strava
What is the System?
Strava is a popular app for tracking and analyzing activities like running, cycling, or
swimming. It uses GPS to collect performance data, and the app is focus on endurance sports
and community-based fitness.
8
System Processes
User start by recording their activity through the app or other connected device. Strava will
record data like distance, speed, and elevation, and then let user analyze their performance.
After that, user can share their activity to other people or join challenges to stay motivated.
Functionalities
•
GPS tracking for distance, speed, and elevation.
•
Detailed analysis for performance and progress report.
•
Social features for sharing workouts and competing with friends.
•
Leaderboards and challenges to help motivate users.
Special Functions
Strava’s strong point is how it tracks endurance activities using GPS and provide very
detailed insights. It also create community because user can share their activity and join
competition with others. But like Nike Training Club, it doesn’t have personal training or
real-time guidance for track and field-specific events like jumping or throwing.
This table provides a feature comparison between, Nike Training Club, Strava, and a
proposed Virtual Coach Chatbot. The features compared are:
Features
Nike Training Club
Strava
Real-Time Coaching
No
Progress Feedback
Available
Yes, Offer live
tracking
Available
User Interaction
One way
One way
Specificity for Track
and Field
General
General
Figure 2.2 Comparison of Similar Systems
Proposed Virtual
Coach Chatbot
Yes, offers real-time
chatting feedback
Detailed feedback as
athletes updates their
records
Two-way
conversation
Focus on Track and
Field
9
2.4
System Development Methodology
To develop the Virtual Coach Chatbot, I choose Agile Methodology. This is because, Agile is
a flexible and iterative approach to software development that focus on continuous
improvement. It is suitable for my project because, the chatbot requires regular input from
athletes and coaches to make sure it meets their needs effectively.
Agile allows the development process to be broken into small and manageable phases called
“sprints”. Each sprint phase focus on delivering specific part of the system, such as creating
the chatbot’s core functions or testing the real time feedback feature. By do task one by one,
it becomes easier to make adjustment based on user’s feedback and review.
This methodology is relevant because it involves user collaboration for better understanding
of what user’s need. During the development, athletes and coaches can provide feedback after
testing the chatbot which make sure the final product meets their expectations. Additionally,
Agile supports adaptability, allows changes to be made faster if new requirements or error
arise during the development.
The Advantages of Agile Methodology:
•
•
•
Flexibility: Agile Allows adjustment to the chatbot based on user feedback and
review.
Continuous Improvement: Each sprint phase delivers updated version of chatbot,
improving its performance and functionality.
User-Focused Development: regular feedback from user makes sure the chatbot
remain relevant and practical to athletes and coaches.
In conclusion, Agile methodology is the best fit for my project. It promotes efficiency,
collaboration and user-focused approach, that make sure the chatbot will delivered on time
and meets the goals of the project.
2.5
Requirement Gathering Techniques
To make sure the Virtual Coach Chatbot meets the needs of users, several methods was used
to gather requirements. This includes surveys, interviews, record reviews, and observations.
Each of these method gives important insights about the problems faced by athletes and
coaches, as well as the features they think most useful in a virtual coach.
2.5.1
Google Form Survey
A survey was done to collect insights from UPM Athletics Team athletes about their training
habits, problems, and preferences. It was distributed using Google Forms, and a total of 29
responses was received. The survey provides important data to guide the development of the
Virtual Coach Chatbot.
10
From the survey, it shows that most of the respondents (51.7%) are beginners, followed by
37.9% intermediate athletes and 10.3% advanced. This range of experience shows the need
for a chatbot that can help athletes at different skill levels. On independent training, 35% of
athletes said they train without coach “sometimes”, while 31% said “always”. A smaller
number said they train “rarely” (24%) or “never” (10%), showing many athletes often need
support when training alone.
When asked about fitness apps, 45% of athletes said they use apps for training support, while
55% do not use any apps. For those who use, the most valuable features include workout
plans (84%), progress tracking (78%), training tips (52%), and injury prevention advice
(31%). This shows there is a strong demand for features that give structured training and
track progress.
The survey also look at challenges during independent training. The most common problems
are issues with technique or form (69%), staying motivated (65%), difficulty planning
workouts (51%), and no real-time feedback (48%). Other problems include injury risks (48%)
and not having training partner (3%). These results show the need for a tool that can give
personal support, real-time advice, and keep athletes motivated during their training.
About interest in a chatbot that provide real-time training advice, the response was very
positive. Most athletes (62%) rated their interest as 5 (very interested) on a scale of 1-to-5.
Another 20% rated it as 4, while only 10% rated as 3, and 7% rated as 1. This shows strong
interest in using a chatbot for training.
For the features they want in the chatbot, the top choices are technique advice (89%),
personal training programs (86%), and progress tracking with adjustments (69%). Other
wanted features include immediate responses to questions (69%) and injury prevention tips
(65%). Only a small number (3%) said they want nutrition tips. When asked about how often
they want training plan updates, 45% prefer weekly updates, 20% want updates as needed or
after each session, and 13% choose monthly updates.
In conclusion, the survey clearly shows there is a demand for a chatbot designed for track and
field athletes. Features like technique guidance, progress tracking, and personal training are
important to meet their needs. The responses also show how the Virtual Coach Chatbot can
help solve key problems and provide support for athletes at all levels.
11
2.5.2 Interview
Interview with Coach Bala and Coach Dek
To get a better understanding of how things are done in the UPM Athletics Team and how the
Virtual Coach Chatbot could make things easier for both coaches and athletes, I sat down
with Coach Bala (the Head Coach) and Coach Dek (the Assistant Coach). We had the
interview on 26/11/2024.
So, Coach Bala’s job is to make sure every athlete gets the right training plan that fits their
needs and competition schedule. And Coach Dek, he helps Coach Bala run the training
sessions and also keeps track of how the athletes are doing.
What I Found Out from the Interview
Both coaches shared a lot of good info about how they run things, the challenges they face,
and how the chatbot could step in to help out.
The Training Process Right Now: Right now, the whole training system at UPM Athletics is
pretty much built around the coaches’ manual effort to create individual training programs for
the athletes. These plans usually get sent out via WhatsApp – like, on a daily or weekly basis
– either as PDFs or just plain text messages. "We customize training plans based on the
athlete's skill level, goals, and events," Coach Bala explained. But when the athletes are
training on their own (without a coach around), they basically just have those instructions and
no real-time feedback.
Dealing with Athletes of Different Skill Levels: One thing the coaches really brought up was
how tough it is to manage athletes with all kinds of skill levels. "For beginners, we focus a lot
on basic skills and techniques. For more experienced athletes, we turn up the intensity and
focus on event-specific stuff," Coach Dek said. Keeping track of athletes at different levels
means a lot of adjusting and planning, which just makes things harder for the coaches.
Supervision Problems When Coaches Aren’t Around: One of the biggest issues the coaches
face is making sure athletes stay on track when they’re not around. Coach Bala said, "When
we travel with one group of athletes to a competition, the others have to train on their own.
It’s tough for them to stay focused without us giving them immediate feedback." This lack of
supervision, especially when athletes train independently, makes it hard for them to maintain
good form, stay motivated, or avoid messing up.
The Apps They Use Now: The coaches did mention using some fitness apps like Strava and
Nike Training Club to track the basics, but they pointed out that these apps aren’t really
specialized enough for track and field. "Strava’s good for tracking stuff like distance and
pace, but it doesn’t give real-time corrections or help with technique," Coach Dek said. "Nike
Training Club is fine for general workouts, but it’s not really made for track and field
athletes," added Coach Bala. Both coaches said there’s definitely a need for an app or tool
that offers real-time, track-and-field-specific guidance.
12
How the Virtual Coach Chatbot Can Help: When asked about how the chatbot will make
things better, both coaches were excited about the idea. "A chatbot that can give real-time
feedback on form would totally helpful," Coach Bala said. "It could also adjust training plans
based on an athlete's progress, which would save us a ton of time." Coach Dek added, "The
chatbot could give athletes guidance, even when we’re not around. It’d free us up to focus on
the more strategic parts of training."
How It’d Affect the Coaches’ Workload: Both coaches are really into the idea of how much
this chatbot will help cut down their workload. "The chatbot will take care of answering basic
questions about technique and performance, so we could focus more on the in-depth things
like actual strategy and training," Coach Dek said. Both coaches agreed that the chatbot will
make a big difference by providing consistent support to the athletes, helping them stay on
track and avoid making mistakes while training.
2.6
Tools and Technology
The develop of the Virtual Coach Chatbot needs several tools and tech to make sure it works
good, performs right, and stays reliable. These tools will be very important for building the
backend, running the machine learning part, and making sure the chatbot talks smoothly with
users.
The main programming language chosen for building the chatbot is Python. Python is famous
for how simple it is and how many libraries it has, making it a great choice for building
machine learning models and AI apps. It works well with machine learning frameworks like
TensorFlow and PyTorch, which will be super useful for training the model behind the
chatbot. Python’s big ecosystem also means it can work with a bunch of other tools, making it
easier to process data, train the model, and understand language.
For the backend development, Flask, a lightweight web framework in Python, will be used.
Flask lets you create web apps with less hassle, so it’s perfect for the scope of this project. It
will handle how the chatbot communicates with the user, take requests, and process them to
give real-time responses. Django could also be an option if more scalability is needed in the
future. Django is a more robust framework with more built-in features, so if the project
grows, it could be useful.
The chatbot’s language skills will come from GPT-Neo, a model created by Hugging Face.
GPT-Neo is an advanced open-source model that generates human-like responses quickly. It’s
a perfect fit for providing feedback, personalized advice, and answering athletes’ questions.
Whether it’s tips on training or injury prevention, GPT-Neo can handle it. This model was
picked because it performs well and can respond accurately, no matter the different needs of
13
the athletes.
For storing all the data like training programs, athlete profiles, performance, and progress,
MySQL will be used. MySQL is a solid relational database that will keep data safe and allow
it to be retrieved fast. It’s really important for tracking the athlete's progress and adjusting
their training plans when needed. This database will also let the chatbot give athletes
personalized training plans based on their goals and improvements.
To collect data from the athletes and coaches, Google Forms is used. This tool helps in
gathering feedback on the athletes' needs, preferences, and training issues. The results from
these surveys will help build the chatbot's features so that it actually solves the problems
athletes face. Google Forms is simple and effective for collecting and analyzing data, which
will guide how the chatbot functions.
In addition, tools like GitHub will be used for version control, so the development stays
organized and collaborative. GitHub will help with adding new features and updating the
chatbot regularly. Testing and fixing bugs will be done using tools like Postman and Jupyter
Notebooks, ensuring the chatbot works as expected and can handle a variety of inputs from
users.
In conclusion, the Virtual Coach Chatbot will use Python, Flask or Django, GPT-Neo,
MySQL, Google Forms, and other tools to make an efficient and effective system. These
technologies will work together to deliver a personalized, real-time training experience,
giving athletes the support they need to improve even when the coaches aren’t around.
14
APPENDIX
Appendix A: Survey Questions for Athletes
1. What is your level in track and field?
o
Beginner
o
Intermediate
o
Advanced
2. How often do you train independently (without a coach)?
o
Always
o
Sometimes
o
Rarely
o
Never
3. Do you currently use any fitness apps for training support?
o
Yes
o
No
4. If yes, what features do you find most helpful in your current training apps?
(Select all that apply)
o
Workout plans
o
Progress tracking
o
Training tips
o
Injury prevention advice
o
Other (please specify)
5. What are the biggest challenges you face when training alone? (Select all that
apply)
o
Lack of real-time feedback
o
Difficulty planning workouts
o
Issues with technique/form
o
Risk of injury
o
Staying motivated
o
No training partner to push me
15
o
Other (please specify)
6. How interested are you in a chatbot that provides real-time training advice for
track and field?
o
1 (Not interested)
o
2
o
3
o
4
o
5 (Very interested)
7. Which features would you find most valuable in a training chatbot? (Select all
that apply)
o
Personalized training programs
o
Technique advice
o
Injury prevention tips
o
Progress tracking and adjustments
o
Immediate responses to questions
o
Nutrition tips
8. How often would you like to update or adjust your training plan?
o
Weekly
o
Monthly
o
After each session
o
As needed
9. Would you really like to have a virtual coach to support your training?
o
Yes
o
No
o
Not Sure
16
Appendix B: Interview Questions for Coaches
1. What is your current process for creating training programs for athletes?
2. How do you manage athletes at different skill levels (beginner, intermediate,
advanced)?
3. What challenges do you face when supervising athletes during training?
4. How do you guide athletes when you're not available in person?
5. What types of performance data do you usually collect from athletes, and how do you
evaluate it?
6. How do you track athletes’ progress and adjust their training plans over time?
7. What are the most common injuries or technique issues athletes face, and how do you
handle them?
8. Do you use any tools or apps to support your coaching? If yes, what features do you
find most useful?
9. What extra features would you find helpful in a virtual coach chatbot for supporting
athletes?
10. How do you think a chatbot could help reduce your workload and support athletes’
training?
17
Appendix C: Figures
Figure 1.1: Table of System Scope
Description of the personalized training programs, real-time advice, progress tracking, and
training guidance offered by the proposed chatbot.
Figure 1.2: Table of User Scope
Details the users of the system: athletes, coaches, and admins, along with their roles.
Figure 1.3: Table of Project Timeline
Displays the milestones, start and end dates, and duration for the project's phases.
Figure 1.4: Gantt Chart of Project Timeline
Illustrates the timeline for project activities and milestones.
Figure 2.1: Current Training Process Flowchart
Visual representation of the current training process for UPM Athletics, detailing how
programs are prepared, shared, and evaluated.
Figure 2.2: Comparison of Similar Systems
Feature comparison table between Nike Training Club, Strava, and the proposed Virtual
Coach Chatbot.
18
MILESTONE2B.pdf
by Hisham Bahurudeen
Submission date: 29-Nov-2024 06:49PM (UTC+0800)
Submission ID: 2535265708
File name: MILESTONE2B.pdf (341.19K)
Word count: 4613
Character count: 25485
7
1
1
3
5
6
4
2
8
MILESTONE2B.pdf
2
ORIGINALITY REPORT
%
SIMILARITY INDEX
2%
INTERNET SOURCES
1%
PUBLICATIONS
PRIMARY SOURCES
1
kakairewilber.ucoz.com
2
Submitted to Kingston University
3
azpdf.org
4
moldstud.com
5
www.techem.ruhr-uni-bochum.de
6
athleticshour.com
7
nj.gov
8
Internet Source
Student Paper
Internet Source
Internet Source
Internet Source
Internet Source
Internet Source
Erick Jones. "Quality Management for
Organizations Using Lean Six Sigma
Techniques", CRC Press, 2019
Publication
1%
STUDENT PAPERS
1%
<1 %
<1 %
<1 %
<1 %
<1 %
<1 %
<1 %
Exclude quotes
On
Exclude bibliography
On
Exclude matches
Off
Download