UltraDES 2.1.0

UltraDES is a library for modeling, analysis and control of Discrete Event Systems.

There is a newer version of this package available.
See the version list below for details.
Install-Package UltraDES -Version 2.1.0
dotnet add package UltraDES --version 2.1.0
<PackageReference Include="UltraDES" Version="2.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add UltraDES --version 2.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

UltraDES

UltraDES is a library for modeling, analysis and control of Discrete Event Systems. It has been developed at LACSED | UFMG (http://www.lacsed.eng.ufmg.br).

UltraDES

Before using UltraDES

Requirements:

  • Supported OS: Windows, or virtual machine on Linux.
  • Your computer must have a installed version of Microsoft Visual Studio (2014 or later version).
  • Download the latest version of UltraDES (https://github.com/lacsed/UltraDES.git), by clicking on Clone or Download and then Download Zip.

First steps

  • Extract all the files of the zip or tar.gz file in your working directory.
  • Double click on the UltraDES.sln file.
  • Congratulations, you are ready to use UltraDES!

What is inside

Initially you are going to find four projects in the Solution Explorer:

  • Other examples
  • Test - Modular Supervisor
  • Test - Monolithic Supervisor
  • UltraDES (non executable)

To read the codes, click on the file .cs inside each project.

How to run the projects

  • Before running the code, you need to set the project as Startup Project.
    • On Solution Explorer select the project you want to run.
    • On the menu Project, select Set as Startup Project - Project>Set as Startup Project.
  • To run the code, click on Debug menu - Debug>Start Debugging.

Creating a new project

  • On the menu File, select New>Project.
  • On the New Project window:
    • Select Visual C#>Console App (.NET Framework).
    • Give your project a name.
    • The location of your project should be the same as the other UltraDES projects.
    • In the Solution field, choose Add to Solution.
    • Click on OK to create your project.
  • Remember to set your project as Startup Project (see How to run the projects).
  • Congratulations, you just created your project!

Inside your project

  • In the Solution Explorer, double click on your project.
  • Inside your project, right click on the item References>Add Reference...
    • On the Reference Manager window, select Projects>Solution and select UltraDES.
    • Click Ok to close the window.
  • To write your code, click on the file .cs inside your project.
  • On the .cs file of your project, add the UltraDES library in the header (using UltraDES;).

In your main function, add the code below to create and see your first Automaton.

Creating States

State s1 = new State("s1", Marking.Marked);
State s2 = new State("s2", Marking.Unmarked);

Creating Events

Event e1 = new Event("e1", Controllability.Controllable);
Event e2 = new Event("e2", Controllability.Uncontrollable);

Event e3 = new Event("e3", Controllability.Controllable);
Event e4 = new Event("e4", Controllability.Uncontrollable);

Creating Transitions

var t = new Transition(s1, e1, s2);

Creating an Automaton

var G1 = new DeterministicFiniteAutomaton(new[]
  {
    new Transition(s1, e1, s2), 
    new Transition(s2, e2, s1)
  }, s1, "G");
  
  var G2 = new DeterministicFiniteAutomaton(new[]
  {
    new Transition(s1, e3, s2), 
    new Transition(s2, e4, s1)
  }, s1, "G");

Operations with Automata

Making a Parallel composition


var Gp = G1.ParallelCompositionWith(G2); 

Showing the Automaton

 G.drawSVGFigure("G", true);

Other examples

For more examples on how to create more complex automata or how to use the methods, read the other projects.

UltraDES

UltraDES is a library for modeling, analysis and control of Discrete Event Systems. It has been developed at LACSED | UFMG (http://www.lacsed.eng.ufmg.br).

UltraDES

Before using UltraDES

Requirements:

  • Supported OS: Windows, or virtual machine on Linux.
  • Your computer must have a installed version of Microsoft Visual Studio (2014 or later version).
  • Download the latest version of UltraDES (https://github.com/lacsed/UltraDES.git), by clicking on Clone or Download and then Download Zip.

First steps

  • Extract all the files of the zip or tar.gz file in your working directory.
  • Double click on the UltraDES.sln file.
  • Congratulations, you are ready to use UltraDES!

What is inside

Initially you are going to find four projects in the Solution Explorer:

  • Other examples
  • Test - Modular Supervisor
  • Test - Monolithic Supervisor
  • UltraDES (non executable)

To read the codes, click on the file .cs inside each project.

How to run the projects

  • Before running the code, you need to set the project as Startup Project.
    • On Solution Explorer select the project you want to run.
    • On the menu Project, select Set as Startup Project - Project>Set as Startup Project.
  • To run the code, click on Debug menu - Debug>Start Debugging.

Creating a new project

  • On the menu File, select New>Project.
  • On the New Project window:
    • Select Visual C#>Console App (.NET Framework).
    • Give your project a name.
    • The location of your project should be the same as the other UltraDES projects.
    • In the Solution field, choose Add to Solution.
    • Click on OK to create your project.
  • Remember to set your project as Startup Project (see How to run the projects).
  • Congratulations, you just created your project!

Inside your project

  • In the Solution Explorer, double click on your project.
  • Inside your project, right click on the item References>Add Reference...
    • On the Reference Manager window, select Projects>Solution and select UltraDES.
    • Click Ok to close the window.
  • To write your code, click on the file .cs inside your project.
  • On the .cs file of your project, add the UltraDES library in the header (using UltraDES;).

In your main function, add the code below to create and see your first Automaton.

Creating States

State s1 = new State("s1", Marking.Marked);
State s2 = new State("s2", Marking.Unmarked);

Creating Events

Event e1 = new Event("e1", Controllability.Controllable);
Event e2 = new Event("e2", Controllability.Uncontrollable);

Event e3 = new Event("e3", Controllability.Controllable);
Event e4 = new Event("e4", Controllability.Uncontrollable);

Creating Transitions

var t = new Transition(s1, e1, s2);

Creating an Automaton

var G1 = new DeterministicFiniteAutomaton(new[]
  {
    new Transition(s1, e1, s2), 
    new Transition(s2, e2, s1)
  }, s1, "G");
  
  var G2 = new DeterministicFiniteAutomaton(new[]
  {
    new Transition(s1, e3, s2), 
    new Transition(s2, e4, s1)
  }, s1, "G");

Operations with Automata

Making a Parallel composition


var Gp = G1.ParallelCompositionWith(G2); 

Showing the Automaton

 G.drawSVGFigure("G", true);

Other examples

For more examples on how to create more complex automata or how to use the methods, read the other projects.

  • .NETStandard 2.0

    • No dependencies.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
2.1.2.3 87 8/27/2019
2.1.2.1 202 5/2/2019
2.1.2 164 4/23/2019
2.1.1.3 170 9/27/2018
2.1.0 334 4/12/2018