Skip to main content

icmShapleyValues

Shapley fair-share allocation of the prize pool under Harville ICM — exact coalition enumeration for small fields, or Monte Carlo permutations when n is large.

icmShapleyValues(stacks: F64VectorInput, payouts: F64VectorInput, options?: IcmShapleyValuesOptions): IcmShapleyValuesResult

See Float64 ICM input.

Import

const poker = require('poker-calculations');

ESM (Node):

import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const poker = require('poker-calculations');

When to use

Negotiating a tournament chop or comparing fair-share splits to standard Harville ICM $EV — Shapley values attribute marginal contribution across coalitions.

How to use

const poker = require('poker-calculations');

const stacks = [12000, 8000, 5000, 2000];
const payouts = [10000, 6000, 3000, 1000];

const icm = poker.icmExpectedPayouts(stacks, payouts);
const shapley = poker.icmShapleyValues(stacks, payouts, { method: 'exact' });

console.log('Harville ICM:', icm);
console.log('Shapley values:', shapley.values);

For large n, use { method: 'monteCarlo', permutations: 500000 }. See IcmShapleyValuesOptions for returnFormat.

Return type

IcmShapleyValuesResult — optional IcmShapleyValuesOptions.

See also

icmChopNegotiationAnalysis · icmExpectedPayouts · Tournament, runouts, and bots