# tf_agents.utils.common.discounted_future_sum_masked

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/agents/blob/v0.19.0/tf_agents/utils/common.py#L808-L839) |

Discounted future sum of batch-major values.

    tf_agents.utils.common.discounted_future_sum_masked(
        values, gamma, num_steps, episode_lengths
    )

<br />

<br />

<br />

| ## Args ||
|---|---|
| `values` | A Tensor of shape \[batch_size, total_steps\] and dtype float32. |
| `gamma` | A float discount value. |
| `num_steps` | A positive integer number of future steps to sum. |
| `episode_lengths` | A vector shape \[batch_size\] with num_steps per episode. |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| A Tensor of shape \[batch_size, total_steps\], where each entry is the discounted sum as in discounted_future_sum, except with values after the end of episode_lengths masked to 0. ||

<br />

<br />

<br />

<br />

| ## Raises ||
|---|---|
| `ValueError` | If values is not of rank 2, or if total_steps is not defined. |

<br />