This commit is contained in:
Shrek Requiem 2025-02-03 16:57:25 -05:00
parent 225b01f256
commit 7b2ea4a351
4 changed files with 118 additions and 6 deletions

45
README.md Normal file
View File

@ -0,0 +1,45 @@
# Center for Cybernomics Research (CCR)
## 🌐 About
The Center for Cybernomics Research (CCR) is an interdisciplinary initiative from the AF2C exploring cybernetic systems for post-capitalist economic models. We combine systems theory, decentralized governance, and computational modeling to develop frameworks for resource allocation and organizational structure modelling beyond liberal markets.
Current Focus Areas:
- Anarchist cybernetic systems
- Mutual aid network simulations
- Decentralized decision-making protocols
- Anti-hierarchical resource management
## 📂 Repository Structure
```
CCR/
├── python/ # Python implementations
├── papers/ # Research whitepapers (upcoming)
├── governance/ # Decision-making protocols (upcoming)
└── flake.nix # Nix development environment
```
## 🚀 Getting Started
1. Clone repository:
```bash
Copy
git clone https://github.com/your-org/CCR.git
cd CCR
```
2. Enable flake :
```bash
bash
Copy
nix develop # Enter unified development environment
```
## 🤝 Contributing
We welcome contributions through :
- Code : Implement new simulation modules
- Research : Develop theoretical frameworks
- Design : Create visualization tools
- Documentation : Improve technical specs
See CONTRIBUTING.md (upcoming) for guidelines.
## 📜 License
upcoming

67
python/README.md Normal file
View File

@ -0,0 +1,67 @@
# CCR Python Simulations
## 🥖 Bakery
A computational model of decentralized bread production/distribution commune (type 1) inspired by Project Cybersyn.
Key Features
- Decentralized Voting System with consensus-based production decisions
- Resource Cybernetics (Real-time flour/energy tracking)
- Variable distribution priority
- Community Trust Metrics : Feedback-loop driven scores that influence donations
### ⚙️ Installation
```bash
git clone https://github.com/your-org/CCR.git
cd CCR/python
# Using Nix (recommended):
`nix develop`
# Manual setup:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```
### 🚦 Running the Simulation
```bash
python run.py
# Expected terminal output:
Day 0: Produced 94 loaves (Consensus: 3/4)
Day 2: Distributed 82 loaves
Community trust: 58.3 → 64.1
```
### 📁 Code Structure
```
python/
├── classes.py # Core models (Bakery, Member)
├── simulation.py # Main simulation loop
├── run.py # Visualization script using matplotlib
├── tests/ # Unit tests (upcoming)
└── analysis/ # Data processing notebooks (upcoming)
```
### 🌱 Future Development
-[] Add crisis scenarios (resource shortages)
-[] Implement skill-based task allocation
-[] Connect to real data
-[] Develop web interface
-[] Generalize to other type 1 communes
### 📊 Example Output
|Day | Bread Stock | Trust Score | Production Runs
|----|------------|-------------|-----------------
|0 | 94 | 50.0 | 1
|3 | 132 | 63.4 | 2
|7 | 87 | 71.2 | 1
### 📝 Contributing
1. Fork the repository
2. Create feature branch:
```bash
git checkout -b feature/new-voting-system
```
3. Submit pull request with:
- Code changes
- Updated tests
- Documentation additions

View File

@ -1,7 +1,7 @@
import matplotlib.pyplot as plt
from simulation import simulate_days
trust, bread = simulate_days(days=30)
trust, bread = simulate_days(days=1825)
# Plot results
plt.figure(figsize=(12, 4))

View File

@ -19,22 +19,22 @@ def simulate_days(days=30):
for day in range(days):
# --- Daily donations ---
bakery.flour_stock += np.random.randint(2, 10) # ~10kg/day
bakery.energy_stock += np.random.randint(5, 30) # ~30kWh/day
bakery.flour_stock += np.random.randint(2, 100) # ~10kg/day
bakery.energy_stock += np.random.randint(5, 300) # ~30kWh/day
# --- Decentralized production decision ---
if bakery.flour_stock < 50: # Trigger production proposal
if bakery.flour_stock >= 50: # Trigger production proposal
votes = [member.vote("produce_bread") for member in members]
yes_votes = sum(1 for vote in votes if vote == "yes")
if yes_votes / len(members) >= 1: # Consensus
if yes_votes / len(members) >= 0.75 : # Consensus
requested_loaves = 100
produced = bakery.produce_bread(requested_loaves)
print(f"Day {day}: Produced {produced} loaves")
# --- Distribute bread ---
daily_distribution = bakery.distribute_bread({
"mutual_aid": 50, # 50 groups needing bread
"mutual_aid": 50, # 50 mutual aid groups
"individuals": 100 # 100 individuals
})