Hitarth Kanakia

Hitarth Kanakia

Sunnyvale, California, United States
5K followers 500+ connections

About

I am an experienced software developer (6 years) with a passion for Math and Technology…

Services

Activity

5K followers

See all activities

Experience

  • Google Graphic

    Google

    Sunnyvale, California, United States

  • -

  • -

    Mountain View, California, United States

  • -

    Greater Los Angeles Area

  • -

  • -

  • -

  • -

    Mumbai Area, India

  • -

    Mumbai Area, India

Education

  • University of Southern California Graphic

    University of Southern California

    4.0

    -

    GPA: 4.0 | Courses: Analysis of Algorithms, Deep Learning and its Applications, Operating Systems, Foundations of Artificial Intelligence | Advanced Operating Systems | Advanced (NoSQL) data-stores | Advanced Computer Networks

  • -

    -

Licenses & Certifications

Publications

  • Heuristics for Million-scale Two-level Logic Minimization

    2021 IEEE/ACM International Conference On Computer Aided Design (ICCAD)

    Existing two-level logic minimization methods suffer from scalability problems, i.e. they cannot handle the optimization of Boolean functions with more than about 50k or so product terms. However, applications have arisen that produce Boolean functions with hundreds of thousands to millions of minterms. To ameliorate the aforesaid scalability problem, this work presents a suite of heuristics that enables exact or approximate two-level logic minimization of such large Boolean functions by…

    Existing two-level logic minimization methods suffer from scalability problems, i.e. they cannot handle the optimization of Boolean functions with more than about 50k or so product terms. However, applications have arisen that produce Boolean functions with hundreds of thousands to millions of minterms. To ameliorate the aforesaid scalability problem, this work presents a suite of heuristics that enables exact or approximate two-level logic minimization of such large Boolean functions by employing a divide and conquer technique. All proposed heuristics first deploy a decision tree to iteratively partition the original specification of a given Boolean function. Next, they apply one of different leaf optimization techniques (e.g., those based on support vector machines or error budgets) to each leaf node of the tree, and, finally, they merge the locally optimized leaves at the root of the tree to perform one round of the global optimization. We show that our support vector machine-based heuristic compresses Boolean functions with 300,000 minterms by a factor of about 100 (i.e. 3,000 cubes in the optimized function), and achieves 98% accuracy. Similarly, our error-budget-driven heuristic compresses a Boolean function with about 3,000,000 minterms by a factor of 1,273, and achieves 95%; accuracy while it only takes 67 seconds to complete the whole optimization process. This is a significant improvement compared to well-known two-level logic minimization tools such as ESPRESSO-II and BOOM, which fail to optimize the same Boolean functions even after running for a few days.

    Other authors
    See publication
  • ESPRESSO-GPU: Blazingly Fast Two-Level Logic Minimization

    IEEE

    Two-level logic minimization has found applications in new problems such as efficient realization of deep neural network inference. Important characteristics of these new applications are that they tend to produce very large Boolean functions (in terms of the supporting variables and/or initial sum of product representation) and have don't-care-sets that are much larger in size than the on-set and off-set sizes. Applying conventional single-threaded logic minimization heuristics to these…

    Two-level logic minimization has found applications in new problems such as efficient realization of deep neural network inference. Important characteristics of these new applications are that they tend to produce very large Boolean functions (in terms of the supporting variables and/or initial sum of product representation) and have don't-care-sets that are much larger in size than the on-set and off-set sizes. Applying conventional single-threaded logic minimization heuristics to these problems becomes unwieldy. This work introduces ESPRESSO-GPU, a parallel version of ESPRESSO-II, which takes advantage of the computing capabilities of general-purpose graphics processors to achieve a huge speedup compared to existing serial implementations. Simulation results show that ESPRESSO-GPU achieves an average speedup of 97x compared to ESPRESSO-II.

    Other authors
    See publication
  • Interactive Labelled Object Treemap: Visualization Tool for Multiple Hierarchies

    FICTA (1) 2020

    Visualizing multiple hierarchies is necessary for a variety of applications., i.e. for a given set of objects, to identify object types as well as the relationship between different objects (whether objects are related to one other or not). As the simplest solution, two separate tree diagrams (object tree and taxonomy tree) can be used to display object connections and object types. We have designed an interactive visualization technique that effectively conveys both the necessary information…

    Visualizing multiple hierarchies is necessary for a variety of applications., i.e. for a given set of objects, to identify object types as well as the relationship between different objects (whether objects are related to one other or not). As the simplest solution, two separate tree diagrams (object tree and taxonomy tree) can be used to display object connections and object types. We have designed an interactive visualization technique that effectively conveys both the necessary information using a single representation. ‘Labeled Object treemap’ is a very well-studied technique for visualizing multiple hierarchies in which objects are connected if and only if their corresponding set labels are disjoint and object types can be identified easily by the background structure, treemap. In this paper, we have designed an interactive version of this technique. In our interactive solution, for the given set of object types, the user can provide any size of input tree in the given textbox. A unique set label is generated for each node, and nodes are distributed and displayed (as small red circles) according to their object types in the rectangle areas of the treemap. Four checkboxes are provided to offer various features. These features are discussed in detail in the paper. Our proposed interactive visualization technique has all the good features of the existing ‘labelled object ‘Treemap’ technique including single representation, high compactness, cluster identification, etc., and solves the issues of edge crossings and continuity.

    Other authors
    See publication
  • S-Birds Avengers: A Dynamic Heuristic Engine-Based Agent for the Angry Birds Problem

    IEEE Transactions on Computational Intelligence and AI in Games

    Angry Birds is a popular video game in which a set
    of birds has to perform sling shots (bird shots) so as to kill pigs
    that are protected by a structure composed of different building
    blocks. The fewer birds we use and the more blocks we destroy,
    the higher the score we achieve. AIBirds competition is an AI challenge
    where an intelligent bot has to be developed that plays the
    game without human intervention. In this paper, we describe the
    approach implemented in the bot…

    Angry Birds is a popular video game in which a set
    of birds has to perform sling shots (bird shots) so as to kill pigs
    that are protected by a structure composed of different building
    blocks. The fewer birds we use and the more blocks we destroy,
    the higher the score we achieve. AIBirds competition is an AI challenge
    where an intelligent bot has to be developed that plays the
    game without human intervention. In this paper, we describe the
    approach implemented in the bot, s-birds Avengers, that participated
    in ECAI AIBirds 2014. Heuristic techniques were designed
    to analyze unseen structures using various structural parameters
    and then to discover their vulnerable points using prior parameter
    learning training algorithm. The bot then uses this to decide where
    to hit the structure with the birds.

    Other authors
    See publication

