1
0

test adding condorcet vote

This commit is contained in:
2022-09-21 12:39:11 +02:00
parent 1e8adfa5d5
commit 0a30f39eb4
349 changed files with 36658 additions and 0 deletions

View File

@ -0,0 +1,40 @@
<?php
declare(strict_types=1);
namespace CondorcetPHP\Condorcet\Benchmarks;
use CondorcetPHP\Condorcet\Election;
use PhpBench\Attributes as Bench;
class PairwiseUpdateOptimizationBench
{
#[Bench\Warmup(1)]
#[Bench\Iterations(2)]
#[Bench\Revs(4)]
public function benchPairwiseOptimization(): void
{
$election = new Election;
$election->parseCandidates('A;B;C;D;E;F;G');
$election->parseVotes('
E > B > C > A > G * 2500
F > B > G > H > A * 2500
H > B > G > E > A * 2500
A = B = C > D > E = F > G * 2500
G = E = C > F > A * 2500
C > D = G > A > B * 2500
');
$election->getWinner();
$vote = $election->addVote('A>B>C');
$election->removeVote($vote);
$vote->setRanking('C>B>A');
$election->getWinner();
}
}