  In recent years, there has been an increasing recognition that when machine
learning (ML) algorithms are used to automate decisions, they may mistreat
individuals or groups, with legal, ethical, or economic implications.
Recommender systems are prominent examples of these machine learning (ML)
systems that aid users in making decisions. The majority of past literature
research on RS fairness treats user and item fairness concerns independently,
ignoring the fact that recommender systems function in a two-sided marketplace.
In this paper, we propose CP-FairRank, an optimization-based re-ranking
algorithm that seamlessly integrates fairness constraints from both the
consumer and producer side in a joint objective framework. The framework is
generalizable and may take into account varied fairness settings based on group
segmentation, recommendation model selection, and domain, which is one of its
key characteristics. For instance, we demonstrate that the system may jointly
increase consumer and producer fairness when (un)protected consumer groups are
defined on the basis of their activity level and main-streamness, while
producer groups are defined according to their popularity level. For empirical
validation, through large-scale on eight datasets and four mainstream
collaborative filtering (CF) recommendation models, we demonstrate that our
proposed strategy is able to improve both consumer and producer fairness
without compromising or very little overall recommendation quality,
demonstrating the role algorithms may play in avoiding data biases.
