DPS – distributed problem solving

Preliminaries

Distributed problem solving refers to a network of semi-autonomous processing nodes working together to solve a problem. It involves problem subdivision, sub-problem distribution, results synthesis and optimization of problem solver coherence and coordination. Key aspects are:

no global control or data storage:

no individual CDPS problem solver (agent) possesses sufficient information to solve the entire problem
both control and data are distributed across the network

communication versus computation:

communication is slower than computation
efficient protocols with minimal communication overhead are essential
problems should be modular and coarse-grained

avoiding bottlenecks:

any unique node can become a potential bottleneck

Organized behavior is challenging to guarantee since no single node has the complete picture. DPS is somehow related to distributed constraint programming and distributed constraint optimization. It enables collaborative problem-solving across interconnected systems, each contributing their expertise to tackle complex tasks beyond individual capabilities.

Model

DAI

VO non-H HNWO

LW65

Domain-Driven Design

Domain-driven design is an approach to developing computational systems for complex needs by deeply connecting the implementation to an evolving model of the core business concepts. It

  • places the project’s primary focus on the core domain and domain logic
  • bases complex designs on a model
  • initiates a creative collaboration between AI and domain experts to iteratively cut ever closer to the conceptual heart of the problem

The premise is simple, but pulling it off in the messy real world is hard. It calls for skills, discipline and a systematic approach. Domain-driven design is not per se a technology, paradigm or methodology. However, it does provide a structure of practices and terminology for making design decisions that focus and accelerate AI projects dealing with complicated domains.

CT

SI

RI