Skip to content

Completed Intern Challenge using Multi Radii Spatial Grid Method#62

Open
karetiman23 wants to merge 1 commit into
partcleda:mainfrom
karetiman23:main
Open

Completed Intern Challenge using Multi Radii Spatial Grid Method#62
karetiman23 wants to merge 1 commit into
partcleda:mainfrom
karetiman23:main

Conversation

@karetiman23
Copy link
Copy Markdown

Completed Intern Challenge

Implementation:

  1. Uses Multiple spatial grid analysis to calculate overlap pairs for overlap loss analysis. 2 separate grids are used for small cells and large cells to prevent bin sizes from becoming unnecessarily large in the spatial grids. This technique greatly speeds up optimization convergence compared to the brute force approach, especially when cells are sparsely overlapped compared to the total number of cells.

  2. Uses numba to compile spatial grid calculation functions for improved performance on the cpu.

  3. During optimization, uses cosine annealing learning rate scheduler with warm restarts to find strong minimum of loss. Additionally uses a very large lambda_overlap coefficient for the majority of optimization to ensure 0 overlap after optimization, while temporarily using a large lambda_wirelength coefficient to encourage a lower wirelength by the end of optimization.

  4. Initializes cell placements by evenly spreading cells horizontally and vertically based on the max dimension size of the cells. Helps with making cell overlap more sparse to speed up multiple spatial grid analysis, while also improving the wirelength values.

Source code location: https://github.com/karetiman23/intern_challenge

Performance (first 10 tests):

Average Overlap: 0.0000
Average Wirelength: 0.2560
Total Runtime: 466.32s (7000 optimization epochs)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant