{
  "_id": "6a21412bcd65a98ecbd2a659",
  "Type": "Package",
  "Package": "ABM",
  "Title": "Agent Based Model Simulation Framework",
  "Version": "0.4.3",
  "Date": "2025-01-25",
  "Authors@R": "person(\"Junling\", \"Ma\", , \"junlingm@uvic.ca\", role = c(\"aut\", \"cre\"))",
  "Description": "A high-performance, flexible and extensible framework to\ndevelop continuous-time agent based models. Its high\nperformance allows it to simulate millions of agents\nefficiently. Agents are defined by their states (arbitrary R\nlists). The events are handled in chronological order. This\navoids the multi-event interaction problem in a time step of\ndiscrete-time simulations, and gives precise outcomes. The\nstates are modified by provided or user-defined events. The\nframework provides a flexible and customizable implementation\nof state transitions (either spontaneous or caused by agent\ninteractions), making the framework suitable to apply to\nepidemiology and ecology, e.g., to model life history stages,\ncompetition and cooperation, and disease and information\nspread. The agent interactions are flexible and extensible. The\nframework provides random mixing and network interactions, and\nsupports multi-level mixing patterns.  It can be easily\nextended to other interactions such as inter- and\nintra-households (or workplaces and schools) by subclassing an\nR6 class. It can be used to study the effect of age-specific,\ngroup-specific, and contact- specific intervention strategies,\nand complex interactions between individual behavior and\npopulation dynamics. This modeling concept can also be used in\nbusiness, economical and political models. As a generic event\nbased framework, it can be applied to many other fields. More\ninformation about the implementation and examples can be found\nat <https://github.com/junlingm/ABM>.",
  "License": "GPL (>= 2)",
  "URL": "https://github.com/junlingm/ABM",
  "BugReports": "https://github.com/junlingm/ABM/issues",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.2.3",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-06-04 09:06:06 UTC",
    "User": "root"
  },
  "Author": "Junling Ma [aut, cre]",
  "Maintainer": "Junling Ma <junlingm@uvic.ca>",
  "Repository": "https://junlingm.r-universe.dev",
  "Date/Publication": "2025-01-26 00:53:14 UTC",
  "RemoteUrl": "https://github.com/junlingm/abm",
  "RemoteRef": "HEAD",
  "RemoteSha": "127bd3a86245ba3568892aecca2450b963356a0a",
  "MD5sum": "425f1ceaddec161c79fe7c309fcf8187",
  "_user": "junlingm",
  "_type": "src",
  "_file": "ABM_0.4.3.tar.gz",
  "_fileid": "9cde89df47e10ff5bfe0c4e3c53d49d86ebaf96de0bbca61e2db4a9a6d04dd11",
  "_filesize": 198381,
  "_sha256": "9cde89df47e10ff5bfe0c4e3c53d49d86ebaf96de0bbca61e2db4a9a6d04dd11",
  "_created": "2026-06-04T09:06:06.000Z",
  "_published": "2026-06-04T09:11:07.791Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 79486094754,
      "time": 169,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7407487265"
    },
    {
      "job": 79486094718,
      "time": 119,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7407469569"
    },
    {
      "job": 79486094706,
      "time": 116,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407469627"
    },
    {
      "job": 79486094729,
      "time": 122,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407470693"
    },
    {
      "job": 79486094707,
      "time": 154,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7407472056"
    },
    {
      "job": 79486094835,
      "time": 224,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7407499874"
    },
    {
      "job": 79486094717,
      "time": 181,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407477507"
    },
    {
      "job": 79486094722,
      "time": 243,
      "config": "macos-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407503549"
    },
    {
      "job": 79484518476,
      "time": 575,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407427433"
    },
    {
      "job": 79486094739,
      "time": 107,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407465066"
    },
    {
      "job": 79486094745,
      "time": 129,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7407472885"
    },
    {
      "job": 79486094696,
      "time": 105,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7407464310"
    },
    {
      "job": 79486094723,
      "time": 168,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7407486263"
    }
  ],
  "_buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/junlingm/abm",
  "_commit": {
    "id": "127bd3a86245ba3568892aecca2450b963356a0a",
    "author": "Junling Ma <junlingm@uvic.ca>",
    "committer": "Junling Ma <junlingm@uvic.ca>",
    "message": "bump the version number\n",
    "time": 1737852794
  },
  "_maintainer": {
    "name": "Junling Ma",
    "email": "junlingm@uvic.ca",
    "login": "junlingm",
    "description": "Mathematical Biology, Mathematical Epidemiology, Mathematical Modeling",
    "uuid": 63282089
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "R6",
      "role": "Imports"
    },
    {
      "package": "Rcpp",
      "role": "Imports"
    }
  ],
  "_owner": "junlingm",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_stars": 33,
  "_contributors": [
    {
      "user": "junlingm",
      "count": 131,
      "uuid": 63282089
    },
    {
      "user": "barracuda156",
      "count": 1,
      "uuid": 92015510
    }
  ],
  "_userbio": {
    "uuid": 63282089,
    "type": "user",
    "name": "Junling Ma",
    "description": "Mathematical Biology, Mathematical Epidemiology, Mathematical Modeling"
  },
  "_downloads": {
    "count": 345,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/ABM"
  },
  "_devurl": "https://github.com/junlingm/abm",
  "_searchresults": 9,
  "_topics": [
    "cpp"
  ],
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/ABM.html",
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/junlingm/abm",
  "_realowner": "junlingm",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.2",
      "date": "2023-03-10"
    },
    {
      "version": "0.3",
      "date": "2023-03-24"
    },
    {
      "version": "0.4.1",
      "date": "2024-03-14"
    },
    {
      "version": "0.4.2",
      "date": "2025-01-17"
    },
    {
      "version": "0.4.3",
      "date": "2025-01-26"
    }
  ],
  "_exports": [
    "addAgent",
    "Agent",
    "clearEvents",
    "Contact",
    "Event",
    "getAgent",
    "getID",
    "getSize",
    "getState",
    "getTime",
    "getWaitingTime",
    "leave",
    "matchState",
    "newAgent",
    "newConfigurationModel",
    "newCounter",
    "newEvent",
    "newExpWaitingTime",
    "newGammaWaitingTime",
    "newPopulation",
    "newRandomMixing",
    "newStateLogger",
    "Population",
    "schedule",
    "setDeathTime",
    "setState",
    "setStates",
    "Simulation",
    "stateMatch",
    "unschedule"
  ],
  "_help": [
    {
      "page": "ABM-package",
      "title": "Agent Based Model Simulation Framework",
      "topics": [
        "ABM-package",
        "ABM"
      ]
    },
    {
      "page": "addAgent",
      "title": "add an agent to a population",
      "topics": [
        "addAgent"
      ]
    },
    {
      "page": "Agent",
      "title": "R6 class that represent an agent",
      "topics": [
        "Agent"
      ]
    },
    {
      "page": "clearEvents",
      "title": "Unschedule all event from an agent",
      "topics": [
        "clearEvents"
      ]
    },
    {
      "page": "Contact",
      "title": "An R6 class that implements a contact pattern in R",
      "topics": [
        "Contact"
      ]
    },
    {
      "page": "Event",
      "title": "R6 class to create and represent an event",
      "topics": [
        "Event"
      ]
    },
    {
      "page": "getAgent",
      "title": "Get the agent at an index in the population",
      "topics": [
        "getAgent"
      ]
    },
    {
      "page": "getID",
      "title": "Get the ID of the agent.",
      "topics": [
        "getID"
      ]
    },
    {
      "page": "getSize",
      "title": "Get the size of a population",
      "topics": [
        "getSize"
      ]
    },
    {
      "page": "getState",
      "title": "Get the state of the agent",
      "topics": [
        "getState"
      ]
    },
    {
      "page": "getTime",
      "title": "returns the event time",
      "topics": [
        "getTime"
      ]
    },
    {
      "page": "getWaitingTime",
      "title": "Generate a waiting time from an WaitingTime object",
      "topics": [
        "getWaitingTime"
      ]
    },
    {
      "page": "leave",
      "title": "leave the population that the agent is in",
      "topics": [
        "leave"
      ]
    },
    {
      "page": "matchState",
      "title": "Check if the state of an agent matches a given state",
      "topics": [
        "matchState"
      ]
    },
    {
      "page": "newAgent",
      "title": "Create an agent with a given state",
      "topics": [
        "newAgent"
      ]
    },
    {
      "page": "newConfigurationModel",
      "title": "Creates a random network using the configuration model",
      "topics": [
        "newConfigurationModel"
      ]
    },
    {
      "page": "newCounter",
      "title": "Create a logger of the Counter class",
      "topics": [
        "newCounter"
      ]
    },
    {
      "page": "newEvent",
      "title": "Creates a new event in R",
      "topics": [
        "newEvent"
      ]
    },
    {
      "page": "newExpWaitingTime",
      "title": "Creates an exponentially distributed waiting time",
      "topics": [
        "newExpWaitingTime"
      ]
    },
    {
      "page": "newGammaWaitingTime",
      "title": "Creates an gamma distributed waiting time",
      "topics": [
        "newGammaWaitingTime"
      ]
    },
    {
      "page": "newPopulation",
      "title": "Create a new population",
      "topics": [
        "newPopulation"
      ]
    },
    {
      "page": "newRandomMixing",
      "title": "Creates a RandomMixing object",
      "topics": [
        "newRandomMixing"
      ]
    },
    {
      "page": "newStateLogger",
      "title": "Create a logger of the StateLogger class",
      "topics": [
        "newStateLogger"
      ]
    },
    {
      "page": "Population",
      "title": "R6 class that represents a population",
      "topics": [
        "Population"
      ]
    },
    {
      "page": "schedule",
      "title": "Schedule (attach) an event to an agent",
      "topics": [
        "schedule"
      ]
    },
    {
      "page": "setDeathTime",
      "title": "set the time of death for an agent",
      "topics": [
        "setDeathTime"
      ]
    },
    {
      "page": "setState",
      "title": "Set the state of the agent",
      "topics": [
        "setState"
      ]
    },
    {
      "page": "setStates",
      "title": "Set the state for each agent in a population",
      "topics": [
        "setStates"
      ]
    },
    {
      "page": "Simulation",
      "title": "R6 class Create and represent a Simulation object",
      "topics": [
        "Simulation"
      ]
    },
    {
      "page": "State",
      "title": "The state of an agent",
      "topics": [
        "State"
      ]
    },
    {
      "page": "stateMatch",
      "title": "Check if two states match",
      "topics": [
        "stateMatch"
      ]
    },
    {
      "page": "unschedule",
      "title": "Unschedule (detach) an event from an agent",
      "topics": [
        "unschedule"
      ]
    }
  ],
  "_readme": "https://github.com/junlingm/abm/raw/HEAD/README.md",
  "_rundeps": [
    "R6",
    "Rcpp"
  ],
  "_sysdeps": [
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_score": 4.217483944213907,
  "_indexed": true,
  "_nocasepkg": "abm",
  "_universes": [
    "junlingm"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.4.3",
      "date": "2026-06-04T09:09:02.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "b6e1572bbafe7995830c88c0a25fdf73e19d9b4336af250c87f414b4ac982e2d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:20.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "d990a63fd2ff8f534098c3f07d26912cd411c19472810801f8cefe5e21798d31",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:15.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "86719800ebaf4ceda7c949be4da5106f4da70072b9968dd6827cbf93e21b8769",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:14.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "6777943b1e12729abdc0eb93fcdae8592c75d74493c08e2d6bb5fc912de79c7e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:30.000Z",
      "arch": "aarch64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "0d763b5f91dd06e2184130394a0e90ecabd187be50f97c03658ad12d2b160c46",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.4.3",
      "date": "2026-06-04T09:09:28.000Z",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "702ec4cba85044ca55cb15f2fbe3811147ef90230f9dd18fe2cbea53ed5ed11d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:36.000Z",
      "arch": "aarch64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "7cfc5cfdda7e5e3e9035d2d21521b2d41ca9b5d7ed0506ad03b27fd05b5a274e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.4.3",
      "date": "2026-06-04T09:09:34.000Z",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "47d330d124e08264b216ffcde385eb4b9e1cdcccd68c964b75b3859dbb10bcf9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:14.000Z",
      "arch": "emscripten",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "32356d26b9a77aa3283b8f331eb4d91c3c5a4db9cec1214e0a0c4751ca20e4a7",
      "status": "success",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.4.3",
      "date": "2026-06-04T09:07:43.000Z",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "a3ed76229f451eff1f7d859ca447607796fce121bdf13c797cfe580d7f0d1e37",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.4.3",
      "date": "2026-06-04T09:07:31.000Z",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "3d335b18b0a16ddd363f19b5d9e6eafe1d3c994962ca010c7455392bc491571f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.4.3",
      "date": "2026-06-04T09:08:02.000Z",
      "arch": "x86_64",
      "commit": "127bd3a86245ba3568892aecca2450b963356a0a",
      "fileid": "22f931d5d9f3104caf8f3a62cbbf4f27ddcebf759c99e63d9c064490f75dd201",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/junlingm/actions/runs/26941674804"
    }
  ]
}