Server-Assisted Collision Detection for Virtual Object Movement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual space systems face inefficiencies in processing capabilities due to uneven distribution of processing loads across multiple processors, leading to unsatisfactory responsiveness and impaired virtual reality experiences, as well as increased network loads and decreased throughput.

Innovation Solution

An object movement control system that includes a server and client control units, where the server assigns collision determination tasks to dedicated clients based on processing load indices, reducing the load on client control units and optimizing the distribution of processing tasks to improve overall throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is broadcasted to all cell processors simultaneously for collision determination, then collision detection can be performed in parallel, but processing loads on the network increase and overall processing throughput decreases

Engineering Contradiction:
Improvecollision detection speedVSAvoidnetwork load
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent divides the virtual space into multiple regions and assigns each region to a specific cell processor. Instead of broadcasting collision determination data to all processors, only the processor responsible for a given region processes collision data for that region. This segmentation eliminates unnecessary network traffic while maintaining parallel processing capability across multiple processors.

Inventive Principle:
Principle #1Segmentation

2Productivity

If each cell processor performs collision determination independently, then parallel processing is achieved, but processing loads on other tasks (position calculation, display image generation) are affected

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidprocessing load distribution
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent extracts the collision determination function from the general-purpose cell processors and assigns it to dedicated collision determination processors. This separation allows the original processors to focus on position calculation and display image generation without being burdened by collision detection tasks, while dedicated processors handle collision determination efficiently in parallel.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If processing tasks are uniformly assigned to cell processors, then simple load distribution is achieved, but uneven processing loads occur and bottleneck the improvement of overall throughput

Engineering Contradiction:
Improveoverall throughputVSAvoidload distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic load distribution where each cell processor is assigned tasks based on its current processing load status and the spatial distribution of objects in its responsible region. Processors with lighter loads can handle more collision determination tasks, while overloaded processors receive fewer assignments. This local adaptation to processing conditions optimizes overall throughput without requiring complex centralized scheduling.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8271587B2Object movement control system, object movement control method, server and computer program
Publication Date: 2012.09.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8271587B2 patent drawing
  • US8271587B2 patent drawing
  • US8271587B2 patent drawing

AI summary

An object movement control system, an object movement control method, a server, and a computer program that can update the positional information of an object in a virtual space at high speed by appropriately distributing processing loads. Client control units obtain information about the position of a first object in a virtual space and information about movement of the first object and detect other objects that exist in a virtual region that contains the first object, which has been moved. The distances between objects that exist in a virtual region are calculated, and only when the number of objects the distances to which are shorter than a predetermined threshold exceeds a predetermined number, information about the objects is sent to a server. The server assigns a collision determination client that performs collision determination to each pair of objects selected from the objects.