π πΈπ»π΄π
Tiles is a framework to create formal configurations of constraints. Its classes are written in Soda and grouped in packages translated to Scala.
This is an example of a pipeline to detect equality.
The meaning is: for all agents (all-agent
), compute how much each agent accumulates (accumulates
),
and ensure that all of them received the same amount (all-equal
).
The notation (a)
denotes a sequence of agents, (m)
denotes a sequence of quantities, and b
denotes a single
Boolean value.
Publications
- Julian Alfredo Mendez, Timotheus Kampik, Andrea Aler Tubella, and Virginia Dignum. A Clearer View on Fairness: Visual and Formal Representation for Comparative Analysis. In Florian Westphal, Einav Peretz-Andersson, Maria Riveiro, Kerstin Bach, and Fredrik Heintz, editors, 14th Scandinavian Conference on Artificial Intelligence, SCAI 2024, pages 112-120. Swedish Artificial Intelligence Society, June 2024. Β DOI:10.3384/ecp208013 Β Abstract Β BibTeX Β PDF Β Implementation
- Julian Alfredo Mendez. Soda: An Object-Oriented Functional Language for Specifying Human-Centered Problems. arXiv Β DOI:10.48550/arXiv.2310.01961 Β Abstract Β BibTeX Β PDF Β Implementation
Examples
Example | Description |
---|---|
Β | Β |
Equality | Determines whether every agent receives the same amount of resources. |
Β | Β |
Equity | Determines whether all agents receive resources according to their needs. |
Β | Β |
Envy-Freeness | Determines whether the distribution is envy-free. |
Β | Β |
Group Fairness | Determines whether the distribution preserves fairness across groups. |
Β | Β |
Individual Fairness | Determines whether the distribution preserves fairness for individuals. |
Β | Β |
Scoring | Measures the correlation between false positives and a protected attribute. |
Β | Β |
Jainβs Index | Measures fairness according to the Jainβs index. |
Β | Β |
Complement of the Gini Index | Measures fairness using the complement of the Gini index. |
Β | Β |
Child Care Subsidy | Represents a collection of possible pipelines for child care subsidies. |
Β | Β |
Executable
This project includes an executable example of Child Care Subsidy pipelines.
The script makeall.sh
creates the file tiles
, which is an executable JAR file that can be
directly executed in Linux. Its input is a YAML configuration file, like the
configuration file provided for the unit tests.