Adapt to new bot structure

This commit is contained in:
Marco Realacci 2024-04-04 23:24:06 +02:00
parent ff7e08ada9
commit 3f84e1d831
3414 changed files with 41525 additions and 709 deletions

View file

@ -0,0 +1,21 @@
<pre>
model Env
Integer x; // Pulsante premuto dall'utente (0 nessun pulsante)
Real r1024;
Integer state1024[Modelica.Math.Random.Generators.Xorshift1024star.nState];
algorithm
when initial() then
state1024 := Modelica.Math.Random.Generators.Xorshift1024star.initialState(614657, 30020);
x := 0;
r1024 := 0;
elsewhen sample(0,1) then
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.5)
then x := 0;
else
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.4) then x := 1; else x:= 0; end if;
end if;
end when;
end Env;
</pre>

View file

@ -0,0 +1,4 @@
L'input ad un sistema è costituito da un utente (umano) che preme due pulsanti etichettati, rispettivamente, con 1 ed 2.
L'utente può anche decidere di non premere alcun pulsante.
Con probabilità 0.2 l'utente preme il pulsante 1, con probabilità 0.3 l'utente preme il pulsante 2, con probabilità 0.5 non fa nulla (pulsante 0 per convenzione).
Quale dei seguenti modelli Modelica fornisce un modello ragionevole per l'utente di cui sopra?

View file

@ -0,0 +1,21 @@
<pre>
model Env
Integer x; // Pulsante premuto dall'utente (0 nessun pulsante)
Real r1024;
Integer state1024[Modelica.Math.Random.Generators.Xorshift1024star.nState];
algorithm
when initial() then
state1024 := Modelica.Math.Random.Generators.Xorshift1024star.initialState(614657, 30020);
x := 0;
r1024 := 0;
elsewhen sample(0,1) then
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.5)
then x := 0;
else
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.3) then x := 0; else x:= 1; end if;
end if;
end when;
end Env;
</pre>

View file

@ -0,0 +1,21 @@
<pre>
model Env
Integer x; // Pulsante premuto dall'utente (0 nessun pulsante)
Real r1024;
Integer state1024[Modelica.Math.Random.Generators.Xorshift1024star.nState];
algorithm
when initial() then
state1024 := Modelica.Math.Random.Generators.Xorshift1024star.initialState(614657, 30020);
x := 0;
r1024 := 0;
elsewhen sample(0,1) then
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.5)
then x := 0;
else
(r1024,state1024) := Modelica.Math.Random.Generators.Xorshift1024star.random(pre(state1024));
if (r1024 <= 0.2) then x := 1; else x:= 0; end if;
end if;
end when;
end Env;
</pre>