Wolfram Computation Meets Knowledge

Wolfram Summer School


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.