Klasse MetricSDNMPublisherPayout

Alle implementierten Schnittstellen:
Serializable

public class MetricSDNMPublisherPayout extends AbstractMetricSingleDimensional
This class implements a model which maximizes publisher benefit according to the model proposed in:
A Game Theoretic Framework for Analyzing Re-Identification Risk. Zhiyu Wan, Yevgeniy Vorobeychik, Weiyi Xia, Ellen Wright Clayton, Murat Kantarcioglu, Ranjit Ganta, Raymond Heatherly, Bradley A. Malin PLOS|ONE. 2015.
Siehe auch:
  • Konstruktordetails

    • MetricSDNMPublisherPayout

      protected MetricSDNMPublisherPayout(boolean journalistAttackerModel, double gsFactor)
      Creates a new instance
      Parameter:
      journalistAttackerModel - If set to true, the journalist attacker model will be assumed, the prosecutor model will be assumed, otherwise
      gsFactor - A factor [0,1] weighting generalization and suppression. The default value is 0.5, which means that generalization and suppression will be treated equally. A factor of 0 will favor suppression, and a factor of 1 will favor generalization. The values in between can be used for balancing both methods.
  • Methodendetails

    • createMaxInformationLoss

      public ILSingleDimensional createMaxInformationLoss()
      Beschreibung aus Klasse kopiert: Metric
      Returns an instance of the maximal value.
      Setzt außer Kraft:
      createMaxInformationLoss in Klasse AbstractMetricSingleDimensional
      Gibt zurück:
    • createMinInformationLoss

      public ILSingleDimensional createMinInformationLoss()
      Beschreibung aus Klasse kopiert: Metric
      Returns an instance of the minimal value.
      Setzt außer Kraft:
      createMinInformationLoss in Klasse AbstractMetricSingleDimensional
      Gibt zurück:
    • getConfiguration

      public MetricConfiguration getConfiguration()
      Returns the configuration of this metric.
      Setzt außer Kraft:
      getConfiguration in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • getCostBenefitConfiguration

      public ARXCostBenefitConfiguration getCostBenefitConfiguration()
      Returns the cost/benefit configuration
    • getName

      public String getName()
      Beschreibung aus Klasse kopiert: Metric
      Returns the name of metric.
      Setzt außer Kraft:
      getName in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • isAbleToHandleMicroaggregation

      public boolean isAbleToHandleMicroaggregation()
      Beschreibung aus Klasse kopiert: Metric
      Returns whether this metric handles microaggregation
      Setzt außer Kraft:
      isAbleToHandleMicroaggregation in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • isGSFactorSupported

      public boolean isGSFactorSupported()
      Beschreibung aus Klasse kopiert: Metric
      Returns whether a generalization/suppression factor is supported
      Setzt außer Kraft:
      isGSFactorSupported in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • isJournalistAttackerModel

      public boolean isJournalistAttackerModel()
      Returns whether the journalist attacker model is being assumed.
      Gibt zurück:
    • isProsecutorAttackerModel

      public boolean isProsecutorAttackerModel()
      Returns whether the prosecutor attacker model is being assumed.
      Gibt zurück:
    • render

      public ElementData render(ARXConfiguration config)
      Beschreibung aus Klasse kopiert: Metric
      Renders the privacy model
      Angegeben von:
      render in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • toString

      public String toString()
      Beschreibung aus Klasse kopiert: Metric
      Returns the name of metric.
      Setzt außer Kraft:
      toString in Klasse Metric<ILSingleDimensional>
      Gibt zurück:
    • getInformationLossInternal

      protected ILSingleDimensionalWithBound getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
      Beschreibung aus Klasse kopiert: Metric
      Evaluates the metric for the given node.
      Angegeben von:
      getInformationLossInternal in Klasse Metric<ILSingleDimensional>
      Parameter:
      transformation - The node for which to compute the information loss
      groupify - The groupify operator of the previous check
      Gibt zurück:
      the double
    • getInformationLossInternal

      protected InformationLossWithBound<ILSingleDimensional> getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)
      Beschreibung aus Klasse kopiert: Metric
      Returns the information loss that would be induced by suppressing the given entry. The loss is not necessarily consistent with the loss that is computed by getInformationLoss(node, groupify) but is guaranteed to be comparable for different entries from the same groupify operator.
      Angegeben von:
      getInformationLossInternal in Klasse Metric<ILSingleDimensional>
      Parameter:
      entry -
      Gibt zurück:
    • getLowerBoundInternal

      protected ILSingleDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation)
      Beschreibung aus Klasse kopiert: Metric
      Returns a lower bound for the information loss for the given node. This can be used to expose the results of monotonic shares of a metric, which can significantly speed-up the anonymization process. If no such metric exists, simply return null.
      Angegeben von:
      getLowerBoundInternal in Klasse Metric<ILSingleDimensional>
      Parameter:
      transformation -
      Gibt zurück:
    • getLowerBoundInternal

      protected ILSingleDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
      Beschreibung aus Klasse kopiert: Metric
      Returns a lower bound for the information loss for the given node. This can be used to expose the results of monotonic shares of a metric, which can significantly speed-up the anonymization process. If no such metric exists, simply return null.

      This variant of the method allows computing a monotonic share based on a groupified data representation. IMPORTANT NOTE: The groups may not have been classified correctly when the method is called, i.e., HashGroupifyEntry.isNotOutlier may not be set correctly!
      Angegeben von:
      getLowerBoundInternal in Klasse Metric<ILSingleDimensional>
      Parameter:
      transformation -
      groupify -
      Gibt zurück:
    • initializeInternal

      protected void initializeInternal(org.deidentifier.arx.framework.data.DataManager manager, DataDefinition definition, org.deidentifier.arx.framework.data.Data input, org.deidentifier.arx.framework.data.GeneralizationHierarchy[] hierarchies, ARXConfiguration config)
      Beschreibung aus Klasse kopiert: Metric
      Implement this to initialize the metric.
      Setzt außer Kraft:
      initializeInternal in Klasse AbstractMetricSingleDimensional
      Parameter:
      manager -
      definition -
      input -
      hierarchies -
      config -