AxisFuzzy

A Professional Python Framework for Fuzzy Logic Computing


AxisFuzzy provides high-performance, modular, and scalable fuzzy mathematical operations for researchers and engineers. The framework is designed with extensibility and efficiency in mind, enabling seamless fuzzy number computations and advanced fuzzy logic operations.

Quick Start

pip install axisfuzzy
from axisfuzzy import fuzzynum, fuzzyarray

# Create fuzzy numbers with modern factory functions
fn1 = fuzzynum((0.8, 0.2), q=2)  # q-Rung Orthopair Fuzzy Number
fn2 = fuzzynum((0.7, 0.3), q=2)

# Fuzzy operations
result = fn1 + fn2
distance = fn1.distance(fn2)
score = fn1.score  # Score function

print(f"Result: {result}")
print(f"Distance: {distance:.3f}")
print(f"Score: {score:.3f}")
from axisfuzzy import fuzzyarray, fuzzynum
import axisfuzzy.random as ar

# Create fuzzy arrays efficiently
fuzzy_numbers = [
    fuzzynum((0.8, 0.2)),
    fuzzynum((0.6, 0.4)),
    fuzzynum((0.9, 0.1))
]
fs = fuzzyarray(fuzzy_numbers)

# Vectorized operations (10x-100x faster)
mean_result = fs.mean()
distances = fs.distance(fuzzynum((0.5, 0.4)))

# Random generation for simulation
random_array = ar.rand(shape=(1000,))
print(f"Generated {len(random_array)} fuzzy numbers")
from axisfuzzy import fuzzynum
from axisfuzzy.membership import create_mf
from axisfuzzy.fuzzifier import Fuzzifier

# Hesitant fuzzy numbers
hesitant_fn = fuzzynum(
    ([0.5, 0.6, 0.7], [0.2, 0.3]),
    mtype='qrohfn', q=1
)

# Membership functions and fuzzification
gauss_mf, _ = create_mf('gaussmf', sigma=0.15, c=0.5)
fuzzifier = Fuzzifier(mf='gaussmf',
                     mf_params={'sigma': 0.1, 'c': 0.5})

# Convert crisp values to fuzzy
crisp_data = [0.3, 0.6, 0.9]
fuzzy_results = fuzzifier(crisp_data)