forked from SOMAS2022/SOMAS2022-Final-Report
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.tex
237 lines (203 loc) · 9.42 KB
/
main.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
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Packages %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper,11pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[a4paper, top=3cm, bottom=3cm, left=2.5cm, right=2.5cm, marginparwidth=2cm, headsep=1.2cm]{geometry} % layout
\usepackage[pdfencoding=auto]{hyperref} % enables hyperlinks in the PDF
\hypersetup{colorlinks=true, linkcolor=blue, urlcolor=blue, citecolor=blue} \urlstyle{same}
\usepackage{amsmath}
\usepackage{longtable}
\usepackage{cleveref} \Crefformat{figure}{#2Fig.~#1#3} % makes referencing customizable (e.g. \Cref{}). See: https://texblog.org/2013/05/06/cleveref-a-clever-way-to-reference-in-latex/)
\usepackage[nottoc, notlof, notlot]{tocbibind} % includes bibliography in table of contents (TOC)
\usepackage[numbers]{natbib} % sets reference style
\usepackage{graphicx} % required to include images
\usepackage[svgnames]{xcolor}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\usepackage{subfig}
\usepackage{siunitx} % makes it easier to use units (e.g. \SI{15}{mm}). See: https://mirror.foobar.to/CTAN/macros/latex/contrib/siunitx/siunitx.pdf
\usepackage[font=small]{caption} % reduces the caption's font size
\usepackage{eso-pic} % required to add the titlepage background image
\usepackage{lipsum} % To generate lorem ipsum dummy text
\usepackage{pgfgantt} % For Gantt chart creation
\usepackage{fancyhdr} % Changes the header & footer style
\usepackage{float}
\usepackage{bm}
\usepackage{amsfonts}
\usepackage{booktabs}
\usepackage{listings}
\usepackage{listings-golang}
\usepackage{adjustbox}
\usepackage{multicol}
\usepackage{multirow}
\usepackage[normalem]{ulem}
\useunder{\uline}{\ul}{}
\usepackage[rightcaption]{sidecap}
\setlength\parindent{24pt}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{lipsum}
\usepackage{placeins}
\usepackage{enumitem} % for enumerated lists other than 1. 2. 3.
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{animate}
\lstset{
language=golang,
showstringspaces=false,
columns=flexible,
basicstyle={\small\ttfamily},
numbers=none,
numberstyle=\tiny\color{mygray},
keywordstyle=\color{blue},
commentstyle=\color{mygreen},
stringstyle=\color{mymauve},
breakatwhitespace=true,
tabsize=4
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Commands %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Author
% Use \\ to separate multiple authors (e.g. Robert\\Nathalie\\Mike)
\newcommand{\myName}{SOMAS Class 2022}
% Title
% Introduce line breaks with \\
\newcommand{\myTitle}{Self-Organising Multi-Agent Systems}
% Type of Thesis
\newcommand{\thesisType}{Final Report}
% Date
\newcommand{\myDate}{December 2022}
% Supervisors
% Use \\ to separate multiple supervisors (e.g. Robert\\Nathalie\\Mike)
% Use full titles (e.g. Prof. Dr., Dr. )
\newcommand{\supervisors}{Prof.\ Jeremy Pitt}
\newcommand{\assistants}{Mr.\ Matthew Scott \\ Ms.\ Asimina Mertzani}
% ToDo Command
\newcommand{\ToDo}[1]{\textcolor{red}{#1}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Page Format %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Paragraphs
\setlength\parindent{0pt}
\setlength{\parskip}{2mm}
% Section Format
\usepackage[explicit]{titlesec}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Title Page %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Don't change anything here
\begin{document}
\begin{titlepage}
\newgeometry{top=2cm, bottom=2cm, right=1.5cm, left=1cm}
\tikz[remember picture,overlay] \node[opacity=1,inner sep=0pt, anchor=west] (A) at (2cm,-1.5cm){\includegraphics[scale=0.5]{template_figures/logo.eps}};
\begin{center}
\vspace*{6cm}
\huge \textbf{\thesisType}\\
\vspace*{0.75cm}
\Huge \myTitle\\
\vspace{0.5cm}
\Large {Department of Electrical and Electronic Engineering}\\
\Large {Imperial College London}\\
\vspace*{2cm}
\huge \myName\\
\vspace*{0.3cm}
\LARGE \myDate\\
\vfill
Lecturer\\
\vspace*{0.5cm}
\huge \supervisors
\vfill
Assistants\\
\vspace*{0.5cm}
\huge \assistants
\vfill
\end{center}
\end{titlepage}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Abstract & Table of Contents %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagenumbering{roman}
\begin{abstract}
The economic climate of the world today has demonstrated our reliance on sparse resources. However, given society's increasing use of automation, there may be methods to combat this issue of sparsity by helping people and artificial systems work together to distribute these resources in a just manner. Notably, informed decision-making through social interaction and collective risk analysis increases the chance of satisficing most individuals. To demonstrate the viability of this hypothesis, a project was designed that simplified the issues of today into a cooperative survival game, namely, the `Escape The Pitt' game. Agents programmed with different strategies must act as a collective to defeat monsters level by level. At each level, these agents must communicate to decide collective actions and the distribution of sparse resources, aiding them in their tasks. These decision are aided by the election of a chair to help formalize the views of the collective and implement the social contracts of a Norm-governed society. Ultimately, while the game was not won by most agent teams, the utilization of communication and an elected chair aided agents in progressing further in the game than when performing using random actions. Given this result, we believe that improvements and additions in the communication systems in the game would yield even greater progress.
\end{abstract}
\newpage
\tableofcontents
\newpage
\listoffigures
\newpage
\listoftables
\newpage
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Glossary & List of Symbols %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{List Of Symbols}
\begin{description}
\item[\parbox{1.25 in}{$\delta$}] Range Modifier
\item[\parbox{1.25 in}{$\gamma$}] Hit Point Modifier
\item[\parbox{1.25 in}{$\sigma$}] Linear Modifier
\item[\parbox{1.25 in}{$X$}] Enemy Resilience
\item[\parbox{1.25 in}{$Y$}] Enemy Damage
\item[\parbox{1.25 in}{$HP$}] Health Points
\item[\parbox{1.25 in}{$ST$}] Stamina Points
\item[\parbox{1.25 in}{$c$}] Current Level
\item[\parbox{1.25 in}{$L$}] Total Number Of Levels
\item[\parbox{1.25 in}{$N$}] Number Of Agents
\item[\parbox{1.25 in}{$\mu$}] Threshold Percentage
\item[\parbox{1.25 in}{$M$}] Number Of Agents Required To Win game
\item[\parbox{1.25 in}{$N_f$}] Number Of Fighting Agents
\item[\parbox{1.25 in}{$N_c$}] Number Of Cowering Agents
\item[\parbox{1.25 in}{$HP_{pool}$}] Health pool
\item[\parbox{1.25 in}{$HP_c$}] Cowering Health Regeneration
\item[\parbox{1.25 in}{$ST_c$}] Cowering Stamina Regeneration
\item[\parbox{1.25 in}{$ST_{cower}$}] Cower Stamina Regeneration
\item[\parbox{1.25 in}{$HP_{cower}$}] Cower Health Regeneration
\item[\parbox{1.25 in}{$A_s$}] Attack Base
\item[\parbox{1.25 in}{$A_b$}] Attack Bonus
\item[\parbox{1.25 in}{$A$}] Attack Total
\item[\parbox{1.25 in}{$D_s$}] Defense Base
\item[\parbox{1.25 in}{$D_b$}] Defense Bonus
\item[\parbox{1.25 in}{$D$}] Defense Total
\item[\parbox{1.25 in}{$P_hp$}] Health Potion Value
\item[\parbox{1.25 in}{$P_st$}] Stealth Potion Value
\item[\parbox{1.25 in}{$P$}] Potion Drop Quantity Percentage
\item[\parbox{1.25 in}{$E$}] Weapon Drop Quantity Percentage
\item[\parbox{1.25 in}{$N_p$}] Number Of Potions Dropped
\item[\parbox{1.25 in}{$N_e$}] Number Of Weapons Dropped
\item[\parbox{1.25 in}{$N_hp$}] Number Of Health Potions Dropped
\item[\parbox{1.25 in}{$N_st$}] Number Of Stamina Potions Dropped
\item[\parbox{1.25 in}{$N_a$}] Number Of Swords Dropped
\item[\parbox{1.25 in}{$N_d$}] Number Of Shields Dropped
\end{description}
\newpage
\pagenumbering{arabic}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Document Start %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\input{000_introduction/000_introduction}
\input{001_game_design/001_game_design.tex}
\input{002_devops_project_management/002_devops_project_management.tex}
\input{003_infrastructure/003_infrastructure.tex}
\input{004_team_1_agent_design/004_team_1_agent_design}
\input{005_team_2_agent_design/005_team_2_agent_design}
\input{006_team_3_agent_design/006_team_3_agent_design}
\input{007_team_4_agent_design/007_team_4_agent_design}
\input{008_team_5_agent_design/008_team_5_agent_design}
\input{009_team_6_agent_design/009_team_6_agent_design}
\input{012_Reflection/012_reflection.tex}
\input{013_conclusion/013_conclusion}
% Appendix
\appendix
\input{015_appendix/015_appendix}
% References
\newpage
\nocite{*}
\bibliography{references}
\bibliographystyle{unsrtnat}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Document End %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}