Courses

  • Analysis of Algorithms

    CSCI-570

  • Combinatorial algorithms

    -

  • Data analysis and Visualisation

    -

  • Data mining and warehousing

    -

  • Database management system

    -

  • Deep Learning and its Applications

    CSCI-566

  • Foundations of Artificial Intelligence

    CSCI 561

  • Introduction to data structures

    -

  • Modelling and simulation

    -

  • Operating Systems

    CSCI 402

  • Probabilistic methods

    -

  • Probability and statistics

    -

Projects

  • Deep Visual Dialogue model

    -

    As a part of course CSCI-566 (Deep Learning and its applications) we have built an AI bot that can converse in natural language. Given an image, the bot generates a caption for the image and then the user can ask questions pertaining to the image. We trained the bot using a GAN based approach and came up with a novel loss function that helps in reducing the language bias of the bot towards short, generic but semantically opposite answers. More details are present in our blog.

    Other creators
    See project
  • Parallel implementation of Expectation Maximization Algorithm

    -

Recommendations received

2 people have recommended Hitarth

Join now to view

View Hitarth’s full profile

  • See who you know in common
  • Get introduced
  • Contact Hitarth directly
Join to view full profile

Other similar profiles

Explore top content on LinkedIn

Find curated posts and insights for relevant topics all in one place.

View top content

Add new skills with these courses