BadApple: Simulation of Imitation by Bureaucrats who are very poor...

Description Usage Arguments Details Value Note Author(s) References Examples

View source: R/BadApple.R

Description

Builds off of the R version of ImitSim, with the eventual intention to allow for some fraction of the bureaucrats to be poor performers. These poor performers can be specified by preferences, responses, observability (to one another or to supervisor), and by sanctioning. Can allow for memory (back one iteration) and replacement (with control over pool).

Usage

1
2
3
4
5
6
7
BadApple(Replications, NumSaboteurs=3, NumBurs=10, MaxIter=10, supervision="Relative",
posprefs=FALSE, omniscient=FALSE, Memory=FALSE, Dismissal=-99,
Tolerance=-99, Std=-99, Punishment=-99, SupObsParms=c(-99,-99), ResponseParms=c(-99,-99),
PrefParms=c(-99,-99), BurObsParms=c(-99,-99), SabSupObsParms=c(-99,-99),
SabPunishment=-99, SabResponseParms=c(-99,-99), SabPrefParms=c(-99,-99),
SabBurObsParms=c(-99,-99), ReplacementPrefParms=c(-99,-99),
ReplacementResponseParms=c(-99,-99), quiet=FALSE, debug=FALSE)

Arguments

Replications

Number (integer) of replications of each run.

NumSaboteurs

Number (integer) of poor performer (NumSaboteurs < NumBur), default=3.

NumBurs

Number (integer) of Bureaucrats.

MaxIter

Number (integer) of iterations for each replication to run.

supervision

"Relative" (default) for supervisor to identify deviants based on low-end deviations from responses by other bureaucrats, "Fixed" for the supervisor to identify deviants based on a floor of minimal performance.

posprefs

Logical, FALSE (default) if the preferences of the bureaucrats are not constrained to be positive. TRUE if the preferences of the bureacrats must be positive.

omniscient

Logical, FALSE (default) if the supervisor cannot see everyone, TRUE if she can.

Memory

Logical, FALSE (default) if the bureaucrat does not adapt behavior conditional on improvement from previous iteration

Dismissal

Number (float) that sets when the bureaucrat is dismissed, and replaced with a new bureaucrat (from what pool?)

Tolerance

Number (float) of standard deviations away from mean that the supervisor will regard as being deviant. Only makes sense if the "supervision is "Relative".

Std

Number (float) in range (-1,1) for supervisor to regard as the floor for performance. Only makes sense if the supervision is "Fixed".

Punishment

Number (float) subtracted from each deviant bureaucrat.

SabPunishment

Number (float) subtracted from each deviant saboteur (known as being among the first [1,NumSaboteurs] bureaucrats)

SupObsParms

Vector (mean,sd) for the observability of the bureaucrats by the supervisor. Can be redunddant with omniscient, which sets all bureaucrats as visiible (i.e., equivalent to SupObsPamrs=c(1,0)

SabSupObsParms

Vector (mean, sd) for the observability of the saboteurs by the supervisor.

PrefParms

Vector (mean,sd) for the preferences of the bureaucrat.

SabPrefParms

Vector (mean, sd) for the preferences of the saboteurs

ResponseParms

Vector (mean,sd) for the responses of the bureaucrats.

SabResponseParms

Vector (mean,sd) for the responses of the saboteurs.

BurObsParms

Vector (mean,sd) for the observability of each bureaucrat to one another.

SabBurObsParms

Vector (mean,sd) for the observability of the saboteurs (of everyone. Used to set observability of the saboteurs of the group and create isolation of the netwwork.)

ReplacementPrefParms

Vector (mean, sd) for the preferences of the replacements.

ReplacementResponseParms

Vector (mean, sd) for the responses of the replacements.

debug

If TRUE, prints debugging information. Default is FALSE.

quiet

If TRUE, prints no startup information (but will print debugging information, if requested). Default is FALSE.

Details

This might be the place for text about the way the function will work.

Value

ExecSummary

Returns a (tidy-ready) dataframe that contains: Replication, Iteration, SupUtilMean, SupUtilSD, PrefMean, PrefSD, ResponseMean, ResponseSD, SupObsMean, SupObsSD, BurObsMean, BurObsSD, Tolerance (or Std), Punishment, Connectivity, FinalResponseMean, FinalResponseSD, BurUtilMean, BurUtilSD

version

1.1b3

NumBurs

Number of bureaucrats (default=10)

NumSaboteurs

Number of saboteurs. No default, and required.

MaxIter

Number of iterations per replication (default=10)

supervision

The mode of supervision ("Relative", "Fixed")

posprefs

Are the preferences constrained to be positive?

omniscient

Is the supervisor omniscient? (I.e., can see performance of all her subordinates?)

Memory

Does the bureaucrat retain memory of previous behavior and success? (FALSE (default), TRUE)

Dismissal

What is the threshold of behavior that leads to a dismissal of the bureaucrat?

Performance

Matrix of performance of each bureaucrat in each iteration of every replication, (Replications*MaxIter*Numbers) x (replication, iteration, (vector of responses)))

ObstyRecord

Matrix of observability for each replication, (MaxIter*Numburs) x Numburss)

SeenRecord

Matrix of observability of each bureaucrat by supervisor in each iteration of every replication, (Replication*MaxIter*NumBurs) x (replication, iteration, (vector of seen bureaucrats))

Note

Makes use of the igraph library. You might need to have it installed.

Author(s)

John Brehm

References

Brehm, John and Scott Gates. 1997. Working, Shirking, and Sabotage. Ann Arbor, MI

Examples

1
foo <- BadApple(100, NumSaboteurs=3)

jjbrehm/BadApple documentation built on Dec. 27, 2020, 3:30 a.m.