50% off | Unlimited Data & AI Learning

Last chance! 50% off unlimited learning

Sale ends in


TUGLab (version 0.0.1)

corecentervalue: Core-center

Description

Given a game, this function computes its core center.

Usage

corecentervalue(v, binary = FALSE, tol = 1e-12)

Value

The core-center, as a vector.

Arguments

v

A characteristic function, as a vector.

binary

A logical value. By default, binary=FALSE. Should be set to TRUE if v is introduced in binary order instead of lexicographic order.

tol

A tolerance parameter, as a non-negative number. By default, tol=1e-12.

Details

The core of a game vGN is the set of all its stable imputations: C(v)={xRn:x(N)=v(N),x(S)v(S) S2N}, where x(S)=iSxi. A game is said to be balanced if its core is not empty.

The core-center of a balanced game v, CC(v), is defined as the expectation of the uniform distribution over C(v), and thus can be interpreted as the centroid or center of gravity of C(v). Let μ be the (n1)-dimensional Lebesgue measure and let V(C)=μ(C(v)) be the volume (measure) of the core. If V(C)>0, then, for each iN, CCi(v)=1V(C)C(v)xidμ.

References

Gonzalez-Díaz, J. & Sánchez-Rodríguez, E. (2007). A natural selection from the core of a TU game: the core-center. International Journal of Game Theory, 36(1), 27-46.

See Also

balancedcheck, corecenterhitrun, coredimension, corevertices, corevertices234

Examples

Run this code
v1 <- claimsgame(E=8,d=c(3,5,6))
corecentervalue(v1)
plotcoreset(v1,solutions="corecenter")

v2 <- c(0,0,0,0,0,0,0,0,1,4,1,3,6,8,10)
corecentervalue(v2)
plotcoreset(v2,solutions="corecenter")

# What if the game is not full-dimensional because of a dummy player?
v3 <- c(440,0,0,0,440,440,440,15,14,7,455,454,447,60,500)
dummynull(v3) # player 1 is a dummy in v3, so the core is degenerate
# For coredimension to detect that, tolerance has to be appropriate:
coredimension(v=v3,tol=100*.Machine$double.eps) # tolerance too small
coredimension(v=v3) # default tolerance, 1e-12, big enough

# Now how to compute the corecenter?
# When given a degenerate game, corecentervalue computes an approximation:
( cc.approx <- corecentervalue(v=v3) ) # approximate core-center
# However, knowing that player 1 is a dummy and that the core-center assigns
# dummies their individual worth...
v3.without1 <- subgame(v=v3,S=14) # subgame without player 1
( cc.exact <- c(v3[1],corecentervalue(v3.without1)) ) # "exact" core-center

# Plotting both results:
plotcoreset(v3,allocations=rbind(cc.approx,cc.exact),projected=TRUE)

Run the code above in your browser using DataLab