Skip to content
affective-taxis logo

Affective Taxis

affective-taxis

Implement affective valence as directional derivative of interoceptive energy landscapes for AI alignment. Use when building alignment-aware RL agents, validating GF(3) conservation in reward signals, training Langevin-based policies, or analyzing fold-change detection signals in POMDP environments.

plurigrid/asi0installs67stars

SKILL.md

Full skill instructions

affective-taxis

Models affective valence as the directional derivative of an interoceptive energy landscape (Sennesh & Ramstead 2025), providing alignment validation through structural conservation laws.

Use When

  • Building alignment-aware RL agents that respect structural invariants
  • Validating GF(3) conservation across reward trajectories
  • Training Langevin-based policies as an alternative to PPO (which breaks conservation)
  • Implementing fold-change detection reward signals in POMDP environments
  • Bridging affective neuroscience models with RL training loops

Workflow

  1. Define energy landscape: set attractant/​repellent positions, sigmas, and amplitudes
  2. Compute fold-change detection signal: r(t) = nabla_z log gamma(z; beta) . v
  3. Run Langevin dynamics: dz/​dt = nabla_z log gamma(z; beta) + sqrt(2) dW(t)
  4. Classify trit per timestep: positive derivative → +1, orthogonal → 0, negative → -1
  5. Verify conservation: sum(trits) === 0 (mod 3) across trajectory

Core Equations

EquationFormulaMeaning
Fold-change detectionr(t) = nabla_z log gamma(z; beta) . vReward = directional derivative of log-concentration
Langevin dynamicsdz/​dt = nabla_z log gamma(z; beta) + sqrt(2) dW(t)Navigation = gradient ascent + stochastic exploration
Trit classificationsign(r(t)) mapped to {-1, 0, +1}GF(3) valence of each step

Implementation Paths

PathFileLOCLanguageDomain
0affective-taxis.jl1700JuliaCore theory (16 sections)
1affective_taxis_env.py576PythonGymnasium POMDP
2bridge_9_affective_taxis.py1172PythonBCI bridge
3taxis_landscape_acset.jl1453JuliaACSet sheaf
4taxis_persistent_homology.py1500PythonRipser topology
5taxis_clearing.py1419PythonMarket clearing
6aella/​taxis.el400ElispCircuit taxis
7taxis_functorial_persistence.jl500JuliaFunctor bridge
RLtrain_aligned_agent.py500PythonPPO vs Langevin

RL Alignment Results (dt=0.1)

PolicyGradAlignMeanConcGF3 BalanceMean Reward
Oracle+0.4150.226no+0.503
PPO+0.2390.526no-0.041
Langevin-0.0840.448YES+0.089
Random-0.4690.032no-0.958

Key finding: PPO has higher gradient alignment but breaks GF(3) conservation. Langevin is the ONLY policy that conserves the tripartite structure. This is Goodhart's Law: optimizing the reward metric doesn't preserve structural invariants.

Concomitant Skills

SkillTritInterface
langevin-dynamics0SDE analysis of taxis navigation
fokker-planck-analyzer+1Stationary distribution of energy landscape
modelica0Circuit/​DAE formulation of taxis landscape
open-games+1Multi-agent clearing = compositional game
persistent-homology-1Topological taxis signal
gf3-tripartite0Conservation law verification

Modelica Formulation

The affective-taxis POMDP maps naturally to Modelica's acausal equation framework:

model AffectiveTaxis
  // State variables
  Real z[2](start={0,0}) "Position in chemical landscape";
  Real v[2](start={0,0}) "Velocity";
  Real beta(start=1.0)   "Internal allostatic parameter";

  // Landscape: gamma(z) = sum A_i * exp(-|z - mu_i|^2 / (2*sigma_i^2))
  parameter Real mu[2,2] = {{3,3},{-3,-3}};
  parameter Real sigma[2] = {1.5, 1.5};
  parameter Real A[2] = {1.0, -0.4};

  // Langevin parameters
  parameter Real kappa = 0.5 "Concentration-to-setpoint gain";
  parameter Real tau = 1.0   "Relaxation timescale";
  parameter Real noise_amp = 0.1 "Langevin noise amplitude";

  // Derived quantities
  Real gamma "Concentration at z";
  Real grad_log_gamma[2] "Gradient of log concentration";
  Real fcd "Fold-change detection signal (= reward)";
  Integer trit "GF(3) classification of fcd";
