-
Notifications
You must be signed in to change notification settings - Fork 0
Home
We apply a probably approximately correct learning algorithm for multiplicity automata to generate quantitative models of system behaviors with a statistical guarantee. Using the generated model, we give two analysis algorithms to estimate the minimum and average values of system behaviors. We show how to apply the learning algorithm even when the alphabet is not fixed. The experimental result is encouraging; the estimation made by our approach is almost as precise as the exact reference answer obtained by a brute-force enumeration.
For more detail information, please see our thesis "Quantitative Analysis using Multiplicity Automata Learning."
## DownloadMALL consists of the following 3 folders:
Folder | Description |
---|---|
Src/main | The core library code in Matlab |
Src/experiment | The experiment results presented in the thesis. |
Src/enumeration | The code to generate the enumeration results. |
You can download the latest version of MALL from git:
git clone https://github.com/fmlab-iis/ma-learning.git
## Prerequisite & Installation- Installed Matlab 2016a with Symbolic Math Toolbox.
- Perl 5.24.1
The codes on git are ready to use. You can simply add the path of the directory in the Matlab command window.
## TutorialSRC means the path where you clone MALL.
The core function of this learning algorithm is the "order_comp" The function is comprised of the following formation:
[timeout, time_each, state, counter_mem, mem,eq_mem] = order_comp( order, distri, probability )
Open the Matlab
For the result of Table1, type the following command in Matlab command line:
cd('SRC/experiment/Table1')
experiment
For the result of Table2, type the following command in Matlab command line:
cd('SRC/experiment/Table2')
experiment
For the result of Table3, type the following command in Matlab command line:
cd('SRC/experiment/Table3')
experiment
For the result of Table4, type the following command in Matlab command line:
cd('SRC/experiment/Table4')
experiment
For the result of Table5, type the following command in Matlab command line:
cd('SRC/experiment/Table5')
experiment
For the result of Table6, type the following command in Matlab command line:
cd('SRC/experiment/Table6')
experiment
For the result of Table7, type the following command in Matlab command line:
cd('SRC/experiment/Table7')
experiment
For the result of enumeration of Table 5, type the following command in Matlab command line:
cd('SRC/enumeration/Table5')
os_oracle
For the result of enumeration of Table 6, type the following command in Matlab command line:
cd('SRC/enumeration/Table6')
mc_oracle
For the result of enumeration of Table 7, type the following command in Matlab command line:
cd('SRC/enumeration/Table7')
web_oracle
Here are some experiment results and detail information of the tables.
The following table is the experiment result of prediction of the Calculator experiment.
The following table is the experiment result of the Calculator experiment.
The following table is the experiment result of different distribution in the Calculator experiment.
The following table is the experiment result of Calculator experiment with different alphabet symbol size.
The following table is the Operating System Scheduling experiment.
The following table is the Missionary & Cannibals experiment.
The following table is the Amount of Data Transmission in a Website experiment.