Wolfram Computation Meets Knowledge

Back to Research-Based Educational Programs

19th Annual Wolfram Summer School Online June 28–July 16, 2021


Harshal Gajjar

Science and Technology

Class of 2018


Harshal Gajjar is an undergraduate student at the Indian Institute of Technology Dharwad. Currently training in mathematics and its computer applications, he is a person who enjoys a conversation about anything related to STEM. One of his primary interests is improving the standard of living of differently abled people using technology. He has also developed software and websites for a couple of companies. In his free time, he prefers cycling, reading books and attempts to create the lamest joke ever.

Computational Essay

Linear Transformations to Render 3D Graphics »

Project: Tiling of Polyominoes


Analyze, study and implement an algorithm for tiling a prescribed region or the entire (Euclidean) plane using zero or more copies of polyominoes from a given set of polyominoes. What are polyominoes? A polyomino is a plane geometric figure formed by joining one or more equal squares edge to edge.

Main Results in Detail

A function (growUniverse) was created in the Wolfram Language that grows the tiled region by tiling along the perimeter. The following functions helped create the growUniverse function: allTiles[tile], positionTile[tile,{x,y},{w,h}], usedSpace[region], usedRange[region], findPerimeter[region], scanRange[tile,space], addTile[tile,region,{x,y}], detectVoid[region], score[region], scoreImg[region], addNextTile[region,tiles], putUniverse[universe,region,{x,y}], takeUniverse[universe, {x,y},{w,h}], increaseSpace[space,direction,length].

Future Work

Optimize the function to improve speed.

Wolfram Summer School | Bentley University, MA | June 29–July 17, 2020