Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Interpretable Candidate–Vacancy Matching

An interpretable multicriteria model for ranking candidate–vacancy pairs while keeping the requirements and preferences of both sides explicit.

Read the original paper (Russian)

The paper was written by Ivan Kochergin and Nikita Zhdanovich under the supervision of Sergey Kochergin, PhD, in 2026. Its original title is Интерпретируемая многокритериальная модель сопоставления кандидата и вакансии.

Core idea

The model separates matching into three parts:

  1. Hard constraints — reject a pair if either side's mandatory requirements are not met.
  2. Employer-side mismatch — measure how far the candidate is from the vacancy's desirable requirements.
  3. Applicant-side mismatch — measure how far the vacancy's offer is from the candidate's preferences.

For a feasible pair ((c,v)), the score is

$$\mathrm{score}(c,v) = \exp\left(-\beta_E d_E(v \to c)-\beta_A d_A(c \to v)\right)$$

If the pair violates a hard constraint, its score is zero. The two directed mismatch terms remain separate, so the result can be decomposed into the employer-side and applicant-side penalties rather than treated as an opaque ranking.

Repository contents

paper.pdf                         original three-page paper in Russian
model/formulation.md              English mathematical formulation and scope
src/interpretable_matching/       reference implementation of the scoring layer
examples/demo.py                  synthetic, non-empirical example
tests/test_model.py               unit tests for the model's invariants
CITATION.cff                      citation metadata

Reference implementation

The implementation encodes only the mathematical scoring layer specified in the paper. It expects interpretable partial mismatch criteria in ([0,1]), normalized non-negative weights, two positive sensitivity coefficients, and a hard-constraint decision.

Run the synthetic example:

PYTHONPATH=src python examples/demo.py

Run the tests:

PYTHONPATH=src python -m unittest discover -s tests -v

The example data are deliberately synthetic. They demonstrate how the score decomposes; they are not evidence of predictive performance.

Interpretation

For a feasible pair, the implementation reports:

  • (d_E): weighted employer-side mismatch;
  • (d_A): weighted applicant-side mismatch;
  • (\beta_E d_E) and (\beta_A d_A): each side's contribution to the total penalty;
  • the final score in ((0,1]).

A score of 1 represents zero measured mismatch. Increasing either directed mismatch decreases the score monotonically. A zero score means that at least one mandatory constraint failed; it is not produced by a large soft mismatch.

Calibration proposed in the paper

The paper proposes estimating criterion weights and sensitivity coefficients from labelled employer decisions and applicant responses. It gives a logistic model for employer decisions as one possible calibration route. When applicant-response observations are unavailable, the applicant-side component may instead be set using expert judgement.

No such calibration or empirical benchmark is reported in the paper or this repository.

Scope and limitations

  • This is a theoretical, interpretable ranking formulation, not a production recruitment system.
  • The paper does not report a fitted model, benchmark comparison, deployment, or human-subject evaluation.
  • Domain-specific feature extraction and the definitions of the partial criteria are intentionally left open.
  • The score is only as reliable as the selected features, weights, hard constraints, and underlying data.
  • Real hiring use would require privacy controls, bias and fairness audits, legal review, monitoring, and human oversight.
  • The reference code was added to make the scoring rule executable; it should not be read as additional experimental evidence.

Authors

  • Ivan Kochergin
  • Nikita Zhdanovich

Scientific advisor: Sergey Kochergin, PhD.

Citation

Machine-readable citation metadata are available in CITATION.cff.

About

Reference implementation of an interpretable two-sided multicriteria model for candidate-vacancy matching

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages