RFDT Solver and WiTwin Simulator are undergoing internal testing as we prepare for public release. The functions are limited. Sign up to receive updates.

Hyperparameters

Parameter management for optimization and automatic differentiation

Overview#

The Hyperparameters panel provides a centralized interface for managing parameters used in optimization workflows. It supports automatic differentiation marking, allowing parameters to be optimized through gradient-based methods.

Panel Location#

The Hyperparameters panel appears as a left sidebar in the Node Editor. It can be toggled on/off from the Node Editor toolbar.

Parameter Types#

TypeDescriptionExample
FloatSingle floating point value0.001, 1.5
Vector22D vector[0.0, 1.0]
Vector33D vector[0.0, 1.0, 2.0]
Vector44D vector[0.0, 1.0, 2.0, 1.0]
ColorRGBA color[1.0, 0.0, 0.0, 1.0]
BoolBoolean valuetrue, false

Adding Parameters#

  1. Click [+ Add Parameter] button
  2. Select parameter type from dropdown
  3. Enter parameter name
  4. Set initial value
  5. Toggle differentiable if needed (∂ button)

Differentiable Toggle#

The button marks a parameter as differentiable:

  • Enabled (blue): Parameter will be included in gradient computation
  • Disabled (gray): Parameter is treated as constant

When a parameter is marked differentiable:

  • Blue dashed animated border on the parameter
  • Blue dashed animated edges in Node Editor
  • Animation flows backward (indicating gradient direction)

Using Parameters in Node Editor#

Drag to Canvas#

Drag a parameter from the panel onto the Node Editor canvas:

  1. Parameter node appears at drop location
  2. Output port shows the parameter value
  3. Connect to other nodes for computation

Node Connection Example#

┌─────────────────┐
│ learning_rate   │
│    Float: 0.001 │──→ [Multiply] ──→ [Update]
└─────────────────┘

Editing Parameters#

Inline Editing#

  • Double-click name to rename
  • Click value to edit
  • Press Enter to confirm, Escape to cancel

Deleting Parameters#

  • Right-click → Delete
  • Or select and press Delete key
  • Connected nodes are updated automatically

Sync Behavior#

ActionSync Timing
Value change300ms debounce
Name changeImmediate
Differentiable toggleImmediate
Add/DeleteImmediate

Port Colors#

Parameter nodes follow the standard port color scheme:

TypeColor
FloatLight gray
Vector2Green
Vector3Yellow
Vector4Pink
BoolPurple
ColorGradient

Example: Optimization Setup#

Scene Optimization#

Hyperparameters:
├── tx_position (Vec3) [∂]  → Transmitter position
├── tx_power (Float) [∂]    → Transmitter power
├── frequency (Float) [ ]   → Fixed frequency
└── target_snr (Float) [ ]  → Target SNR (constant)
 
Node Graph:
tx_position → [Transmitter] → [Channel] → [SNR] → [Loss]
tx_power ──────────┘                              ↑
target_snr ──────────────────────────────────────┘

Material Optimization#

Hyperparameters:
├── roughness (Float) [∂]
├── metalness (Float) [∂]
└── color (Color) [∂]
 
Connect to Material component for real-time preview

Integration with Backend#

Parameters are synced with the backend for optimization:

# Backend receives parameter values and differentiable flags
# Gradient-based optimization can use marked parameters
 
# Parameters marked with ∂ are automatically tracked
# During optimization, gradients flow through connected nodes
Hyperparameters | witwin