class_docstr: Implement the Chebyshev Scalarization.
  
  Given a vector of (at least two) objectives M, a weight vector W, and a
  reference point Z, all having the same dimension, the Chebyshev scalarization
  is defined as:
  
  ```min_{i} W_i * (M_i - Z_i).```
  
  Note that reference point Z is expected to be dominated by all Pareto-optimal
  objective vectors.
class_docstr_tok: ["Implement","the","Chebyshev","Scalarization",".","Given","a","vector","of","(","at","least","two",")","objectives","M",",","a","weight","vector","W",",","and","a","reference","point","Z",",","all","having","the","same","dimension",",","the","Chebyshev","scalarization","is","defined","as",":","``","`","min_","{","i","}","W_i","*","(","M_i","-","Z_i",")",".","``","`","Note","that","reference","point","Z","is","expected","to","be","dominated","by","all","Pareto-optimal","objective","vectors","."]
docstr: Set the scalarization parameters for the ChebyshevScalarizer.
  
  Args:
    weights: A rank-2 `tf.Tensor` of weights shaped as [batch_size,
      self._num_of_objectives], where `batch_size` should match the batch size
      of the `multi_objectives` passed to the scalarizer call.
    reference_point: A `tf.Tensor` of coordinates for the reference point that
      must satisfy the same rank and shape requirements as `weights`.
  
  Raises:
    ValueError: if any input scalarization parameter tensor is not rank-2, or
    has a last dimension size that does not match `self._num_of_objectives`.
docstr_tok: ["Set","the","scalarization","parameters","for","the","ChebyshevScalarizer",".","Args",":","weights",":","A","rank-2","`","tf.Tensor","`","of","weights","shaped","as","[","batch_size",",","self._num_of_objectives","]",",","where","`","batch_size","`","should","match","the","batch","size","of","the","`","multi_objectives","`","passed","to","the","scalarizer","call",".","reference_point",":","A","`","tf.Tensor","`","of","coordinates","for","the","reference","point","that","must","satisfy","the","same","rank","and","shape","requirements","as","`","weights","`",".","Raises",":","ValueError",":","if","any","input","scalarization","parameter","tensor","is","not","rank-2",",","or","has","a","last","dimension","size","that","does","not","match","`","self._num_of_objectives","`","."]
code: def set_parameters(
      self, weights: tf.Tensor, reference_point: tf.Tensor
  ):  # pytype: disable=signature-mismatch  # overriding-parameter-count-checks
      """Set the scalarization parameters for the ChebyshevScalarizer.
  
      Args:
        weights: A rank-2 `tf.Tensor` of weights shaped as [batch_size,
          self._num_of_objectives], where `batch_size` should match the batch size
          of the `multi_objectives` passed to the scalarizer call.
        reference_point: A `tf.Tensor` of coordinates for the reference point that
          must satisfy the same rank and shape requirements as `weights`.
  
      Raises:
        ValueError: if any input scalarization parameter tensor is not rank-2, or
        has a last dimension size that does not match `self._num_of_objectives`.
      """
      self._validate_scalarization_parameters(
          {"weights": weights, "reference_point": reference_point}
      )
      self._weights = weights
      self._reference_point = reference_point
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import abc
  import copy
  from typing import Callable, Dict, NamedTuple, Optional, Sequence, Union
  import numpy
  import six
  import tensorflow.compat.v2
label_desc: Use image node_id 3 for calling the ChebyshevScalarizer obj's underlying member method code with example usage: obj.set_parameters(weights, reference_point) without return types