-
Notifications
You must be signed in to change notification settings - Fork 0
/
delegation.tex
753 lines (666 loc) · 31.4 KB
/
delegation.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
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
\documentclass{sigchi}
% Use this section to set the ACM copyright statement (e.g. for
% preprints). Consult the conference website for the camera-ready
% copyright statement.
% Copyright
%\CopyrightYear{2016}
%\setcopyright{acmcopyright}
%\setcopyright{acmlicensed}
%\setcopyright{rightsretained}
%\setcopyright{usgov}
%\setcopyright{usgovmixed}
%\setcopyright{cagov}
%\setcopyright{cagovmixed}
% DOI
%\doi{http://dx.doi.org/10.475/123_4}
% ISBN
%\isbn{123-4567-24-567/08/06}
%Conference
%\conferenceinfo{CHI'16,}{May 07--12, 2016, San Jose, CA, USA}
%Price
%\acmPrice{\$15.00}
% Use this command to override the default ACM copyright statement
% (e.g. for preprints). Consult the conference website for the
% camera-ready copyright statement.
%% HOW TO OVERRIDE THE DEFAULT COPYRIGHT STRIP --
%% Please note you need to make sure the copy for your specific
%% license is used here!
% \toappear{
% Permission to make digital or hard copies of all or part of this work
% for personal or classroom use is granted without fee provided that
% copies are not made or distributed for profit or commercial advantage
% and that copies bear this notice and the full citation on the first
% page. Copyrights for components of this work owned by others than ACM
% must be honored. Abstracting with credit is permitted. To copy
% otherwise, or republish, to post on servers or to redistribute to
% lists, requires prior specific permission and/or a fee. Request
% permissions from \href{mailto:[email protected]}{[email protected]}. \\
% \emph{CHI '16}, May 07--12, 2016, San Jose, CA, USA \\
% ACM xxx-x-xxxx-xxxx-x/xx/xx\ldots \$15.00 \\
% DOI: \url{http://dx.doi.org/xx.xxxx/xxxxxxx.xxxxxxx}
% }
\toappear{}
% Arabic page numbers for submission. Remove this line to eliminate
% page numbers for the camera ready copy
\pagenumbering{arabic}
% Load basic packages
\usepackage{balance} % to better equalize the last page
\usepackage{graphics} % for EPS, load graphicx instead
\usepackage[T1]{fontenc} % for umlauts and other diaeresis
\usepackage{txfonts}
\usepackage{mathptmx}
\usepackage[pdflang={en-US},pdftex]{hyperref}
\usepackage{color}
\usepackage{booktabs}
\usepackage{textcomp}
\usepackage{booktabs}
\usepackage{ccicons}
\usepackage{pgf}
\usepackage{tikz}
\usepackage{tkz-graph}
\usepackage{mathtools}
\usepackage{amsmath}
\usepackage{algorithm}
\usepackage{algpseudocode}
% Some optional stuff you might like/need.
\usepackage{microtype} % Improved Tracking and Kerning
% \usepackage[all]{hypcap} % Fixes bug in hyperref caption linking
\usepackage{ccicons} % Cite your images correctly!
% \usepackage[utf8]{inputenc} % for a UTF8 editor only
% If you want to use todo notes, marginpars etc. during creation of
% your draft document, you have to enable the "chi_draft" option for
% the document class. To do this, change the very first line to:
% "\documentclass[chi_draft]{sigchi}". You can then place todo notes
% by using the "\todo{...}" command. Make sure to disable the draft
% option again before submitting your final document.
\usepackage{todonotes}
% Paper metadata (use plain text, for PDF inclusion and later
% re-using, if desired). Use \emtpyauthor when submitting for review
% so you remain anonymous.
\def\plaintitle{PeerMind: Delegation}
%\def\plainauthor{First Author, Second Author, Third Author,
% Fourth Author, Fifth Author, Sixth Author}
%\def\emptyauthor{}
%\def\plainkeywords{Authors' choice; of terms; separated; by
% semicolons; include commas, within terms only; required.}
%\def\plaingeneralterms{Documentation, Standardization}
% llt: Define a global style for URLs, rather that the default one
\makeatletter
\def\url@leostyle{%
\@ifundefined{selectfont}{
\def\UrlFont{\sf}
}{
\def\UrlFont{\small\bf\ttfamily}
}}
\makeatother
\urlstyle{leo}
% To make various LaTeX processors do the right thing with page size.
\def\pprw{8.5in}
\def\pprh{11in}
\special{papersize=\pprw,\pprh}
\setlength{\paperwidth}{\pprw}
\setlength{\paperheight}{\pprh}
\setlength{\pdfpagewidth}{\pprw}
\setlength{\pdfpageheight}{\pprh}
% Make sure hyperref comes last of your loaded packages, to give it a
% fighting chance of not being over-written, since its job is to
% redefine many LaTeX commands.
\definecolor{linkColor}{RGB}{6,125,233}
%\hypersetup{%
% pdftitle={\plaintitle},
%% Use \plainauthor for final version.
%% pdfauthor={\plainauthor},
% pdfauthor={\emptyauthor},
% pdfkeywords={\plainkeywords},
% pdfdisplaydoctitle=true, % For Accessibility
% bookmarksnumbered,
% pdfstartview={FitH},
% colorlinks,
% citecolor=black,
% filecolor=black,
% linkcolor=black,
% urlcolor=linkColor,
% breaklinks=true,
% hypertexnames=false
%}
% create a shortcut to typeset table headings
% \newcommand\tabhead[1]{\small\textbf{#1}}
\GraphInit[vstyle=Dijkstra]
\tikzset{
EdgeStyle/.append style={->,bend left}
}
\hyphenation{PeerMind}
% End of preamble. Here it comes the document.
\begin{document}
\title{\plaintitle}
%\numberofauthors{3}
%\author{%
% \alignauthor{Leave Authors Anonymous\\
% \affaddr{for Submission}\\
% \affaddr{City, Country}\\
% \email{e-mail address}}\\
% \alignauthor{Leave Authors Anonymous\\
% \affaddr{for Submission}\\
% \affaddr{City, Country}\\
% \email{e-mail address}}\\
% \alignauthor{Leave Authors Anonymous\\
% \affaddr{for Submission}\\
% \affaddr{City, Country}\\
% \email{e-mail address}}\\
%}
\maketitle
\begin{abstract}
%\todo[inline]{TODO}
\end{abstract}
%\category{H.5.m.}{Information Interfaces and Presentation
% (e.g. HCI)}{Miscellaneous} \category{See
% \url{http://acm.org/about/class/1998/} for the full list of ACM
% classifiers. This section is required.}{}{}
%
%\keywords{\plainkeywords
\section{Introduction}
%Two of the most shocking democratic votes in recent history occurred in 2016:
%The referendum vote for Britain to leave the European Union (``Brexit'') and the election of Donald Trump as
%President of the United States.
%Both votes were decided by the slimmest of margins, but more significantly, both votes had poor turnout.
%We often hear that the Achilles heel of a democracy is low engagement, but this is a fallacy~---~in fact, our goal
%should be to decrease engagement.
%The ideal governance system is one where citizens do not have to be constantly involved, but the system is still
%acting as the citizens would like it to. Can we increase legitimacy within a democracy while also decreasing the
%attention required at the same time?
%
%In this paper we present our work on improving the collective decision-making through use of a web application
%to facilitate the process.
%In contrast with existing similar solutions, our web application integrates new ideas in how to improve this process:
%use of range voting, dynamic quorum, and vote delegation.
%The broad idea is that instead of just trying to move the voting process online~---~something many others have done
%previously~---~we in fact wish to add value by voting online.
%Specifically, we can compute results faster, more accurately,
%%and securely,
%we can use sophisticated statistics to
%estimate important quantities for the entire voting population, we can allow for members to entrust others who have
%more expertise on topics than they do themselves, and we can promote clarity and full understanding of the voting
%items for all.
%The broad idea is that instead of just trying to move the voting process online -- something many others do -- we in
%fact add additional value by voting online.
%Specifically, we can compute results faster and more accurately, we can use sophisticated statistics to estimate
%quantities for the entire voting population, and we can promote clarity and full understanding of the voting items for all.
%
%\todo[inline]{Main questions and answers follow.}
%
%What problem are we solving? Why is it important to solve? What is the story?
%
%Finding a way to lower attention required but increase legitimacy of democratic decisions.
%Traditionally legitimacy is increased by increasing participation/attention required.
%It is an everlasting problem.
%How to outsource governance and at the same time assure it does not get corrupt
%or tyrannic.
%
%Has anyone else tried to solve it or related problems? How did they try
%and what were the results (subjective or objective)?
%
%Described here: \url{http://mitar.tnode.com/post/73983101095/peer-to-peer-voting-scheme}.
%Some tried delegations, but mostly only to one person.
%Getting issues that you have tree-structure with possible cycles you cannot resolve.
%Often there were reported UI problems as well.
%So just technically improving is not enough, you also have to have UI for the technical solution so that people can trust.
%
%How are you solving the problem? What technologies are you using?
%
%Using dynamic quorum, range voting, delegation, and nice integration with UI/UX.
%
%How will you know how well you solved the problem? How will those technologies address the issues?
%
%If it improves decision making, participation, inclusivity, activity of people engaged in decision making in my house.
%So currently we have issues with reaching the quorum and many people do not participate.
%I would like for them to have easier time participating (less time required) and as a consequence more people to
%participate collectively.
%If I observe that I think I will know I solved the problem.
%
%\todo[inline]{This rest of the section is mostly notes. Organize and improve.}
%
%We can often hear that the issue of our democracy is low engagement.
%But this is a fallacy, because we should be instead trying to decrease engagement.
%The best governance system is one where you do not have to be involved yourself, but it is still doing things
%like you would like to do them.
%% Or even, doing things you might not even know that you would like to be done, especially in a long term.
%We want to outsource the job of coordination between people.
%Sometimes you want to coordinate people yourself (in your company, team), you might enjoy it, but in most cases
%you cannot or do not want to, so you outsource this service, especially at a large scale.
%
%One reason why increasing engagement sounds like a good idea is because current democratic systems have two
%questionable assumptions: participants have time to participate, and knowledge to participate.
%If you do not participate it is your fault.
%Moreover, the legitimacy of decisions is based on participation as well.
%This is why those participating in the these democratic systems have motivation to try to increase participation
%of others (especially if they believe they will still be in majority), or claim they are at fault to not participate.
%
%engagement is then increased only to assure that people like the results
%
%so if we try to minimize engagement, but still make sure that people like the results, then this is the perfect system
%
%and only in the case when they are on the loosing side, then we have to make sure that they understand the reasons why
%they lost (e.g.,\ the middle panel in our design) or at least to feel that they participated, in at least some way
%(voting, or just delegating)
%
%but the participation is the last on this list of important factors
%
%the more important thing is that they understand why others were thinking differently
%or that they do not even have to be engaged
%
%we want that people do not have to pay attention to what government is doing
%
%currently, we are in a loop where we have a useless feedback loop, where government in fact would like for people
%to pay some type of attention because they need to be elected, so they have to show like they are doing something,
%but on the other hand they do not want too much engagement, because they do not have things in place to really
%engage with everyone
%
%government should be like infrastructure, you should not have to care about it while it works, and be there to fix
%things if it starts failing, but not even you personally, but have mechanisms and processes in place to find this
%
%Terminology:
%\begin{itemize}
%\item community -- group which is making a decision using PeerMind
%\item member -- user of the app who is participating in decision making
%\end{itemize}
%
%\todo[inline]{Terminology: decision vs. vote vs. voting (how to name the step in decision making where you vote, and what is what you cast?)}
%\todo[inline]{Terminology: motion? Tally? What is the sum of all votes?}
%\todo[inline]{Terminology: discarding a vote if you didn't vote and didn't delegate. Some other term?}
%
%The main question is: can we increase legitimacy and decrease attention required at the same time.
%Many others are trying to increase attention (participation) because they want to increase legitimacy,
%assuming that this is the only way.
%
%A list of potential other points:
%\begin{itemize}
%\item legitimacy (quorum, involvement of more people through delegation)
%\item scaling (delegation helps, less attention helps)
%\item attention (at same or better decisions)
%\item bad assumptions for democracy - time, knowledge, it is rational to know that you do not know, common practice is to ask friends
%\item better decisions (more people consulted, attention directed where it should be)
%\end{itemize}
%
%Another question: should feedback be visible (to see how others voted before you voted)?
%People go with majority.
%Better for wisdom of crowds is an independent sample.
%Maybe we should only allow how other voted to be seen after you voted (but you can still change the vote),
%but we could then observe that and learn from this and see if this is good or bad.
%Or we could just store information if you observed existing votes before you voted (you have to click a button to see them).
%Maybe going with majority is also good when you want more social cohesion in the community and not so much ``optimal''
%wisdom of crowds result - you would want that people relax their positions based on how other people care.
%Cohesion of the group vs. accuracy.
%Maybe display only number of votes and credibility, maybe credibility direction or graph, but not average votes.
%
%A list of potential questions:
%\begin{itemize}
%\item Delegation works?
%\item Statistical quorum works?
%\item Real-time feedback influences?
%\item Private vs. public delegation (do you know how member to whom you delegated is voting)?
%\item When delegating, how to assure that you cannot learn how somebody else voted, but that you can still somehow
%learn how your vote is used?
%\item Knowing how much power you have vs. not knowing -- does it change how people behave? (Knowing might corrupt you,
%but also motivate you to do more thorough work voting because you know other depend on you.)
%\end{itemize}
%
%Performance/theory/scaling in computational terms (how big could effectively community can be to be able to compute it).
%Some other theoretical properties?
%Computing statistical quorum is an ``embarrassingly parallel'' problem, and so its
%use would not suffer in large populations.
%Sparsity of delegation matrix also enables use of (recently developed?)
%efficient matrix computation algorithms.
%
%Out of scope of this work:
%
%\begin{itemize}
%\item How to assure privacy of the delegation network (it is highly sensitive data, probably even more than votes)?
%\item How to compute delegation results in a way that it does not require access to the whole network of delegation at once?
%\item How can we make this system distributed (and still assure privacy)?
%\end{itemize}
%
\section{Related work}
\cite{andersen2008trust, dirnstorfer2010voting, ford2002delegative, rodriguez2007smartocracy, yamakawa2007toward}
%More:
%\begin{itemize}
%\item https://mason.gmu.edu/~rhanson/futarchy.html
%\item http://merkle.com/papers/DAOdemocracyDraft.pdf
%\end{itemize}
\section{Features}
\subsection{Delegation}
%\todo[inline]{Max: I think delegation graph edges should point in the direction towards the person that the vote is
%being given to (more intuitive).
%\\
%Mitar: We are not giving votes to people, we are delegating a decision to people, but votes are computed for each person
%separately based on how delegates voted themselves. The idea is that you ask a delegate how the voted and then compute
%your vote. The do not get your vote to do anything with it. This is why arrows are like that. Maybe the word
%"delegation" is confusing and we should maybe use surrogate or some other word.}
Because not every member of the community has time or knowledge to vote all the time, each member can delegate
decisions to one or more other members of the community.
When a member does not vote themselves, information how those delegates voted is combined into a vote of
the non-voting member.
If a delegate has not voted themselves either, their vote is computed through delegation as well, recursively.
Each member $M$ can declare their delegates and ratios $r$ in which delegates' votes are combined. For example:
\begin{itemize}
\item Member $M_1$ decides not to delegate at all.
\item Member $M_2$ delegates to $M_1$ and $M_4$ with ratios $0.75$ ($r_{2,1}$) and $0.25$ ($r_{2,4}$), respectively.
\item Member $M_3$ delegates to $M_4$ with ratio $1.00$ ($r_{3,4}$).
\item Member $M_4$ delegates to $M_2$, $M_3$, and $M_5$ with ratios $0.40$ ($r_{4,2}$), $0.40$ ($r_{4,3}$), and $0.20$ ($r_{4,5}$), respectively.
\item Member $M_5$ decides not to delegate.
\end{itemize}
The sum of ratios of all delegations of a member has to be $1.0$.
Members $M_1$ and $M_5$ decided not to participate in delegation and if they do not vote they are
counted towards non-voting population.
\begin{figure}
\centering
\begin{tikzpicture}
\SetGraphUnit{2.5}
\Vertex[Math,L=M_1]{M1}
\EA[Math,L=M_2](M1){M2}
\SO[Math,L=M_4](M2){M4}
\WE[Math,L=M_3](M4){M3}
\EA[Math,L=M_5](M4){M5}
\Edge[label=$0.40$](M2)(M4)
\Edge[label=$0.75$](M1)(M2)
\Edge[label=$0.25$](M4)(M2)
\Edge[label=$0.20$](M5)(M4)
\tikzset{EdgeStyle/.append style={bend right}}
\Edge[label=$1.00$](M4)(M3)
\Edge[label=$0.40$](M3)(M4)
\end{tikzpicture}
\caption{Example delegation network. Edges are directed towards a member who is delegating, representing how their
vote is computed from delegates' votes. E.g., $V_2 = 0.75 V_1 + 0.25 V_4$}\label{fig:delegation-network}
\end{figure}
We can represent these delegations as a graph we call \emph{delegation network} as seen in
Figure~\ref{fig:delegation-network}.
We direct edges towards a member who is delegating, to represent how their vote is computed from delegates' votes.
For example, member $M_2$ delegates the decision to members $M_1$ and $M_4$.
$M_1$ and $M_4$ become $M_2$'s delegates.
As a consequence, $M_2$'s vote $V_2$ is computed from $M_1$'s and $M_4$'s computed votes ($V_1$ and $V_4$)
if $M_2$ does not vote themselves.
With $v_i$ we denote a vote of a member $M_i$ if they voted, otherwise it is $0$.
$V_i$ denotes their vote, if they have voted, or a computed vote based on their delegations, if they have not voted.
A delegation network can be described as a system of equations.
%\todo[inline]{Max: Double check accuracy of this method, Improve explanation here and perhaps use nicer numbers so
%readers can follow along certain parts in their heads easily.}
\begin{displaymath}
\begin{array}{rcl}
V_1 & = & \begin{dcases*}
v_1 & if $M_1$ votes \\
0 & otherwise \\
\end{dcases*} \\
V_2 & = & \begin{dcases*}
v_2 & if $M_2$ votes \\
r_{2,1} V_1 + r_{2,4} V_4 = 0.75 V_1 + 0.25 V_4 & otherwise \\
\end{dcases*} \\
V_3 & = & \begin{dcases*}
v_3 & if $M_3$ votes \\
r_{3,4} V_4 = 1.00 V_4 & otherwise \\
\end{dcases*} \\
V_4 & = & \begin{dcases*}
v_4 & if $M_4$ votes \\
r_{4,2} V_2+ r_{4,3} V_3 + r_{4,5} V_5 = & otherwise \\
= 0.40 V_2 + 0.40 V_3 + 0.20 V_5 & \\
\end{dcases*} \\
V_5 & = & \begin{dcases*}
v_5 & if $M_5$ votes \\
0 & otherwise \\
\end{dcases*} \\
\end{array}
\end{displaymath}
When only some members vote we can use a delegation network to compute votes
of all members.
We convert a delegation network to a matrix $D$:
\begin{displaymath}
D = \left[d_{ij}\right] = \begin{dcases*}
1 & if $i = j$ \\
-r_{i,j} & \parbox[t]{.55\columnwidth}{if $M_i$ did not vote, but delegates to $M_j$ with ratio $r_{i,j}$} \\
0 & otherwise \\
\end{dcases*}
\end{displaymath}
We solve the matrix equation for $\boldsymbol{V}$:
\begin{displaymath}
D \boldsymbol{V} = \boldsymbol{v},\quad \boldsymbol{v} = \left[v_{i}\right],\quad \boldsymbol{V} = \left[V_{i}\right]
\end{displaymath}
To continue with our example, let's say that $M_1$ and $M_3$ voted for a decision with $0.7$ and against with $0.4$,
respectively.
We are using range voting on $[-1, 1]$ range, so those votes are $v_1 = V_1 = 0.7$ and
$v_3 = V_3 = -0.4$.
\begin{displaymath}
D = \left[ \begin{array}{ccccc}
1 & 0 & 0 & 0 & 0 \\
-0.75 & 1 & -0.25 & 0 & 0 \\
0 & 0 & 1 & 0 & 0 \\
0 & -0.40 & -0.40 & 1 & -0.20 \\
0 & 0 & 0 & 0 & 1 \\
\end{array} \right]
\end{displaymath}
\begin{displaymath}
\boldsymbol{v} = \left[ \begin{array}{c}
0.7 \\
0 \\
-0.4 \\
0 \\
0 \\
\end{array} \right],\quad \boldsymbol{V} = \left[ \begin{array}{c}
0.70 \\
0.54 \\
-0.40 \\
0.056 \\
0 \\
\end{array} \right]
\end{displaymath}
There are few details we have to look into.
It happen that matrix $D$ is singular which prevents $\boldsymbol{V}$ to be directly computed.
For example, for the following system:
\begin{displaymath}
\left[ \begin{array}{ccccc}
1 & 0 & -1 & 0 \\
0 & 1 & -0.3 & -0.7 \\
-1 & 0 & 1 & 0 \\
0 & 0 & 0 & 1\\
\end{array} \right] \boldsymbol{V} = \left[ \begin{array}{c}
0 \\
0 \\
0 \\
1 \\
\end{array} \right]
\end{displaymath}
we would like that for $\boldsymbol{V}$ the result is:
\begin{displaymath}
\left[ \begin{array}{c}
0 \\
0.7 \\
0 \\
1 \\
\end{array} \right]
\end{displaymath}
Such matrix $D$ can happen when there is a cycle of delegations and nobody in a cycle
voted.
We can use the algorithm from Algorithm~\ref{alg:decycle} to modify matrix $D$ into
matrix $D'$ without such cycles.
It is worth noting that matrix $D$ has some useful properties:
there is always a diagonal with elements $1$, other elements are from interval $[−1,0]$,
sum of each row is always or $1$ or $0$.
\begin{algorithm}[h]
\caption{Removing cycles in delegation matrix $D$}
\begin{algorithmic}[1]
\State Define a set of restricted indexes $Z$.
\State Populate $Z$ with indexes of all rows which have $1$ only on a diagonal.\footnotemark
\State Remove all rows and columns corresponding to those indexes.
\State Add to $Z$ (original) index of every row for which the sum (of its elements in this reduced matrix) is $\neq 0$.
\State If added any such index, go to step 3.
\State Otherwise rows which are making the matrix ill-defined are left. Set them to having only $1$ on a diagonal in the original matrix $D$.
\end{algorithmic}
\label{alg:decycle}
\end{algorithm}
\footnotetext{Equal to: all rows for which the sum of its elements is $1$; or, for which all non-diagonal elements are $0$.}
For the last example above, the resulting $D'$ matrix would be:
\begin{displaymath}
\left[ \begin{array}{cccc}
1 & 0 & 0 & 0 \\
0 & 1 & -0.3 & -0.7 \\
0 & 0 & 1 & 0 \\
0 & 0 & 0 & 1\\
\end{array} \right]
\end{displaymath}
For our initial example, no change is necessary, so $D' = D$.
Despite delegation some votes or parts of votes can still happen to stay missing.
Members who did not vote might have not declared their delegates.
Other members could delegate to them as well, potentially propagating lack of a vote further.
In our example, member $M_5$ has not voted so their vote will stay missing.
As a consequence $M_4$'s vote cannot be computed fully, which influences $M_2$'s vote as well.
Another issue is a question of abstentions.
In PeerMind members can abstain from voting which is different from simply not participating.
Abstentions are counted towards quorum, but they do not contribute to the result.
Moreover, from $\boldsymbol{V}$ alone we cannot see which elements represent vote $0$ and which
represent that it was not possible to compute a vote for a member.
To address all this, we define two vectors:
\begin{displaymath}
\boldsymbol{w} = \left[w_i\right] = \begin{dcases*}
1 & if $M_i$ voted \\
0 & otherwise \\
\end{dcases*},\quad \boldsymbol{a} = \left[a_i\right] = \begin{dcases*}
1 & if $M_i$ abstained \\
0 & otherwise \\
\end{dcases*}
\end{displaymath}
We solve $D' \boldsymbol{W} = \boldsymbol{w}$ and $D' \boldsymbol{A} = \boldsymbol{a}$ for
$\boldsymbol{W} = \left[W_{i}\right]$ and $\boldsymbol{A} = \left[A_{i}\right]$, respectively.
Non-zero elements of $\boldsymbol{W}$ correspond to members who voted or for which we can compute
a vote.
We define a normalized matrix:
\begin{displaymath}
D'' = \left[D''_{ij}\right] = \begin{dcases*}
1 & if $i = j$ \\
0 & if $W_j = 0$ ($V_j$ cannot be computed) \\
-r'_{i,j} & if $M_i$ did not vote \\
0 & otherwise \\
\end{dcases*}
\end{displaymath}
Where:
\begin{displaymath}
r'_{i,j} = \frac{r_{i,j}}{R_i},\quad R_i = \sum_{W_k \ne 0} r_{i,k}
\end{displaymath}
We normalize ratios to only those delegates who voted or for which we can
compute their votes recursively.
So $r_{4,2}$ and $r_{4,3}$ are normalized from $0.40$ to $0.50$.
To compute votes with normalized ratios for only those delegates who voted or for which we can compute votes recursively,
we solve $D'' \boldsymbol{V} = \boldsymbol{v}$ for $\boldsymbol{V}$:
\begin{displaymath}
\mathbf{V} = \left[ \begin{array}{c}
0.70 \\
0.54 \\
-0.40 \\
0.07 \\
0 \\
\end{array} \right]
\end{displaymath}
If an element of $\boldsymbol{W}$ is equal to $0$, then we could not compute a vote for the corresponding
member and we count it towards the non-voting population.
We just have to make sure that they are not in fact abstentions.
For elements $\boldsymbol{W} = 0$ we check their corresponding elements of $\boldsymbol{A}$ and if they are
non-zero we count them as abstentions, otherwise as non-votes.
\begin{itemize}
\item Number of directly voting members: $N_v = \left| \{ k: M_k~\mathrm{voted} \} \right|$
\item Number of voting members: $N_V = \left| \{ k: W_k \ne 0 \} \right|$
\item Number of abstentions: $N_A = \left| \{ k: W_k = 0 \land A_k \ne 0 \} \right|$
\item Number of non-voting members: $\left| \{ k: W_k = 0 \land A_k = 0 \} \right|$
\end{itemize}
The result (average of scores) without delegation is:
\begin{displaymath}
\overline{v} = \frac{\sum_{M_k~\mathrm{voted}} v_k}{N_v} = 0.15
\end{displaymath}
With delegation:
\begin{displaymath}
\overline{V} = \frac{\sum_{W_k \ne 0} V_k}{N_V} = 0.23
\end{displaymath}
In our example, delegation slightly pushes decision in favor.
We pass computed votes $V$ and number of abstentions $N_A$ into computation of dynamic quorum to determine
a quorum and credibility, in the same manner as if members voted themselves.
%\todo[inline]{Do we want really to compute quorum using delegation, or should quorum be computed
%using direct votes only?}
% In general, there are various ways to use this delegation scheme.
To whom to delegate could be done for each vote separately, or decisions could be categorized into various
categories and then delegations for that category would be used.
But for simplicity, PeerMind currently supports only defining delegates separately from a decision making process,
and those delegates are then in effect for all votes where a member does not vote themselves.
A member is invited to define initial delegations at a registration time, and can change them later on at will,
but independently from a particular decision being made.
%\subsection{Three step process}
%
%\subsection{Real-time feedback}
%
%
%% Real-time communication in general.
%
%\subsection{Integration with offline meetings}
%
%Decoupling the information presentation and voting processes from the debating process in the full decision-making
%pipeline (with the idea being that debating is best done in person, and presenting information/voting is best done online).
%
%\section{Evaluation}
%
%\todo[inline]{Count number of decision being made before using PeerMind, and number of them this semester. How many people participated in voting?}
%
%\subsection{Design}
%
%User study/evaluation design.
%To create a controlled evaluation of our solutions, to not depend on general usage of our system among communities,
%we can evaluate the design with the following user study:
%\begin{enumerate}
%\item we find a tight community of around 100 people willing to participate in the user study
%\item they should know each other well (to know how to delegate)
%\item we offer them to pay some Amazon credits or something for participation
%\item every member of the community should define delegations
%\item we ask them to split into two groups, group A and group B
%\item group A (target size is around 20% of the community) will meet together or online and discuss various topics through our system
%\item discussed topics some can be completely random, to get people to be familiar with they system, and also have some
%easy topics to decide on, like, what ``should be the color of the sky if we could change it'', and some topics which are relevant to the community
%\item those discussions would be just for evaluation, but community can use the results in any way they find useful
%\item after this discussions and decisions were done we ask everyone from group B to evaluate the results, we present them with two results (blinded, them not knowing which was made in which way)
%\begin{itemize}
%\item results which would be obtained using traditional methods (majority voting without any our improvements)
%\item our results using our system
%\end{itemize}
%\item we ask them to evaluate which one (or both, or none) of decisions they agree with
%\item prediction is that members who have not participated in the decision making process will
%find decisions made through our system more often agreeable
%\item hypothesis here is that what a decision making system is trying to achieve is to find a decision most of the
%whole community can agree with, or like it, even when not everyone participates and not all information is available
%on their positions on a topic
%\end{enumerate}
%
%One additional part of the experimental delegation study:
%
%Compute statistical quorum with and without delegations.
%This semester, do not actually allow delegation to be used for passing statistical quorum, but collect data so that
%we can see how much earlier delegation reached quorum before official statistical quorum.
%(Only count how much earlier at the point where delegation passed quorum and never went below thereafter, thus
%showing the point where the decision truly was clear.)
%
%Evaluation of statistical quorum (given that we don't officially decide by including delegation this semester):
%From email: ``Do an internal Cloyne comparison that is more mathematical, showing how many agenda items were decided
%using fewer actual votes than old 33\% quorum, as a result of statistical quorum.
%This could be measured by average \# votes needed to pass statistical quorum vs. \% of those items that get
%formally passed at council via consent agenda.
%(If it's 100\%, then you can say that we saved X\% of votes on
%average by using our online voting).
%Then you could also show that some items needed more than 33\% of votes, implying that a hard-line 33\% is also bad.''
%
%Subjective evaluation of entire platform: Council Surveys comparing past two semesters to this semester for other
%houses vs. Cloyne.
%``use the previous 2 semesters' worth of council surveys as control, and a council survey for
%Cloyne at the end of this semester as results.
%These results would speak to those specific subjective questions
%and would be one useful thing to look at.''
%
% REFERENCES FORMAT
% References must be the same font size as other body text.
\bibliographystyle{sigchi}
\bibliography{refs}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End: