FeasiblePointCapacity

data class FeasiblePointCapacity(val requestedCount: Int, val latticeSize: Long?)(source)

A structured description of whether a problem's input lattice can supply a requested number of distinct feasible input points — for example a solver population or a space-filling design. Produced by ProblemDefinition.feasiblePointCapacity, it lets a caller decide programmatically (e.g. cap a population, flag a benchmark cell, drive a UI) rather than parse a log message.

latticeSize is the number of distinct points on the input grid (see ProblemDefinition.inputLatticeSize), or null when that is effectively unbounded (a continuous input, or a grid too large to count). It is an upper bound on the number of distinct input-feasible points: linear and functional constraints can only reduce it. Consequently sufficient == true means the grid is large enough for the request but constraints may still reduce the feasible set below it, whereas sufficient == false means the request cannot be met on grid size alone.

Parameters

requestedCount

the number of distinct feasible points requested; must be positive

latticeSize

the input-grid size, or null when effectively unbounded; must be non-negative

Constructors

Link copied to clipboard
constructor(requestedCount: Int, latticeSize: Long?)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The number of points by which the request exceeds the grid — requestedCount - latticeSize when insufficient, and 0 when sufficient or unbounded.

Link copied to clipboard

True when the input grid has at least requestedCount distinct points — i.e. the request is not impossible on grid size alone (always true when the lattice is unbounded). Note that linear and functional constraints can still reduce the feasible set below requestedCount.

Link copied to clipboard

True when the input lattice is effectively unbounded (a continuous input, or a grid too large to count). Such a problem always has ample distinct feasible points on grid size alone.