Solving the Workflow Satisfiability Problem using General Purpose Solvers
by Gregory Gutin Daniel Karapetyan
Abstract:
The workflow satisfiability problem (WSP) is a well-studied problem in access control seeking allocation of authorised users to every step of the workflow, subject to workflow specification constraints. It was noticed that the number __MATH0__ of steps is typically small compared to the number of users in the real-world instances of WSP; therefore __MATH0__ is considered as the parameter in WSP parametrised complexity research. While WSP in general was shown to be W[1]-hard, WSP restricted to a special case of user-independent (UI) constraints is fixed-parameter tractable (FPT). However, restriction to the UI constraints might be impractical. To efficiently handle non-UI constraints, we introduce the notion of branching factor of a constraint. As long as the branching factors of the constraints are relatively small and the number of non-UI constraints is reasonable, WSP can be solved in FPT time. Extending the results from Karapetyan et al. (2019), we demonstrate that general-purpose solvers are capable of achieving FPT-like performance on WSP with arbitrary constraints when used with appropriate formulations. This enables one to tackle most of practical WSP instances. While important on its own, we hope that this result will also motivate researchers to look for FPT-aware formulations of other FPT problems.
Reference:
Solving the Workflow Satisfiability Problem using General Purpose Solvers (Gregory Gutin Daniel Karapetyan), 2021.
Bibtex Entry:
@Article{DanielKarapetyan2021,
  author   = {Daniel Karapetyan, Gregory Gutin},
  title    = {Solving the Workflow Satisfiability Problem using General Purpose Solvers},
  year     = {2021},
  abstract = {The workflow satisfiability problem (WSP) is a well-studied problem in access control seeking allocation of authorised users to every step of the workflow, subject to workflow specification constraints.  It was noticed that the number $k$ of steps is typically small compared to the number of users in the real-world instances of WSP; therefore $k$ is considered as the parameter in WSP parametrised complexity research.  While WSP in general was shown to be W[1]-hard, WSP restricted to a special case of user-independent (UI) constraints is fixed-parameter tractable (FPT).  However, restriction to the UI constraints might be impractical.

To efficiently handle non-UI constraints, we introduce the notion of branching factor of a constraint.  As long as the branching factors of the constraints are relatively small and the number of non-UI constraints is reasonable, WSP can be solved in FPT time.

Extending the results from Karapetyan et al. (2019), we demonstrate that general-purpose solvers are capable of achieving FPT-like performance on WSP with arbitrary constraints when used with appropriate formulations.  This enables one to tackle most of practical WSP instances.  While important on its own, we hope that this result will also motivate researchers to look for FPT-aware formulations of other FPT problems.},
  arxivid  = {2105.03273},
  comment  = {[<a href="http://doi.org/10.17639/nott.7116">WSP benchmark instances, instance generator, solvers in Python and experimental data</a>]},
}