50% off | Unlimited Data & AI Learning

Last chance! 50% off unlimited learning

Sale ends in


TUGLab (version 0.0.1)

convexcheck: Convex check

Description

This function checks if the given game is convex.

Usage

convexcheck(v, binary = FALSE, instance = FALSE)

Value

TRUE if the game is convex, FALSE otherwise. If instance=TRUE and the game is not convex, the function also returns the positions (binary order positions if binary=TRUE; lexicographic order positions otherwise) of a pair of coalitions violating the Zumsteg convexity characterization.

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.

instance

A logical value. By default, instance=FALSE.

Details

A game vGN is convex if v(ST)+v(ST)v(S)+v(T) for all S,T2N. Zumsteg, S. (1995) shows that v is convex if v(Sij)+v(S)v(Si)+v(Sj) for all S2N and i,jNS such that ij.

A game vGN is concave if v is convex.

References

Zumsteg, S. (1995). Non-cooperative aspects of cooperative game theory and related computational problems. PhD thesis, ETH Zurich.

See Also

strategicallyequivalentcheck, superadditivecheck

Examples

Run this code
v1 <- c(5, 2, 2, 1, 8, 8, 6, 4, 3, 3, 12, 10, 10, 6, 14)
convexcheck(v1)
v2 <- c(0, 0, 0, 2, 2, 1, 3)
convexcheck(v2, binary = FALSE, instance = TRUE)

# How to check if a game is concave:
v.conc <- c(4, 3, 3, 2, 6, 6, 5, 5, 4, 4, 7, 6, 6, 6, 7) # concave game
convexcheck(-v.conc)

Run the code above in your browser using DataLab