Notable changes are listed below.
DictBasedPreference
: A new preference class that can be used to exactly specify the compatibility score for all attribute values. WhileCategoricalPreference
class was able to handle value-compatibility dictionaries,DictBasedPreference
allows setting a default compatibility score for attribute values that are not specified, and its parameters are more intuitive to use with a dictionary.- A "getting started" tutorial in the documentation.
- Missing parameter explanations in the docstrings.
- LLCP2022 dataset ranges for age, height, and BMI for ease of use.
- Added deal-breaker consideration for
RankedAgentMatcher
: It is now possible to consider one-sided or two-sided deal-breakers while making recommendations. - Other minor code and documentation improvements, typo fixes.
- scikit-learn was intended to be dropped from the dependencies. However, due to self-written min-max scaling functions not yielding the exact same results with the one imported from scikit-learn, it was decided to keep scikit-learn.
CategoricalPreference
still has the functionality to handle compatibility dictionaries, but this feature may be deprecated in later versions, as there is now a specific class for dictionaries,DictBasedPreference
.
0.1.0 is the first version published on PyPI.
pyproject.toml
file.
- Renamed the package to "catfish-sim" for brevity and to align with conventions, as PyPI prefers shorter package names.
Strategy
subclassAdaptiveWeightedMinimal
and Optuna dependency: This strategy was written to make the agent adapt its reported preferences based on its past success, but the preliminary test results suggested it was not working as intended.