Calculating the Breeding Value of Animals Using the Bitwise Fuzzification Method Based on Fuzzy Sets: Stukalin Fuzzy Index (SFI)
Assessing the breeding value of animals is an important task in modern livestock production. A sound strategy for selecting breeding animals improves herd productivity, strengthens the genetic health of the population, and ultimately increases the economic efficiency of farms. However, traditional methods of breeding-value assessment are constrained by rigid statistical approaches that do not always reflect the complexity and variability of phenotypic characteristics.
In modern livestock production, indices such as TPI (Total Performance Index) and NM$ (Net Merit Dollars) are widely used. These indices are based on pedigree data, phenotypic traits, and the economic significance of characteristics. They make it possible to compare animals within a population, but they also have important limitations: fixed weighting coefficients, hard thresholds, and insufficient flexibility in interpreting animal characteristics.
This paper introduces a new method for analyzing fuzzy data: the Bitwise Fuzzification Method (Fuzzy Bit Encoding). The method converts fuzzy sets into a binary representation, making storage compact, mathematical analysis convenient, and comparison of fuzzified traits fast.
At the same time, the paper proposes a practical application of bitwise fuzzification for evaluating the breeding value of animals. The proposed approach is based on the author’s SFI (Stukalin Fuzzy Index), which relies on bitwise fuzzification. The data forms fuzzy bit vectors made up of fuzzy bit slots. In other words, the proposed method is not only a tool for evaluating breeding value, but also a universal way to process fuzzy data in binary form.
The use of fuzzy bit slots and fuzzy bit vectors makes it possible to:
• analyze phenotypic characteristics flexibly without rigid thresholds;
• represent trait information compactly while supporting efficient storage and transmission;
• simplify animal-to-animal comparison through bit encoding, where each fuzzy bit vector can also be interpreted numerically;
• adapt the index to the needs of a specific farm, lineage, region, breed, or even country, taking local selection specifics and economic priorities into account.
This article also introduces new concepts for fuzzy-set theory: the Fuzzy Bit Slot and the Fuzzy Bit Vector. These concepts formalize the binary encoding of fuzzified data and open up new possibilities for fuzzy-data processing by simplifying comparison and analysis through bit operations.
The proposed index-calculation methodology makes it possible to assess an animal’s breeding value more accurately and adaptively, while keeping the result interpretable and practical for breeding programs.
An additional advantage is that the method can be applied not only to breeding-value assessment, but also to other data-analysis domains where fuzzy sets and binary encoding are needed.
Fuzzy bit slot and fuzzy bit vectors.
For the rest of the method description, the following concepts are introduced: the Fuzzy Bit Slot and the Fuzzy Bit Vector.
A Fuzzy Bit Vector (hereinafter, bit vector) is a bitwise representation of fuzzified data—in particular, fuzzified phenotypic traits. It is an ordered set of fuzzy bit slots in which the position of the slot reflects the significance (weight) of the corresponding trait.
A Fuzzy Bit Slot (hereinafter, bit slot) is the binary representation of one fuzzy-defined trait inside the bit vector. Slot length is determined by the dimensionality of the fuzzy set, which defines the number of possible trait states.
Properties of the fuzzy bit vector and fuzzy bit slots
1) Ordering by trait importance.
Each fuzzy bit slot represents a fuzzy value from a fuzzy set, and its weight is determined by the high-order bits that are set: the higher the bits, the more significant the trait they encode.
Within the fuzzy bit vector, each slot also has positional weight based on its location in the vector. The more senior the slot (the farther left it is), the more important the trait it contains.
This property makes it possible to compare vectors not only by specific values, but also by their priority structure, enabling a more precise and flexible interpretation of the data.
The fuzzy bit profile also makes it efficient to search for and compare groups of traits in various combinations—for example, by using bit masks.
2) Algebraic structure of the profile.
The profile can be described as an element of a Boolean semiring, where union (disjunction) and intersection (conjunction) operations make it possible to work with sets of fuzzified data.
This makes the system mathematically rigorous and the index itself easy to adapt to different alphabets and encoding systems.
A bit vector can be converted into any alphabet, including Latin, Cyrillic, Base32, Base58, as well as numeric and hybrid encodings.
That makes the system universal for data storage, transmission, and analysis.
For SFI, I propose using Base12 built on Latin letters that have graphic analogs in Cyrillic (ABCEHKMOPTXY).
Bitwise fuzzification method
The Bitwise Fuzzification Method (Fuzzy Bit Encoding) is a binary-encoding method for fuzzy data in which fuzzified trait values are converted into fuzzy bit vectors composed of fuzzy bit slots.
This approach makes it possible to work with fuzzy sets in binary form while preserving compactness, efficient comparison, and convenient analysis.
Unlike the classical fuzzification approach, where each element of a fuzzy set is assigned a degree of membership in the interval [0,1], the bitwise fuzzification method applies structured binary encoding after classical fuzzification.
This makes it possible not only to account for variability in characteristics, but also to make the data suitable for mathematical analysis using Boolean operations.
Fuzzification is the process of converting crisp values into fuzzy ones, where numerical data is interpreted as elements of a fuzzy set.
Unlike traditional discrete classifications, fuzzification makes it possible to represent an object as belonging to several categories at once, each with its own degree of membership.
Membership functions are used to describe the degree to which elements belong to fuzzy sets.
A membership function f(A, x) takes values in the interval [0,1], where:
• 0 means that element x does not belong to set A;
• 1 means full membership of x in set A;
• values between 0 and 1 reflect partial membership of x in A.
Formal problem statement
Let F be a fuzzy set consisting of a finite number of elements { A1, A2, ..., An }, where each element Ai has a fuzzy value corresponding to a fuzzified trait.
For the algorithm to work, a priority must also be assigned to each element of F, defining its significance relative to the others.
The bitwise fuzzification method includes the following steps:
1. Data fuzzification.
• Define fuzzy sets F1, F2, ..., Fk to which the source data elements may belong.
• Select the membership function f(A, x) for each set.
• Compute the degree of membership f(A, x) for each value x based on the selected function.
• Form a fuzzified representation in which each element belongs to several sets with different confidence levels.
2. Encoding of fuzzy sets.
• Assign a unique binary code of length m to each fuzzy set Fi.
• Encode traits in bits: each value Ai from F receives a binary code of length m, where m is determined by the size of the fuzzy-value set.
3. Formation of fuzzy bit slots.
• Each fuzzified element is represented as a fuzzy bit slot, where the number of bits allocated defines the storage size of the binary code for the fuzzy value.
• Optionally, in situations where fuzzy values have higher contextual priority, an additional ranking may be introduced inside the fuzzy set itself.
• Within the fuzzy bit vector, bit slots are ordered by priority: more significant traits occupy higher-order bits, while less significant traits occupy lower-order bits.
4. Encoding the fuzzy bit vector using Base formats.
• To reduce storage size and improve ease of transmission, fuzzy bit vectors can be encoded using Base encoding systems such as Base32 or Base58.
• Base-encoded vectors still support Boolean operations because, when decoded back into binary, the full fuzzy bit-vector structure is restored without loss.
As a result, datasets containing fuzzy sets are represented in binary form while preserving information about trait significance and enabling efficient analysis and processing.
Examples of existing index-calculation methods
TPI (Total Performance Index)
TPI is used in dairy cattle breeding and is based on a weighted sum of different animal characteristics.
TPI = (0.46 × PTAmilk) + (0.20 × PTAfat) + (0.14 × PTAprotein) + (0.10 × longevity) + (0.10 × udderHealth)
Formula 1. Calculating the TPI (Total Performance Index)
Where:
• PTA (Predicted Transmitting Ability) is the predicted transmission of a trait calculated from pedigree data.
• PTAmilk (kg) is the predicted milk yield.
• PTAfat (% fat) is the predicted milk fat content.
• PTAprotein (% protein) is the predicted milk protein content.
• Longevity (months) is the productive lifespan of the cow.
• Udder health (points) is an indicator of resistance to mastitis.
Calculation example:
Suppose a cow has PTAmilk = 1000 kg, PTAfat = 3.8%, PTAprotein = 3.2%, longevity = 36 months, and udder health = 7 points.
Then TPI is calculated as follows:
TPI = (0.46 × 1000 kg) + (0.20 × 3.8 %) + (0.14 × 3.2) + (0.10 × 36) + (0.10 × 7) = 465.508
Formula 2. Example TPI calculation
Thus, TPI ≈ 465, which indicates an average breeding value for this cow.
NM$ (Net Merit Dollars)
This is an economic index expressed in dollars that reflects the expected income from an animal over its productive life. It is calculated by the U.S. Council on Dairy Cattle Breeding (CDCB) and predicts the net profit generated by an average cow with a defined set of characteristics over her lifetime.
Calculation formula:
NM$ = (0.40 × milk income) + (0.20 × fertility) + (0.15 × health) + (0.15 × productive longevity) + (0.10 × mastitis resistance)
Formula 3. Calculating the economic index NM$ (Net Merit Dollars)
Where:
• Milk income (USD/year) is average annual milk-sale revenue.
• Fertility (points) reflects reproductive ability.
• Health (points) is a general disease-resistance indicator.
• Productive longevity (years) is the average number of productive years of use.
• Mastitis resistance (points) evaluates the likelihood of mastitis.
Calculation example:
Suppose milk income = 3000 USD, fertility = 5, health = 7, productive longevity = 5 years, and mastitis resistance = 8.
Then NM$ is calculated as follows:
NM$ = (0.40 × 3000) + (0.20 × 5) + (0.15 × 7) + (0.15 × 5) + (0.10 × 8) = 1203.6
Formula 4. Example NM$ calculation
Thus, NM$ ≈ 1,204 USD, indicating high economic value for the animal.
Problems with traditional indices
Their main weakness is dependence on market conditions, which influence the economic significance of parameters.
Despite the widespread use of TPI and NM$, their application has a number of limitations:
• rigid threshold values that do not capture smooth transitions between productivity levels;
• fixed weighting coefficients that do not adapt to changing conditions;
• lack of compact encoding, which complicates identification and transmission of animal data.
Reference ranges of indicators
The following reference ranges are used for correct index calculation:
Dairy breeds (Holstein, Jersey):
• Milk yield: 5,000–15,000 kg
• Fat content: 2.5%–5.5%
• Protein content: 2.8%–4.0%
• Longevity: 24–60 months
• Udder health: 5–10 points
Beef breeds (Aberdeen Angus, Charolais):
• Growth rate: 0.8–2.5 kg/day
• Live weight: 500–1,400 kg
• Fertility: 3–9 points
• Carcass quality: 5–10 points
Both methods use hard-coded weights for each trait, which reduces adaptability and accuracy under changing conditions. This is one of the key problems of traditional indices.
Applying the bitwise fuzzification method to form SFI
In the course of the research, I found that the bitwise fuzzification method solves the problem of building an animal breeding index very effectively, providing a more flexible and adaptive evaluation system than traditional methods. Unlike the rigid threshold values used in classical indices, the proposed approach makes it possible to account for variability in phenotypic traits and adapt the selection system to the specific conditions of a farm, breed, or region.
One of the key advantages of the method is its ability to work with fuzzified data, eliminating the need for exact phenotypic values. Traditional indices evaluate each animal using fixed quantitative indicators, which do not always reflect real biological complexity. For example, the difference between milk yields of 8,000 and 8,100 kg may be insignificant from the perspective of breeding value, yet traditional systems may treat it as meaningful.
The bitwise fuzzification method makes it possible to group animals with similar characteristics into fuzzy sets, which allows their selection potential to be assessed more objectively.
An additional advantage is the ability to expand fuzzy sets dynamically. For each phenotypic trait, a non-fixed number of levels can be defined, making the model easy to adapt to particular tasks. For example, if milk yield is normally divided into three categories (low, medium, high), intermediate levels can be added when needed (very low, above average, and so on), improving assessment precision without complicating the mathematical model.
The proposed method provides not only a compact binary representation of breeding value, but also a high degree of adaptability to changes in the breeding program. Encoding phenotypic traits as fuzzy bit vectors makes comparison and analysis more convenient, while Base encoding enables efficient storage and transmission of the resulting indices.
Building the list of phenotypic traits
To build an animal breeding index using the bitwise fuzzification method, a list of phenotypic traits must first be defined, taking the sex of the animal into account. Each trait receives a priority that determines its significance when the fuzzy bit vector is formed. More important traits occupy higher-order bits, ensuring their priority during comparison.
Definition of fuzzy sets and membership functions *
Each phenotypic trait is associated with a membership function and a fuzzy set of values that makes it possible to evaluate the trait in terms of fuzzy logic. This allows smooth transitions between categories to be taken into account and supports more accurate selection.
Membership functions have different properties, and the choice depends on the nature of the trait. They can be selected empirically depending on the evaluation requirements. The main types include:
• Triangular membership function — used when a core value region needs to be highlighted, where the trait is expressed most strongly.
• Trapezoidal membership function — suitable for hybrid categories where there is a range of values with maximum membership.
• Gaussian membership function — used for smooth transitions between values.
• Sigmoid membership function — used where threshold effects must be modeled.
• Z-shaped and S-shaped membership functions — used for asymmetric characteristics.
Table 1. Examples of cattle phenotypic traits
Transforming phenotypic data into a fuzzy bit index
After defining fuzzy sets and membership functions, the phenotypic data of each animal is fuzzified and converted into binary form. This process includes several stages:
1. Trait fuzzification:
• Each numerical value is mapped to a fuzzy set with a certain degree of membership.
• For example, a cow with a milk yield of 8,000 kg would be assigned to the “Medium” value of that indicator’s fuzzy set according to the membership function.
• Likewise, an animal with a live weight of 700 kg falls into the “Medium” category for live weight.
• Growth rate of 1.5 kg/day, milk protein content of 3.8%, and temperament (2 points) may likewise be assigned to the “Medium” category.
2. Encoding fuzzy sets into bit slots:
• Each fuzzy-set value receives a binary code (for example, “Low” = 00, “Medium” = 01, “High” = 10).
• Thus, after fuzzification, milk yield of 8,000 kg is encoded as 01.
• The animal’s other traits also receive the 01 code because they belong to the “Medium” category.
3. Index packing:
• To account for the animal type, a 2-bit code is added to define the category: 00 = dairy breed, cow; 01 = dairy breed, bull; 10 = beef breed, cow; 11 = beef breed, bull.
• This code is placed into the most significant slot of the bit vector before the trait codes.
4. Forming the fuzzy bit vector:
• The binary codes for all traits are combined into one fuzzy bit vector arranged in order of trait significance.
• For example, for a dairy cow the bit vector may take the form “000101010101”.
5. Converting the bit vector into a compact SFI index:
• The binary vector is encoded using a Base alphabet (ABCEHKMOPTXY) to reduce size and simplify storage.
• As a result, encoding the bit vector “000101010101” yields the final breeding index “AKXA”.
Example animal profile:
• Type: dairy breed, cow → 00
• 305-day milk yield: 8,000 kg → “Medium” 01
• Live weight: 700 kg → “Medium” 01
• Growth rate: 1.5 kg/day → “Medium” 01
• Milk protein content: 3.8% → “Medium” 01
• Temperament: 2 points → “Medium” 01
Combining all these traits into the bit profile “000101010101” and encoding it in the Base alphabet gives the final SFI breeding index: AKXA.
This index is easy to interpret, compact, and suitable for efficient comparison of breeding animals.
Index packing
For ease of storage and practical use, the fuzzy bit vector representing animal breeding value can be encoded into a Base alphabet to shorten its length.
Converting the bit vector into a Base format:
• Bits are grouped and translated into an encoding system such as Base32 or Base58.
• To simplify perception, the index can be represented using the alphabet ABCEHKMOPTXY, which excludes visually similar symbols.
Comparative analysis of different evaluation methods
The bitwise fuzzification method can be used not only to assess the breeding value of animals, but also in other domains where objects with fuzzy traits must be ranked.
Three potential application areas are:
• a student knowledge-profile evaluation index (SFI-Knowledge);
• an employee evaluation index (SFI-Employee);
• an enterprise/region digital-maturity index (SFI-Digital).
Each such index would be built on fuzzified traits grouped into fuzzy bit slots.
Conclusion
The proposed bitwise fuzzification method for evaluating the breeding value of animals represents a new direction in breeding science.
Unlike traditional approaches, it accounts for variability in phenotypic traits without relying on rigid thresholds.
It also simplifies information storage and processing through binary encoding.
The method makes it possible to build the SFI fuzzy bit index, which reflects the animal’s comprehensive breeding value in a convenient binary format.
The use of fuzzy sets and bit encoding minimizes information loss and creates a universal evaluation system that can be adapted to different species, breeds, regions, and breeding programs.
This research did not identify analogous methods that combine fuzzy logic and bit encoding to represent breeding traits.
That confirms the novelty of the proposed method, which can be used as an alternative tool for breeding-value assessment and adapted to related problem domains.