java.lang.Object
ai.timefold.solver.core.config.AbstractConfig<Config_>
ai.timefold.solver.core.config.heuristic.selector.SelectorConfig<NearbySelectionConfig>
ai.timefold.solver.core.config.heuristic.selector.common.nearby.NearbySelectionConfig

public class NearbySelectionConfig extends SelectorConfig<NearbySelectionConfig>
  • Field Details

    • originEntitySelectorConfig

      protected EntitySelectorConfig originEntitySelectorConfig
    • originSubListSelectorConfig

      protected SubListSelectorConfig originSubListSelectorConfig
    • originValueSelectorConfig

      protected ValueSelectorConfig originValueSelectorConfig
    • nearbyDistanceMeterClass

      protected Class<? extends NearbyDistanceMeter> nearbyDistanceMeterClass
    • nearbySelectionDistributionType

      protected NearbySelectionDistributionType nearbySelectionDistributionType
    • blockDistributionSizeMinimum

      protected Integer blockDistributionSizeMinimum
    • blockDistributionSizeMaximum

      protected Integer blockDistributionSizeMaximum
    • blockDistributionSizeRatio

      protected Double blockDistributionSizeRatio
    • blockDistributionUniformDistributionProbability

      protected Double blockDistributionUniformDistributionProbability
    • linearDistributionSizeMaximum

      protected Integer linearDistributionSizeMaximum
    • parabolicDistributionSizeMaximum

      protected Integer parabolicDistributionSizeMaximum
    • betaDistributionAlpha

      protected Double betaDistributionAlpha
    • betaDistributionBeta

      protected Double betaDistributionBeta
  • Constructor Details

    • NearbySelectionConfig

      public NearbySelectionConfig()
  • Method Details

    • getOriginEntitySelectorConfig

      public @Nullable EntitySelectorConfig getOriginEntitySelectorConfig()
    • setOriginEntitySelectorConfig

      public void setOriginEntitySelectorConfig(@Nullable EntitySelectorConfig originEntitySelectorConfig)
    • getOriginSubListSelectorConfig

      public @Nullable SubListSelectorConfig getOriginSubListSelectorConfig()
    • setOriginSubListSelectorConfig

      public void setOriginSubListSelectorConfig(@Nullable SubListSelectorConfig originSubListSelectorConfig)
    • getOriginValueSelectorConfig

      public @Nullable ValueSelectorConfig getOriginValueSelectorConfig()
    • setOriginValueSelectorConfig

      public void setOriginValueSelectorConfig(@Nullable ValueSelectorConfig originValueSelectorConfig)
    • getNearbyDistanceMeterClass

      public @Nullable Class<? extends NearbyDistanceMeter> getNearbyDistanceMeterClass()
    • setNearbyDistanceMeterClass

      public void setNearbyDistanceMeterClass(@Nullable Class<? extends NearbyDistanceMeter> nearbyDistanceMeterClass)
    • getNearbySelectionDistributionType

      public @Nullable NearbySelectionDistributionType getNearbySelectionDistributionType()
    • setNearbySelectionDistributionType

      public void setNearbySelectionDistributionType(@Nullable NearbySelectionDistributionType nearbySelectionDistributionType)
    • getBlockDistributionSizeMinimum

      public @Nullable Integer getBlockDistributionSizeMinimum()
    • setBlockDistributionSizeMinimum

      public void setBlockDistributionSizeMinimum(@Nullable Integer blockDistributionSizeMinimum)
    • getBlockDistributionSizeMaximum

      public @Nullable Integer getBlockDistributionSizeMaximum()
    • setBlockDistributionSizeMaximum

      public void setBlockDistributionSizeMaximum(@Nullable Integer blockDistributionSizeMaximum)
    • getBlockDistributionSizeRatio

      public @Nullable Double getBlockDistributionSizeRatio()
    • setBlockDistributionSizeRatio

      public void setBlockDistributionSizeRatio(@Nullable Double blockDistributionSizeRatio)
    • getBlockDistributionUniformDistributionProbability

      public @Nullable Double getBlockDistributionUniformDistributionProbability()
    • setBlockDistributionUniformDistributionProbability

      public void setBlockDistributionUniformDistributionProbability(@Nullable Double blockDistributionUniformDistributionProbability)
    • getLinearDistributionSizeMaximum

      public @Nullable Integer getLinearDistributionSizeMaximum()
    • setLinearDistributionSizeMaximum

      public void setLinearDistributionSizeMaximum(@Nullable Integer linearDistributionSizeMaximum)
    • getParabolicDistributionSizeMaximum

      public @Nullable Integer getParabolicDistributionSizeMaximum()
    • setParabolicDistributionSizeMaximum

      public void setParabolicDistributionSizeMaximum(@Nullable Integer parabolicDistributionSizeMaximum)
    • getBetaDistributionAlpha

      public @Nullable Double getBetaDistributionAlpha()
    • setBetaDistributionAlpha

      public void setBetaDistributionAlpha(@Nullable Double betaDistributionAlpha)
    • getBetaDistributionBeta

      public @Nullable Double getBetaDistributionBeta()
    • setBetaDistributionBeta

      public void setBetaDistributionBeta(@Nullable Double betaDistributionBeta)
    • withOriginEntitySelectorConfig

      public @NonNull NearbySelectionConfig withOriginEntitySelectorConfig(@NonNull EntitySelectorConfig originEntitySelectorConfig)
    • withOriginSubListSelectorConfig

      public @NonNull NearbySelectionConfig withOriginSubListSelectorConfig(@NonNull SubListSelectorConfig originSubListSelectorConfig)
    • withOriginValueSelectorConfig

      public @NonNull NearbySelectionConfig withOriginValueSelectorConfig(@NonNull ValueSelectorConfig originValueSelectorConfig)
    • withNearbyDistanceMeterClass

      public @NonNull NearbySelectionConfig withNearbyDistanceMeterClass(@NonNull Class<? extends NearbyDistanceMeter> nearbyDistanceMeterClass)
    • withNearbySelectionDistributionType

      public @NonNull NearbySelectionConfig withNearbySelectionDistributionType(@NonNull NearbySelectionDistributionType nearbySelectionDistributionType)
    • withBlockDistributionSizeMinimum

      public @NonNull NearbySelectionConfig withBlockDistributionSizeMinimum(@NonNull Integer blockDistributionSizeMinimum)
    • withBlockDistributionSizeMaximum

      public @NonNull NearbySelectionConfig withBlockDistributionSizeMaximum(@NonNull Integer blockDistributionSizeMaximum)
    • withBlockDistributionSizeRatio

      public @NonNull NearbySelectionConfig withBlockDistributionSizeRatio(@NonNull Double blockDistributionSizeRatio)
    • withBlockDistributionUniformDistributionProbability

      public @NonNull NearbySelectionConfig withBlockDistributionUniformDistributionProbability(@NonNull Double blockDistributionUniformDistributionProbability)
    • withLinearDistributionSizeMaximum

      public @NonNull NearbySelectionConfig withLinearDistributionSizeMaximum(@NonNull Integer linearDistributionSizeMaximum)
    • withParabolicDistributionSizeMaximum

      public @NonNull NearbySelectionConfig withParabolicDistributionSizeMaximum(@NonNull Integer parabolicDistributionSizeMaximum)
    • withBetaDistributionAlpha

      public @NonNull NearbySelectionConfig withBetaDistributionAlpha(@NonNull Double betaDistributionAlpha)
    • withBetaDistributionBeta

      public @NonNull NearbySelectionConfig withBetaDistributionBeta(@NonNull Double betaDistributionBeta)
    • validateNearby

      public void validateNearby(@NonNull SelectionCacheType resolvedCacheType, @NonNull SelectionOrder resolvedSelectionOrder)
    • inherit

      public @NonNull NearbySelectionConfig inherit(@NonNull NearbySelectionConfig inheritedConfig)
      Description copied from class: AbstractConfig
      Inherits each property of the inheritedConfig unless that property (or a semantic alternative) is defined by this instance (which overwrites the inherited behaviour).

      After the inheritance, if a property on this AbstractConfig composition is replaced, it should not affect the inherited composition instance.

      Specified by:
      inherit in class AbstractConfig<NearbySelectionConfig>
      Returns:
      this
    • copyConfig

      public @NonNull NearbySelectionConfig copyConfig()
      Description copied from class: AbstractConfig
      Typically implemented by constructing a new instance and calling AbstractConfig.inherit(AbstractConfig) on it.
      Specified by:
      copyConfig in class AbstractConfig<NearbySelectionConfig>
      Returns:
      new instance
    • visitReferencedClasses

      public void visitReferencedClasses(@NonNull Consumer<Class<?>> classVisitor)
      Description copied from class: AbstractConfig
      Call the class visitor on each (possibly null) Class instance provided to this config by the user (including those provided in child configs). Required to create the bean factory in Quarkus.
      Specified by:
      visitReferencedClasses in class AbstractConfig<NearbySelectionConfig>
      Parameters:
      classVisitor - The visitor of classes. Can accept null instances of Class.
    • hasNearbySelectionConfig

      public boolean hasNearbySelectionConfig()
      Description copied from class: SelectorConfig
      Verifies if the current configuration has any Nearby Selection settings.
      Specified by:
      hasNearbySelectionConfig in class SelectorConfig<NearbySelectionConfig>