Learn R Programming

BayesMallowsSMC2

BayesMallowsSMC2 provides functions for performing sequential inference in the Bayesian Mallows model using the SMC2 algorithm (Sørensen et al. 2025).

Installation

You can install the development version of BayesMallowsSMC2 from GitHub with:

# install.packages("devtools")
devtools::install_github("osorensen/BayesMallowsSMC2")

Example

Here is a basic example using the included complete_rankings dataset:

library(BayesMallowsSMC2)

# Fit the model with complete rankings
set.seed(123)
mod <- compute_sequentially(
  complete_rankings,
  hyperparameters = set_hyperparameters(n_items = 5),
  smc_options = set_smc_options(n_particles = 100, n_particle_filters = 1)
)

# Show model info
mod
#> BayesMallowsSMC2 Model
#> ======================
#> 
#> Number of particles:      100
#> Number of timepoints:     100
#> Number of items:          5
#> Number of clusters:       1
#> 
#> Log marginal likelihood:  -472.34
#> Final ESS:                63.55
#> Resampling events:        5/100

Posterior Summaries

We can visualize the posterior distributions of the parameters:

# Posterior distribution of alpha (dispersion parameter)
plot(mod, parameter = "alpha")
# Posterior distribution of rho (ranking positions)
plot(mod, parameter = "rho", items = c(1, 2, 3))

References

Sørensen, Øystein, Anja Stein, Waldir Leoncio Netto, and David S. Leslie. 2025. “Sequential Rank and Preference Learning with the Bayesian Mallows Model.” Bayesian Analysis, 1–26. https://doi.org/10.1214/25-BA1564.

Copy Link

Version

Install

install.packages('BayesMallowsSMC2')

Version

0.2.1

License

GPL-3

Maintainer

Oystein Sorensen

Last Published

February 4th, 2026

Functions in BayesMallowsSMC2 (0.2.1)

pairwise_preferences

Simulated Data with Pairwise Preferences
plot.BayesMallowsSMC2

Plot Posterior Distributions for BayesMallowsSMC2 Objects
set_hyperparameters

Set hyperparameters
print.BayesMallowsSMC2

Print Method for BayesMallowsSMC2 Objects
precompute_topological_sorts

Precompute All Topological Sorts
compute_sequentially

Compute the Bayesian Mallows model sequentially
print.summary.BayesMallowsSMC2

Print Method for summary.BayesMallowsSMC2 Objects
trace_plot

Create Trace Plots for BayesMallowsSMC2 Objects
summary.BayesMallowsSMC2

Summary Method for BayesMallowsSMC2 Objects
set_smc_options

Set SMC options
mixtures

Simulated Two-Component Mixtures Data
partial_rankings

Simulated Data with Missing Values
complete_rankings

Simulated Data