Neural network weights for
Hivemind, a UCI engine for
Bughouse chess — the four-player variant played on two
boards, where captured pieces are passed to your partner. The network drives a Monte Carlo Graph Search
(MCGS) that evaluates both boards jointly.
Exported with PyTorch 2.9.1 · opset 18 · IR version 8 · dynamic batch dimension.
1import numpy as np, onnxruntime as ort
2
3sess = ort.InferenceSession("hivemind-it04-crossboard-risev33-loss1.556-p82.0.onnx")
4planes = np.zeros((1, 74, 8, 8), dtype=np.float32) # your encoded position
5value, pi_a, pi_b, wdl, moves_left = sess.run(None, {"data": planes})
1import torch
2
3ck = torch.load("hivemind-it04-crossboard-risev33-loss1.556-p82.0.tar",
4 map_location="cpu", weights_only=False)
5model.load_state_dict(ck["model_state_dict"])
6optimizer.load_state_dict(ck["optimizer_state_dict"])
7# ck["training_iteration"] == 13315, ck["evaluation_step"] == 34, ck["batch_steps"] == 400
The engine builds FP16 TensorRT plans from this ONNX at runtime. Prebuilt .engine files are not
published here — they are specific to a GPU architecture, TensorRT version, and batch size, so they must be
built on the target machine.