Concurrent Policy Evaluation with Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed computer systems experience poor response and resource usage spikes due to long-running policy evaluations, which can lead to incomplete condition evaluation before the next triggering event, especially in large-scale systems.

Innovation Solution

Transforming policies into sub-policies with synchronization steps and distributing them across sub-components for concurrent evaluation, allowing for parallel condition and action assessment, and ensuring safe or undoable actions are performed concurrently before final synchronization and action execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If policy evaluation is performed sequentially on large datasets, then evaluation completeness is maintained, but response time deteriorates and resource usage spikes occur

Engineering Contradiction:
Improveevaluation completenessVSAvoidresponse time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the policy evaluation process into multiple independent sub-policies that can be evaluated concurrently. Each sub-policy processes a portion of the dataset independently, allowing parallel execution that reduces total evaluation time while maintaining completeness through systematic division of work.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential time-based execution to parallel space-based execution by distributing sub-policies across multiple processing units. This dimensional shift from single-threaded to multi-threaded evaluation enables simultaneous processing of multiple conditions without resource conflicts.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Manufacturing precision

If long-running policy evaluations are executed, then evaluation thoroughness is maintained, but system responsiveness deteriorates

Engineering Contradiction:
Improveevaluation thoroughnessVSAvoidsystem responsiveness
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

By segmenting the evaluation into smaller sub-policies that can run in parallel, the system maintains thorough evaluation of all conditions while reducing the time each individual sub-policy takes to execute, thereby improving overall system responsiveness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables continuous evaluation of multiple sub-policies simultaneously rather than sequential execution, keeping the system continuously productive and responsive. Multiple evaluations proceed in parallel without blocking each other, maintaining steady progress toward complete evaluation.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If concurrent policy evaluation is implemented, then scalability is improved, but synchronization complexity increases

Engineering Contradiction:
Improveevaluation throughputVSAvoidsynchronization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a coordinator as an intermediary component that manages synchronization between concurrent sub-policies. The coordinator collects results from sub-policies, determines when synchronization points should be reached, and orchestrates the final aggregation, thereby enabling concurrency while managing complexity through a dedicated coordination layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7783728B2Concurrent evaluation of policies with synchronization
Publication Date: 2010.08.24 CLOUD SOFTWARE GRP SWITZERLAND GMBH
  • US7783728B2 patent drawing
  • US7783728B2 patent drawing
  • US7783728B2 patent drawing

AI summary

A policy for a computer system is transformed into a plurality of sub-policies, at least one synchronization step, and a final action. The sub-policies are distributed to corresponding sub-components in the computer system. The sub-policies are evaluated, wherein each sub-component evaluates its corresponding one or more sub-policies as other sub-components evaluate their corresponding one or more sub-policies. The sub-policies are synchronized by using the at least one synchronization step. The final action is performed in response to synchronizing the sub-policies. The computer system can be singular or distributed.