Skip to content

Gridding Documentation

James Yang edited this page Mar 1, 2022 · 3 revisions

Overview

This page covers the design motivation and decisions around the gridding logic.

Use Cases

Representing A Tile Corresponding to a Gridpoint

In general, a hypothesis space can be written as a disjoint union of intersection hypothesis spaces (IHS), where each IHS represents one configuration of the multiple hypotheses of interest. For example, Hi: θi <= θ0 for i = 1,...,k in the Binomial model with k treatment arm, we would have 2k possible configurations of the multiple hypotheses.

For a given set of gridpoints, we must create a set of tiles, or a collection of a set of points, that satisfies the following:

  • the tiles cover the full null hypothesis space
  • upper-bound can be computed on each tile
  • each tile belongs to exactly one IHS (required by the upper-bound theory)
  • each tile is associated with exactly one gridpoint (but the gridpoint need not be inside the tile and the gridpoint may be associated with multiple tiles)

We will assume all null-hypothesis constraints are defined by a hyperplane. Hence, in general, a tile for a gridpoint will be a polygon. We will not need to represent the polygon as an intersection of (affine) linear functions, rather, we only need to save the vertices of the polygon, since that is all we need to compute the upper-bound.

Information to store:

  • List of gridpoints
    • Needed for every simulation to update InterSum.
    • Needed for UpperBound.
  • List of radius corresponding to each gridpoint (to define the rectangular bounds of the grids)
    • Only needed for UpperBound as a special case for rectangular tiles (shortcut in computing δ_1, δ_1_u, δ_2_u).
    • Note this is only needed one-time for each gridpoint after all simulations.
  • List of simulation sizes
    • Needed for the batcher to decide how much to simulate for each batch and subtract from remaining simulation sizes.
  • List of tiles for each gridpoint
    • Only needed for UpperBound as a special case for the tiles that are not rectangular to check each corner of the tiles to compute the sup quantity in the upper-bound.
  • List of IHS assignments for each tile
    • Only needed for every simulation to compute "false rejection".

Identifying the Tiles for each Gridpoint

For each gridpoint, we start off with a rectangular tile and we must partition this tile by the IHSes. This results in a list of disjoint tiles (polygons in general if we assume that IHS is always defined by a linear constraint). For simplicity, we will only partition at most once from the rectangular tile with the first IHS that splits it. Any further splitting will be ignored and the parent tile will be copied. As an example, if the rectangular tile splits into tiles A and B, and if another hyperplane cuts through A, we would copy tile A and assign the original to be a different IHS from the copy. The reasoning for this is that the first splitting removes most of the issues of over-conservative estimates of the upper-bound.