From 191eb82eb721f0afbf11e9b39701cd0f6cf2a69d Mon Sep 17 00:00:00 2001 From: Paretoman Date: Tue, 1 Aug 2017 11:11:22 -0400 Subject: [PATCH 1/6] added strategy per ballot. added buttons for adjusting the number of strategic voters. --- newer.html | 10 ++++---- play/election9.html | 44 +++++++++++++++++++++++++++++++++++ play/js/Voters.js | 48 ++++++++++++++++++++++++++------------- play/js/main_sandbox.js | 33 ++++++++++++++++++++++++++- play/js/seedrandom.min.js | 1 + 5 files changed, 114 insertions(+), 22 deletions(-) create mode 100644 play/election9.html create mode 100644 play/js/seedrandom.min.js diff --git a/newer.html b/newer.html index 6b081be3..e6713b8b 100644 --- a/newer.html +++ b/newer.html @@ -188,12 +188,12 @@

Strong Strategic Voter -
- -

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+
- +

+ Playing Chicken
+

+
diff --git a/play/election9.html b/play/election9.html new file mode 100644 index 00000000..a136b327 --- /dev/null +++ b/play/election9.html @@ -0,0 +1,44 @@ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/js/Voters.js b/play/js/Voters.js index e82179fc..7005b01e 100644 --- a/play/js/Voters.js +++ b/play/js/Voters.js @@ -19,7 +19,7 @@ function ScoreVoter(model){ return 0; }; - self.getBallot = function(x, y, config){ + self.getBallot = function(x, y, strategy, config){ // Scores for each one! @@ -46,10 +46,10 @@ function ScoreVoter(model){ } } self.model.idlastwinner = "square" - if(config.strategy == "justfirstandlast") { + if(strategy == "justfirstandlast") { scores[maxi] = 1 scores[mini] = 5 - } else if (config.strategy == "normalized") { + } else if (strategy == "normalized") { var fnorm = 1/ (maxdist-mindist); if (1) { var normit = function(d) {return (d-mindist)*fnorm;} @@ -65,8 +65,8 @@ function ScoreVoter(model){ scores[self.model.candidates[i].id] = gs; } } - } else if (config.strategy == "threshold" || config.strategy == "thresholdfrontrunners" || config.strategy == "normfrontrunners") { - if (config.strategy == "threshold") { + } else if (strategy == "threshold" || strategy == "thresholdfrontrunners" || strategy == "normfrontrunners") { + if (strategy == "threshold") { var windex = 0; for(var i=0; if;)h[f]=f++;for(f=0;d>f;f++)h[f]=h[g=s&g+a[f%c]+(b=h[f])],h[g]=b;(e.g=function(a){for(var b,c=0,f=e.i,g=e.j,h=e.S;a--;)b=h[f=s&f+1],c=c*d+h[s&(h[f]=h[g=s&g+b])+(h[g]=b)];return e.i=f,e.j=g,c})(d)}function k(a,b){var c,d=[],e=typeof a;if(b&&"object"==e)for(c in a)try{d.push(k(a[c],b-1))}catch(f){}return d.length?d:"string"==e?a:a+"\0"}function l(a,b){for(var c,d=a+"",e=0;ea;)a=(a+c)*d,b*=d,c=s.g(1);for(;a>=r;)a/=2,b/=2,c>>>=1;return(a+c)/b},o,"global"in f?f.global:this==c)};if(l(c[i](),b),g&&g.exports){g.exports=t;try{o=require("crypto")}catch(u){}}else h&&h.amd&&h(function(){return t})}(this,[],Math,256,6,52,"object"==typeof module&&module,"function"==typeof define&&define,"random"); \ No newline at end of file From ea50301102ed7d42734015e02e6eb9f7b72bcb15 Mon Sep 17 00:00:00 2001 From: Paretoman Date: Tue, 1 Aug 2017 13:56:50 -0400 Subject: [PATCH 2/6] put strategy into a function, to get ready to use it 3 times. also fixed bug with percent voter strategy. --- play/election1.html | 1 + play/election2.html | 1 + play/election3.html | 1 + play/election4.html | 1 + play/election5.html | 1 + play/election6.html | 1 + play/election7.html | 1 + play/election8.html | 1 + play/election9.html | 1 - play/js/Voters.js | 30 ++++++++++++++++++------------ play/js/main_sandbox.js | 10 +++++++--- 11 files changed, 33 insertions(+), 16 deletions(-) diff --git a/play/election1.html b/play/election1.html index 30fb9c14..bc6eb31e 100644 --- a/play/election1.html +++ b/play/election1.html @@ -22,6 +22,7 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/js/Voters.js b/play/js/Voters.js index 474cc846..d9c18cad 100644 --- a/play/js/Voters.js +++ b/play/js/Voters.js @@ -199,31 +199,18 @@ function ThreeVoter(model){ // Scores for each one! var scores = {}; - var mindist = 9999; - var maxdist = -9999; - var mini = null; - var maxi = null; + var dista = []; for(var i=0; i maxdist) { - maxdist = dist; - maxi = c.id - } } - - scores[maxi] = 0 - scores[mini] = 2 - - // Scooooooore - return scores; + self.model.idlastwinner = "square" + scores = dostrategy(dista,scores,0,2,strategy,self.model.idlastwinner,config.frontrunners,self.model.candidates) + return scores }; @@ -281,36 +268,30 @@ function ApprovalVoter(model){ self.approvalRadius = 100; // whatever. self.getBallot = function(x, y, strategy, config){ - - // Anyone close enough. If anyone. - var approved = []; - var mindist = 9999; - var maxdist = -9999; - var mini = null; - var maxi = null; + + // re-use code for scores above, but with different range + // Scores for each one! + var scores = {}; + var dista = []; for(var i=0; i maxdist) { - maxdist = dist; - maxi = approved.length - 1 - } - } - - if(mindist>=self.approvalRadius){ - approved.push(mini); - } - if(maxdist Date: Tue, 1 Aug 2017 18:24:27 -0400 Subject: [PATCH 5/6] added star stragegy leaving room for 1st "starnormfrontrunners". gui improvement for 3 scores. --- newer.html | 78 ++++++++++++++++++++++++------------- play/ballot10.html | 27 +++++++++++++ play/ballot9.html | 27 +++++++++++++ play/election11.html | 49 +++++++++++++++++++++++ play/election12.html | 50 ++++++++++++++++++++++++ play/election13.html | 49 +++++++++++++++++++++++ play/election14.html | 49 +++++++++++++++++++++++ play/img/ballot_range3.png | Bin 0 -> 25461 bytes play/img/ballot_three.png | Bin 0 -> 34476 bytes play/js/Ballot.js | 16 ++++++-- play/js/Voters.js | 12 +++--- sandbox/sandbox.html | 1 + 12 files changed, 323 insertions(+), 35 deletions(-) create mode 100644 play/ballot10.html create mode 100644 play/ballot9.html create mode 100644 play/election11.html create mode 100644 play/election12.html create mode 100644 play/election13.html create mode 100644 play/election14.html create mode 100644 play/img/ballot_range3.png create mode 100644 play/img/ballot_three.png diff --git a/newer.html b/newer.html index 6b77f699..faea6e9c 100644 --- a/newer.html +++ b/newer.html @@ -193,7 +193,7 @@

Strong Strategic Voter Also, here's a score example

- +

@@ -201,7 +201,7 @@

Strong Strategic Voter Playing Chicken

- +

@@ -214,12 +214,20 @@

Strong Strategic Voter -
+
-

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+

+ Playing Chicken with Different Methods
+

+ - +
+
+ +

+ Center Squeeze
+

+
@@ -235,10 +243,10 @@

Star voting

-

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+

Star Strong

+

Keeps a space for the best.

- +
@@ -248,12 +256,12 @@

UNSTRATEGIC BALLOT

And here's the chicken dilemma you saw above:

-
- -

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+
- +

+ Chicken Star
+

+
@@ -267,10 +275,10 @@

3-2-1 voting

-

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+

321 Strategic

+

Approval with an extra level.

- +
@@ -280,12 +288,12 @@

UNSTRATEGIC BALLOT

And here's the chicken dilemma. Note "moderately strategic" doesn't change the result from "normalized". So unlike in star voting, candidates wouldn't have to go negative against their nearby rivals in order to ensure that their voters would at least be moderately strategic and wouldn't just normalize.

-
- -

UNSTRATEGIC BALLOT

-

Judge, don't choose.

+
- +

+ 321 Chicken
+

+
@@ -295,14 +303,32 @@

UNSTRATEGIC BALLOT

Putting it all together, here's a sandbox for you to try out all the different systems and to make your own scenarios:

-
+ + +
+
+

SANDBOX MODE! (link to just this)

+ +
+
+

+ One hope for Sandbox Mode is that readers can debate with me and each other using this tool! + Not just telling me I'm wrong, but showing me I'm wrong. + For example – + + here's a model I made in Sandbox Mode, + showing an interesting argument against Approval & Score Voting. + Granted, this tool is very limited – it doesn't handle strategic voting or imperfect information – + but I think it's a start, and may help improve our Democratic Discourse™ +

+
diff --git a/play/ballot10.html b/play/ballot10.html new file mode 100644 index 00000000..3ef87165 --- /dev/null +++ b/play/ballot10.html @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/ballot9.html b/play/ballot9.html new file mode 100644 index 00000000..3a088fb2 --- /dev/null +++ b/play/ballot9.html @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/election11.html b/play/election11.html new file mode 100644 index 00000000..6db69b9e --- /dev/null +++ b/play/election11.html @@ -0,0 +1,49 @@ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/election12.html b/play/election12.html new file mode 100644 index 00000000..d11c222d --- /dev/null +++ b/play/election12.html @@ -0,0 +1,50 @@ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/election13.html b/play/election13.html new file mode 100644 index 00000000..53750cea --- /dev/null +++ b/play/election13.html @@ -0,0 +1,49 @@ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/election14.html b/play/election14.html new file mode 100644 index 00000000..f04ca1c5 --- /dev/null +++ b/play/election14.html @@ -0,0 +1,49 @@ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/play/img/ballot_range3.png b/play/img/ballot_range3.png new file mode 100644 index 0000000000000000000000000000000000000000..d8d4d83558aa8562b7568b3ffaf9a853bf55ec24 GIT binary patch literal 25461 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 literal 0 HcmV?d00001 diff --git a/play/js/Ballot.js b/play/js/Ballot.js index 8eac4449..610b2a6d 100644 --- a/play/js/Ballot.js +++ b/play/js/Ballot.js @@ -35,14 +35,14 @@ function ThreeBallot(config){ var self = this; config = config || {}; - config.bg = "img/ballot_range.png"; + config.bg = "img/ballot_range3.png"; Ballot.call(self, config); // BOXES! self.boxes = { - square: self.createRate(133, 100, 0), - triangle: self.createRate(133, 143, 3), - hexagon: self.createRate(133, 184, 1) + square: self.createThree(133, 100, 0), + triangle: self.createThree(133, 143, 3), + hexagon: self.createThree(133, 184, 1) }; // On update... @@ -189,5 +189,13 @@ function Ballot(config){ frame:frame }); }; + self.createThree = function(x,y,frame){ + return self.createSprite({ + img: "img/ballot_three.png", + x:x, y:y, + w:225, h:50, + frame:frame + }); + }; } diff --git a/play/js/Voters.js b/play/js/Voters.js index d9c18cad..f4ba9bd9 100644 --- a/play/js/Voters.js +++ b/play/js/Voters.js @@ -34,11 +34,11 @@ function dostrategy(dista,scores,minscore,maxscore,strategy,lastwinner,frontrunn } else { // equivalent loop way of doing things for(var i=0; i=maxfront) ? minscore : gs(d)} } } var scores2 = dista.map(thresholdit); var assignit = function(d,i) { scores[ candidates[i].id ] = d; } scores2.map(assignit) + if (strategy == "starnormfrontrunners") maxscore++; scores[mini] = maxscore; }// otherwise, there is no strategy strategy == "nope" diff --git a/sandbox/sandbox.html b/sandbox/sandbox.html index 3f5f3ce9..7ee0fc62 100644 --- a/sandbox/sandbox.html +++ b/sandbox/sandbox.html @@ -24,6 +24,7 @@ +