README
This commit is contained in:
parent
225b01f256
commit
7b2ea4a351
|
@ -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
|
|
@ -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
|
|
@ -1,7 +1,7 @@
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
from simulation import simulate_days
|
from simulation import simulate_days
|
||||||
|
|
||||||
trust, bread = simulate_days(days=30)
|
trust, bread = simulate_days(days=1825)
|
||||||
|
|
||||||
# Plot results
|
# Plot results
|
||||||
plt.figure(figsize=(12, 4))
|
plt.figure(figsize=(12, 4))
|
||||||
|
|
|
@ -19,22 +19,22 @@ def simulate_days(days=30):
|
||||||
|
|
||||||
for day in range(days):
|
for day in range(days):
|
||||||
# --- Daily donations ---
|
# --- Daily donations ---
|
||||||
bakery.flour_stock += np.random.randint(2, 10) # ~10kg/day
|
bakery.flour_stock += np.random.randint(2, 100) # ~10kg/day
|
||||||
bakery.energy_stock += np.random.randint(5, 30) # ~30kWh/day
|
bakery.energy_stock += np.random.randint(5, 300) # ~30kWh/day
|
||||||
|
|
||||||
# --- Decentralized production decision ---
|
# --- 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]
|
votes = [member.vote("produce_bread") for member in members]
|
||||||
yes_votes = sum(1 for vote in votes if vote == "yes")
|
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
|
requested_loaves = 100
|
||||||
produced = bakery.produce_bread(requested_loaves)
|
produced = bakery.produce_bread(requested_loaves)
|
||||||
print(f"Day {day}: Produced {produced} loaves")
|
print(f"Day {day}: Produced {produced} loaves")
|
||||||
|
|
||||||
# --- Distribute bread ---
|
# --- Distribute bread ---
|
||||||
daily_distribution = bakery.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
|
"individuals": 100 # 100 individuals
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue