Class

IntelligentOptimizer

AIFeatures.IntelligentOptimizer()

Intelligent animation optimizer using machine learning principles

Constructor

# new IntelligentOptimizer()

View Source utils/aiFeatures.js, line 9

Methods

# adaptSettings()

Adapt settings based on performance history

View Source utils/aiFeatures.js, line 353

# async benchmarkComputation() → {Promise.<Object>}

Benchmark computation performance

View Source utils/aiFeatures.js, line 183

Computation benchmark

Promise.<Object>

# async benchmarkMemory() → {Promise.<Object>}

Benchmark memory performance

View Source utils/aiFeatures.js, line 206

Memory benchmark

Promise.<Object>

# async benchmarkRendering(canvas) → {Promise.<Object>}

Benchmark rendering performance

Parameters:
Name Type Description
canvas HTMLCanvasElement

Canvas element

View Source utils/aiFeatures.js, line 153

Rendering benchmark

Promise.<Object>

# calculateMemoryTrend(data) → {number}

Calculate memory usage trend

Parameters:
Name Type Description
data Array

Performance data array

View Source utils/aiFeatures.js, line 385

Memory trend (positive = increasing)

number

# collectPerformanceData()

Collect performance data

View Source utils/aiFeatures.js, line 321

# async getBatteryInfo() → {Promise.<Object>}

Get battery information

View Source utils/aiFeatures.js, line 116

Battery info

Promise.<Object>

# getConnectionInfo() → {Object}

Get connection information

View Source utils/aiFeatures.js, line 100

Connection info

Object

# getCurrentFPS() → {number}

Get current FPS estimate

View Source utils/aiFeatures.js, line 344

Current FPS

number

# getGPUInfo(gl) → {Object}

Get GPU information

Parameters:
Name Type Description
gl WebGLRenderingContext

WebGL context

View Source utils/aiFeatures.js, line 68

GPU info

Object

# getMemoryInfo() → {Object}

Get memory information

View Source utils/aiFeatures.js, line 85

Memory info

Object

# getOptimizedSettings() → {Object}

Get optimized settings

View Source utils/aiFeatures.js, line 398

Optimized settings

Object

# async initialize()

Initialize device profiling and optimization

View Source utils/aiFeatures.js, line 26

# isHighEndDevice() → {boolean}

Check if device is high-end

View Source utils/aiFeatures.js, line 297

Is high-end device

boolean

# isLowEndDevice() → {boolean}

Check if device is low-end

View Source utils/aiFeatures.js, line 283

Is low-end device

boolean

# isMobileDevice() → {boolean}

Check if device is mobile

View Source utils/aiFeatures.js, line 275

Is mobile device

boolean

# loadOptimizationRules()

Load optimization rules based on device profile

View Source utils/aiFeatures.js, line 240

# async profileDevice()

Profile device capabilities

View Source utils/aiFeatures.js, line 35

# async runBenchmarks(canvas) → {Promise.<Object>}

Run performance benchmarks

Parameters:
Name Type Description
canvas HTMLCanvasElement

Canvas element

View Source utils/aiFeatures.js, line 138

Benchmark results

Promise.<Object>

# setLearningEnabled(enabled)

Enable/disable learning

Parameters:
Name Type Description
enabled boolean

Learning enabled

View Source utils/aiFeatures.js, line 406

# startPerformanceMonitoring()

Start performance monitoring

View Source utils/aiFeatures.js, line 311