equation
  gamma = sum(A[i] * exp(-sum((z[j]-mu[i,j])^2 for j in 1:2) / (2*sigma[i]^2)) for i in 1:2);
  // ... (see affective_taxis.mo for full implementation)
end AffectiveTaxis;

See affective_taxis.mo for the complete Modelica model.

Quick Start

Julia (core theory)

julia affective-taxis.jl

Python (RL training)

env -u PYTHONPATH /​path/​to/​.venv/​bin/​python3 train_aligned_agent.py

Modelica (circuit analogy)

# Requires OpenModelica or Wolfram SystemModeler
omc affective_taxis.mo

Key References

  • Sennesh & Ramstead 2025: arXiv:2505.17024
  • Karin & Alon 2022: PLoS Comp Bio (dopamine reward-taxis)
  • Karin & Alon 2021: iScience (gradient tempering)
  • Shenhav 2024: Trends Cogn Sci (affective gradient hypothesis)
  • Ma et al 2015: NeurIPS (Langevin = Bayesian inference)

More skills from plurigrid

cargo logo
plurigrid/asi

cargo

Rust package manager (36 subcommands).

67 0
View

Translate Figma nodes into production-ready code with 1:1 visual fidelity using the Figma MCP workflow (design context, screenshots, assets, and project-convention translation). Trigger when the user provides Figma URLs or node IDs, or asks to implement designs or components that must match Figma...

67 0
View

**Status**: 🌳 Production Ready (upstream in StringZilla v3+) **Type**: High-Performance String Operations / SIMD-Accelerated Text Processing **Principle**: Zero-copy views, SIMD/SWAR acceleration, deterministic hashing **Frame**: Cross-language interoperability (C, C++, Python, Rust, Go, Swift, ...

67 0
View
conformal-ga logo
plurigrid/asi

conformal-ga

Conformal Geometric Algebra (CGA) for circles, spheres, and Möbius transformations

67 0
View

Verifies code implements exactly what documentation specifies for blockchain audits. Use when comparing code against whitepapers, finding gaps between specs and implementation, or performing compliance checks for protocol implementations.

67 0
View
zig-systems logo
plurigrid/asi

zig-systems

Systems programming and performance optimization using Zig. Provides low-level abstractions, memory-safe compiled code, and performance benchmarking. Use for system-level operations, optimization, and interoperability with C/POSIX APIs.

67 0
View
soliton-detection logo
plurigrid/asi

soliton-detection

Topological soliton detection and agency bridge with anyonic fusion algebra for concept composition

67 0
View
paypal-mcp logo
plurigrid/asi

paypal-mcp

PayPal MCP server integration for invoices, payments, subscriptions, disputes, and transaction reporting via @paypal/mcp.

67 0
View
unison logo
plurigrid/asi

unison

Unison language - content-addressed functional programming with abilities for effects, distributed computing, and structural types. Use for pure functional code, effect management, distributed systems, and refactoring-safe codebases.

67 0
View
tasks-acset logo
plurigrid/asi

tasks-acset

Google Tasks management via TasksACSet. Transforms task operations into GF(3)-typed Interactions, routes to triadic queues, detects saturation for task-zero-as-condensed-state.

67 0
View
c logo
plurigrid/asi

c

World C Skill

67 0
View
syrup logo
plurigrid/asi

syrup

Syrup binary serialization for OCapN/CapTP wire format. Canonical encoding for capability messages.

67 0
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View