Skip to content

nimit-singhania/mosaic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MOSAIC

Author

Nimit Singhania
University of Pennsylvania

What is it?

This is a tool to learn piecewise affine models from input-output data. It is written in MATLAB. Technical details of the tool can be found in the following paper:

  • R. Alur, N. Singhania, Precise Piecewise Affine Models from Input-Output Data, EMSOFT'14

Running

Run start.m in MATLAB inorder to add all required files in your current path.

Run example/runExample.m to generate and plot the model for a simple example used in EMSOFT'14 paper.

Run mosaic-example/testMosaic.m and then mosaic-example/plotMosaic.m for a FUN experiment!

Run qualtiy-tests/runQualityTests.m to generate synthetic data and evaluate performance of tool on this data. Run quality-tests/plotN.m and quality-tests/plotSize.m to generate plots from the collected statistics.

Run real-data-tests/driveFerrari.m to evaluate the tool on real-data.

Usage

See code/genPiecewiseAffineModel.m to understand details of the model generated by the tool. See example/runExample.m, quality-tests/learnModel.m and quality-tests/testModel.m to understand how to learn model and test the model using algorithm presented in the paper.

Organization

  • benchmarks :- Benchmarks used for evaluating the tool in the paper.

    • functions :- 4 piecewise linear functions and 3 smooth non-linear functions used to create synthetic data.
    • pick-and-place-data :- Data from an experimental study by Juloski et. al.
  • code :- Implementation of algorithm described in the paper.

    • analysis tools :- It consists of some tools to analyze the learnt models.
  • example :- Code to run tool on a simple example used in EMSOFT'14 paper.

  • mosaic-example :- Code to run tool on the mosaic example!

  • quality-tests :- Code to generate synthetic data from 4 piecewise linear functions and 3 smooth non-linear functions and evaluate the performance of the tool.

  • real-data-tests :- Code to evaluate the tool using pick-and-place-data

  • stats :- Stores all the statistics generated for synthetic and real data. Used for plotting.

  • plots :- Stores all the graphs generated using the collected statistics

Licensing

Please see the file called LICENSE.

Contacts

Please contact Nimit Singhania (nimits@seas.upenn.edu) for any queries or comments.
Please report any bugs at https://github.com/nimit-singhania/mosaic/issues.

About

A tool to learn Piecewise Affine Models from Input-Output Data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published