Skip to content
Snippets Groups Projects
README.md 3.41 KiB
Newer Older
  • Learn to ignore specific revisions
  • Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    # Physical Computing Design Tools
    
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ![](02_Presentation/191202_demo.png)
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ## Description
    Repository for DICE design tools explorations.
    
    Topics include:
    - Programming strategies for spacial computing
        - Data flow programming and [Distributed Deep Neural Networks](https://gitlab.cba.mit.edu/amiraa/ddnn)
        - Physics Simulation 
        - Trusted Systems
    - Reconfiguration strategies for DICE pieces 
        - CAM tools and path planing:
            - Desktop (external) assembler 
            - Swarm assembly and manipulation
    
    ----
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ## Demo Links
    
    
    - **"Physical Computing Interface"** demo lives [here.](https://amiraa.pages.cba.mit.edu/physical-computing-design-tools/01_Code/physical_computing_interface/index.html)
    
    - "Performance Calculation Graph" demo lives [here.](https://amiraa.pages.cba.mit.edu/physical-computing-design-tools/01_Code/physical_computing_interface/probabilisticProjections/index.html)
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [Distributed Deep Neural Networks](https://gitlab.cba.mit.edu/amiraa/ddnn)
    
    - UR10 voxel Assembly [demo.](https://amiraa.pages.cba.mit.edu/physical-computing-design-tools/01_Code/physical_computing_interface/assembly/standAloneAssembly.html)
    
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ----
    ## Progress
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ![](02_Presentation/191202_demo.mp4)
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    
    
    ### Applications
    
    - The idea is to find an application that needs reconfiguration white running, examples:
      - Gamalon probabilistic programming
      - more computing power while assembling voxels
      -  Neural Networks?
      
    
    #### Voxel Simulation
    
    
    ![](02_Presentation/200114_simulation.PNG)
    
    
    #### Probabilistic Programming
    
    - [Gamalon](https://gamalon.com/)
    
    - Using Dice pieces to do **inference** 
      - in order to find the best configuration based on its performance
    
      - other tasks
    - [WebPPL: ](http://webppl.org/)  probabilistic programming for the web
    - Probabilistic Graphical Models
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ### Capabilities and Updates
    -  Design
        -  Parametric grid definition (cubic, hexagonal, dice)
    -  Assembly/timeline
        -  Timeline for future morphing computing
        -  UR10 
    -  Graph
        -  Hierarchy
        -  Automatic neighborhood
        -  highlights
    -  Computing
        -  Asynchronous code propagation (distributed max example)
        -  Simple test case find max value distributed
        -  Min cut max flow concept study neighborhood 
    -  Improved UI and integration
        -  Radial menu
        -  Json propagation
        -  Highlight selected node
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ## Desired Milestones
    
    - [ ] Assembly
      - [ ] Swarm construction
    - [ ] Computation
      - [ ] Morphing code
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
      - [ ] Real simulation/message passing analysis
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
      - [ ] Computation Optimization
        - [ ] Restructuring code and automatically divide into distributed
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
        - [ ] show alternatives and bottlenecks
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [ ] Auto compilation/export to dice modules
    - [ ] Simulation portal
    - [ ] Case Studies
      - [ ] Neural networks
      - [ ] Bayesian optimization
      - [ ] Distributed optimization
      - [ ] Voxel design
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [ ] Scaling
      - [ ] stress testing scaling
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    ## TODOS:
    
    - [x] Grid Systems
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [ ] Documentation
      - [ ] in depth documentation of how to do everything
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [ ] Reset Grid/button
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed
    - [ ] Assembly
      - [ ] fix errors
    - [ ] Add real Dice info
      - [ ] computation delay and communaction cost
      - [ ] CAD?
    - [ ] Select
      - [ ] improve selected visualization
      - [ ] when selecting group show bounding box
    - [ ] Hierarchy
      - [ ] place multiple voxels
      - [ ] change code of mutiple voxels
      - [ ] select multiple dice pieces
      - [ ] create groups
    
    Amira Abdel-Rahman's avatar
    Amira Abdel-Rahman committed