Truszczynski, Miroslaw
Project Overview:
Calculating the Sprague-Grundy function of nim played on simplicial complexes
The goal for this research project is to calculate and analyze the Sprague-Grundy function of the game of nim played on certain classes of simplicial complexes. Computationally heavy analysis is performed on the output of the Sprague-Grundy function of these complexes in hopes that it will elicit provable patterns in the function’s values, especially with respect to the winning states of the game tree.
Participants:
Mirosław Truszczynski, PI
Nelson Penn, Grad Student
Software and tools to be used:
Binaries compiled from Rust code (v1.49.0 or current version), with the possibility of extending to use Rust bindings of OpenMPI (Message Passing Interface). I may wish to run these in Docker containers, depending on the requirements / process of using the system.
Some Rust crates that are dependencies:
rand v0.7 as listed on crates.io
chrono v0.4.19 as listed on crates.io
mpi latest stable version from this repo
LCC Project for Fair Division - Dr. Truszczynski & Will Kimmerer
Project Overview
The aim of this research is to randomly (and exhaustively where appropriate) search for instances of the Maximin share (MMS) fair division problem on graphs which do not have a solution. These are incredibly rare, and the search space for most parameters is intractably large. Once found these instances will give us insight into the patterns of unsatisfiable instances, and will help to determine algorithms for approximate MMS. Additionally the proportion of unsatisfiable instances if of interest.
Participants:
Miroslaw Truszczynski, PI
William Kimmerer, Grad Student
Software and Tools to be used
Julia v1.1.0: Primary programming language to be used. In addition some parallelism libraries like Dagger.jl may be used. Potassco Clingo: An Answer Set Programming (ASP) grounder and solver system. The Python API version of this system may be called from Julia at some point in the future using PyCall.jl. Finally, if it makes sense a Julia package called ClusterManager.jl may be used to schedule Slurm jobs, but may be unnecessary/redundant. No other software is anticipated right now, and any additional software will almost certainly consist of Julia packages added using Julia’s integrated package manager.
Publications:
Grants:
Patents:
Center for Computational Sciences