Octree Padding Sphere Cluster Engine for Scalable Simulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current simulation engines face challenges in scalability, workload distribution, and realistic representation of object visibility, particularly when dealing with large numbers of objects of varying sizes, leading to inefficient computation and unequal node loads in cluster environments.

Innovation Solution

A highly scalable cluster computing engine that organizes simulated space using a unique octree structure with padding spheres, distributing objects among nodes to ensure equal computing burdens and efficiently identifying interacting objects by determining overlaps with spheres rather than cubes, allowing for easy scaling and improved visibility representation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single high-end dedicated server is used to provide larger and faster simulations, then simulation speed and capacity are improved, but cost and difficulty of scaling worsen

Engineering Contradiction:
Improvesimulation speedVSAvoidscaling difficulty
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the simulation engine into multiple independent computing nodes that can be distributed across a network. Each node handles a portion of the simulation workload, allowing the system to scale by simply adding more nodes rather than relying on a single high-end server. This segmentation enables both improved simulation capacity and easier scaling.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If computation is distributed among personal computers used by gamers, then accessibility is improved, but data traffic requirements and latency worsen

Engineering Contradiction:
ImproveaccessibilityVSAvoiddata traffic
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent implements spatial partitioning where each computing node is responsible for simulating objects within a specific region of the virtual space. This local quality approach ensures that nodes primarily communicate with nearby nodes rather than all nodes, significantly reducing data traffic. Objects near region boundaries do require inter-node communication, but the overall data volume is minimized compared to a fully distributed approach.

Inventive Principle:
Principle #3Local quality

3Extent of automation

If specific types of tasks are assigned to each node in a cluster, then task specialization is improved, but workload equality and intercommunication requirements worsen

Engineering Contradiction:
Improvetask specializationVSAvoidintercommunication
Core Design Contradiction:
Extent of automationVSQuantity of substance

Solution Approach 1:

The patent combines multiple simulation responsibilities within each computing node, including physics calculations, AI behavior, and rendering for their respective regions. This merging approach reduces the need for extensive inter-node communication compared to highly specialized nodes, while still maintaining efficient task distribution across the cluster.

Inventive Principle:
Principle #5Merging (Combining)

4Adaptability or versatility

If separate regions of simulated space are assigned to separate nodes, then scalability is improved, but workload equality worsens due to unequal object distribution

Engineering Contradiction:
ImprovescalabilityVSAvoidworkload equality
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic load balancing that continuously monitors and adjusts the distribution of objects among computing nodes. When objects move between regions or when nodes experience varying workload, the system dynamically reassigns objects to maintain equal workload distribution. This dynamic adjustment preserves scalability while preventing workload inequality.

Inventive Principle:
Principle #15Dynamics

5Productivity

If cube-based spatial organization is used, then computational efficiency is improved, but realistic representation of object visibility worsens

Engineering Contradiction:
Improvecomputation efficiencyVSAvoidvisibility representation
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent replaces the traditional cube-based spatial organization with sphere-based regions. This spheroidality approach better matches the natural visibility patterns in 3D space, where objects are visible in all directions from a central point rather than confined to cubic boundaries. The spherical regions maintain computational efficiency while providing realistic visibility representation.

Inventive Principle:
Principle #14Spheroidality (Curvature)

Data Source

PatentUS10521520B2Highly scalable cluster engine for hosting simulations of objects interacting within a space
Publication Date: 2019.12.31 NOCTURNAL INNOVATIONS
  • US10521520B2 patent drawing
  • US10521520B2 patent drawing
  • US10521520B2 patent drawing

AI summary

A highly scalable cluster of computing nodes simulates large numbers of objects interacting in a space defined by an octree of cubical elements. Each cube of the octree is enclosed within a corresponding padding sphere. Interacting objects are quickly identified by determining which of the padding spheres are candidate spheres that satisfy an interaction criterion, considering candidate objects located in the cubes that correspond to the candidate spheres, and determining which of the candidate objects meet the interaction criterion. The computing workload can be efficiently parallelized among nodes of the cluster by assigning the objects to the nodes in approximately equal numbers, each node being responsible for managing the objects assigned thereto. Inter-node data traffic can be minimized by reassigning frequently interacting objects to the same node. The cluster can be scaled simply by adding more nodes to the cluster, and redistributing the objects equally among the nodes.