-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy paththesis.tex
173 lines (159 loc) · 5.55 KB
/
thesis.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
%% Master thesis on Adaptive learning of programming.
\documentclass[
%printed,
digital,
color,
11pt,
nocover,
table, % coloured tables; (to disable: notable)
nolof, % hide List of Figures
nolot, % hide List of Tables
microtype,
%final,
]{fithesis3}
%% Locales.
\usepackage[resetfonts]{cmap}
\usepackage[T1]{fontenc}
\usepackage[
main=english,
english, czech
]{babel}
%% Metadata.
\thesissetup{
date = \the\year/\the\month/\the\day,
university = mu,
faculty = fi,
type = mgr,
author = Tomáš Effenberger,
gender = m,
advisor = {doc. Mgr. Radek Pelánek, Ph.D},
title = {Adaptive System for Learning Programming},
TeXtitle = {Adaptive System for\\Learning Programming},
keywords = {learning programming, domain modeling, student modeling,
tutor modeling, programming game, adaptive learning system},
}
%% Bibliography.
\usepackage[backend=biber, % use biber as backend instead of BiBTeX
%bibstyle=ieee, % bibliography style: IEEE with numeric citations
citestyle=numeric, % citation style
url=true, % display urls in bibliography
hyperref=auto, % detect hyperref and create links
]{biblatex}
\addbibresource{thesis.bib}
%% Abstract.
\thesislong{abstract}{%
This thesis presents an adaptive learning system for introductory programming.
To support learning and motivation, the system uses block-based programming,
a novel grid-world programming game, and progress visualization based on
mastery learning.
By adapting difficulty of tasks to the current skills, the system helps the
students to immerse in the problem-solving activity and achieve the state
of flow.
Collected data are used in offline analyses leading to insights that help
to iteratively improve the system.
%The thesis discuss strategies to support learning of introducotory programming,
% usage of artificial intelligence for adaptive behavior, design of a programming
% game, ...
}
%% Thanks.
\thesislong{thanks}{%
My journey towards this thesis started nine years ago at K-SCUK,
a week-long interdisciplinary camp for
high school students, organized by inspiring instructors.
Three of them significantly contributed to my research interests
and skills.
Jan Rygl showed me the power of artificial intelligence
% by guiding me through a project about minimax algorithm for tic-tac-toe.
and later became supervisor of my bachelor thesis.
%Many years after the camp, he supervised my bachelor thesis about automatic question generation.
Jan Papoušek became my colleague in the Adaptive Learning group
and helped me to overcome many challenges involved in
the development of an adaptive learning system.
Finally, Radek Pelánek invited me to the Adaptive Learning group,
became my Master Yoda during my master studies,
gave me a lot of actionable feedback,
and never hesitated to dive with me into a fruitful brainstorming.
Several other friends contributed to the
development of the adaptive learning system described in this thesis;
by implementing some of its parts, performing analyses, discussing ideas,
creating illustrations for the web, %discussing programming issues,
or by helping me with deployment of the system:
Jaroslav Čechák, Jiří Mauritz, Jiří Řihák, Matěj Vaněk, and Barbora Vrzáková.
I am also grateful to all people who tried the system
and gave me feedback.
\bigskip
The development of the adaptive learning system was supported by Red Hat
and Masaryk University Rector Project for outstanding master theses.
}
%% Index.
\usepackage{makeidx} %% The `makeidx` package contains
\makeindex %% helper commands for index typesetting.
%% Compact lists.
\usepackage{paralist}
\usepackage{enumitem}
\setitemize{noitemsep,topsep=3pt,parsep=3pt,partopsep=3pt}
%% Mathematics
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{amssymb}
%% Graphics
\usepackage{tikz}
%% Colors
\usepackage{xcolor}
\definecolor{theme-red}{rgb}{0.62,0.01,0.05}
\definecolor{dark-red}{rgb}{0.6,0.15,0.15}
\definecolor{dark-green}{rgb}{0.15,0.4,0.15}
\definecolor{medium-blue}{rgb}{0,0,0.5}
\definecolor{light-gray}{rgb}{0.93,0.93,0.93}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
%% Source code highlighting
\usepackage{listings}
\lstset{
backgroundcolor=\color{light-gray},
frame=lines,
rulecolor=\color{black},
numbers=left,
numberstyle=\tiny\color{gray},
basicstyle=\ttfamily,
showspaces=false,
showstringspaces=false,
escapeinside={<*}{*>},
belowskip=0.2em,
%identifierstyle=\color{black},
%keywordstyle=\color{blue},
%stringstyle=\color{teal},
commentstyle=\itshape}
%% Subcaption package for subfigure environment.
\usepackage{subcaption}
\captionsetup[subfigure]{
width=0.97\textwidth,
justification=raggedright,
}
%% URLs.
\usepackage{url}
\usepackage{hyperref}
%% References.
\usepackage[capitalise,noabbrev]{cleveref} % Must be loaded after hyperref.
%% Include shared macros used across chapters.
\include{utils}
% Load fithesis prematuraly to allow custom changes.
\thesisload
%% Limit depth in Table of Contents.
\setcounter{tocdepth}{1}
% Shrink space between figure and caption
%\setlength{\abovecaptionskip}{3pt plus 3pt minus 2pt}
\begin{document}
\include{01-introduction}
\include{02-learning-programming}
\include{03-adaptive-learning}
\include{04-design-of-game}
\include{05-design-of-adaptivity}
\include{06-robomission-implementation}
\include{07-analysis}
\include{08-conclusion}
\printbibliography[heading=bibintoc]
\appendix
\include{appendix-attachments}
\include{appendix-technologies}
\end{document}