Dynamic Compression Dictionaries for Changing Session Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing dictionary-based compression techniques for online video games rely on static dictionaries trained from concluded game sessions, leading to inefficiencies and suboptimal compression ratios due to data changes during active sessions.
Innovation Solution
Implement a dynamic dictionary-based compression method that trains and updates the compression dictionary in real-time during ongoing game sessions, using data samples from current messages to create and adapt dictionaries for improved compression ratios.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If static dictionaries trained from concluded game sessions are used, then device complexity is reduced and ease of operation is improved, but compression ratio deteriorates due to data changes during active sessions
Solution Approach 1:
The patent implements dynamic dictionary training during active game sessions, allowing the compression dictionary to adapt and update in real-time as data patterns change. This transforms the static dictionary approach into a dynamic system that maintains high compression ratios throughout the session lifecycle while automatically adjusting to new data characteristics.
Solution Approach 2:
The system performs preliminary dictionary training using data from concluded sessions before the active session begins, establishing a baseline dictionary. Then during the active session, it continues training with new data samples, ensuring the dictionary is already prepared and adapted before full compression operations commence, avoiding startup performance penalties.
2Manufacturing precision
If dictionaries are updated during ongoing game sessions, then compression ratio is improved through fresh data, but device complexity increases due to real-time training requirements
Solution Approach 1:
The patent implements continuous dictionary training during the entire duration of the game session, using incoming data samples to progressively refine the compression dictionary. This continuous adaptation ensures the dictionary remains optimized for current data patterns without requiring system restarts or complex state management, maintaining simplicity while achieving high compression ratios throughout.
Solution Approach 2:
The compression system performs self-updating by automatically training the dictionary using data from the game session itself. The system uses its own operational data to improve its compression capability without requiring external intervention, complex configuration, or additional training infrastructure, thereby reducing overall device complexity.
3Ease of operation
If offline training from concluded sessions is used, then ease of operation is maintained with pre-initialized dictionaries, but network bandwidth efficiency deteriorates due to suboptimal compression ratios
Solution Approach 1:
The system implements feedback loops where compression performance is continuously monitored during the game session, and data samples are collected and used to retrain the dictionary in real-time. This feedback mechanism ensures the dictionary adapts to actual data patterns observed during the session, maximizing compression efficiency and reducing network bandwidth consumption without requiring complex manual configuration.
Solution Approach 2:
The patent dynamically changes the dictionary parameters and content based on data observed during the game session. By adjusting the dictionary to match actual data distributions and patterns encountered during active play, the system achieves optimal compression ratios that reduce network bandwidth usage, while the automated parameter adjustment maintains ease of operation.
Data Source
AI summary
Methods and systems for providing dynamic dictionary-based compression and decompression are described herein. A computing device may receive, during a currently running session with a client device, a plurality of messages. The computing device may determine, based on the plurality of messages, one or more frames. The computing device may determine, based on the one or more frames, data samples. The computing device may compress the one or more frames based on a compression dictionary. The computing device may train, during the currently running session, the compression dictionary based on the determined data samples, to create a new compression dictionary. The computing device may determine, during the currently running session and based on receiving additional messages, one or more additional frames. In addition, the computing device may compress the one or more additional frames based on the new compression dictionary.


