From 41b99482a1f6c648d7cf2fe1287b32f8e3ef88c7 Mon Sep 17 00:00:00 2001 From: advan <advan@JinHong.ern.nps.edu> Date: Tue, 17 Sep 2024 11:18:06 -0700 Subject: [PATCH] Final Project --- .../Yu/MyViskitProjects/FinalProject.zip | Bin 0 -> 24744 bytes .../FinalProject/AnalystReports/Viskit.ico | Bin 0 -> 2238 bytes .../Assemblies/examples/TestAssembly.xml | 42 ++++ .../EventGraphs/examples/ArrivalProcess.xml | 27 +++ .../examples/ArrivalProcessTwo.xml | 27 +++ .../EventGraphs/examples/TwoTypeServer.xml | 102 +++++++++ .../classes/examples/ArrivalProcess.class | Bin 0 -> 1600 bytes .../classes/examples/EntityCreator.class | Bin 0 -> 787 bytes .../classes/examples/ServerGeneric.class | Bin 0 -> 3297 bytes .../build/classes/examples/TestAssembly.class | Bin 0 -> 2833 bytes .../classes/examples/TwoTypeServer.class | Bin 0 -> 3397 bytes .../examples/TwoTypeServerAssembly.class | Bin 0 -> 2958 bytes .../build/src/examples/ArrivalProcess.java | 72 +++++++ .../build/src/examples/EntityCreator.java | 42 ++++ .../build/src/examples/ServerGeneric.java | 160 ++++++++++++++ .../build/src/examples/TestAssembly.java | 106 ++++++++++ .../build/src/examples/TwoTypeServer.java | 196 ++++++++++++++++++ .../src/examples/TwoTypeServerAssembly.java | 108 ++++++++++ .../FinalProject/viskitProject.xml | 27 +++ 19 files changed, 909 insertions(+) create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject.zip create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/AnalystReports/Viskit.ico create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/Assemblies/examples/TestAssembly.xml create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/EntityCreator.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ServerGeneric.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TestAssembly.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServerAssembly.class create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ArrivalProcess.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/EntityCreator.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ServerGeneric.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TestAssembly.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServer.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServerAssembly.java create mode 100644 assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/viskitProject.xml diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject.zip b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject.zip new file mode 100644 index 0000000000000000000000000000000000000000..e2add3454d15bcca8457489ddc78a17d94aa0b74 GIT binary patch literal 24744 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 literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/AnalystReports/Viskit.ico b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/AnalystReports/Viskit.ico new file mode 100644 index 0000000000000000000000000000000000000000..c9d5908c91e327600695feac75e406ee99fbb30a GIT binary patch literal 2238 zcmeHHNs`+z3<M+^qBOQ=&z{sAbJqv*8vThs$Yb;;rkfDyrD}4Vli{MRZm=8RVu>g| zZ*PL{D1W2KClUFL0ZRU0kbf_7&XV&gc}<e|ysok){$k9t<diTL$qU9TvM#_2_<6xR z>iCO+`75*;g;wOU%#sRT;0w<Me$XcRCg^i|ucaG*+kx8-eB=)B1!9*4Nwo+P07J!B zkS`eOTb}bc=Pa0ShBUkIm-8&`NO-6M1%sX96V!IQZ#%@Ga4E?$neJYYNyL|`hfsf+ zLL2a{>gnCU=~bgL^nK6QrpT6m1;HLr9ok2rzVB3R%ikBGuBa=hzi;}z6OX<yqdUXQ zy#CQ~UzRE|I{ZQX_i5Vi@0@^PDWMJr<`Gz|6Qg5MBmTT0c@pcsf~fOhqG1Z{KnxB; zJk~AtCRL7A|BMZvw$>^~_~O8V?V+uU2kFO&-Smpj!_(RMPd~?ToW?sppKzF_I7UF% zTj)Fn^cTQYh$B~H&l_=I5>fNDe$^jB#6g+WJfANNd67=~T3?$X?iag0>3O?O4IRAy zHoeu4F?QWU<b@2_me|Gk5F?he5va-AS-eUIji~54%MIm!qy@F7(<=0Z9V!>eCb)ur NKL7uJwo)Jc@DGr|N>2a) literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/Assemblies/examples/TestAssembly.xml b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/Assemblies/examples/TestAssembly.xml new file mode 100644 index 0000000000..670bf5e342 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/Assemblies/examples/TestAssembly.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<SimkitAssembly name="TestAssembly" version="1.0" package="examples" xsi:noNamespaceSchemaLocation="http://diana.nps.edu/Simkit/assembly.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <SimEntity name="arrivalProcess" type="examples.ArrivalProcess" description=""> + <FactoryParameter factory="simkit.random.RandomVariateFactory" type="simkit.random.RandomVariate"> + <TerminalParameter name="" value="Exponential" type="java.lang.String"/> + <TerminalParameter name="" value="1.6" type="double"/> + </FactoryParameter> + <Coordinate x="120.0" y="190.0"/> + </SimEntity> + <SimEntity name="twoTypeServer" type="examples.TwoTypeServer" description=""> + <TerminalParameter name="numberServersA" value="1" type="int"/> + <TerminalParameter name="numberServersB" value="2" type="int"/> + <FactoryParameter factory="simkit.random.RandomVariateFactory" type="simkit.random.RandomVariate"> + <TerminalParameter name="" value="Exponential" type="java.lang.String"/> + <TerminalParameter name="" value="0.9" type="double"/> + </FactoryParameter> + <FactoryParameter factory="simkit.random.RandomVariateFactory" type="simkit.random.RandomVariate"> + <TerminalParameter name="" value="Exponential" type="java.lang.String"/> + <TerminalParameter name="" value="1.2" type="double"/> + </FactoryParameter> + <Coordinate x="360.0" y="190.0"/> + </SimEntity> + <PropertyChangeListener name="numAvailServerAStat" type="simkit.stat.SimpleStatsTimeVarying" mode="replicationStat" meanStatistics="false" countStatistics="true" description=""> + <TerminalParameter name="p[0] : " value="numberAvailableServersA" type="java.lang.String"/> + <Coordinate x="360.0" y="290.0"/> + </PropertyChangeListener> + <PropertyChangeListener name="queueStat" type="simkit.stat.SimpleStatsTimeVarying" mode="replicationStat" meanStatistics="false" countStatistics="true" description=""> + <TerminalParameter name="p[0] : " value="queue" type="java.lang.String"/> + <Coordinate x="510.0" y="190.0"/> + </PropertyChangeListener> + <PropertyChangeListener name="numAvailServerBStat" type="simkit.stat.SimpleStatsTimeVarying" mode="replicationStat" meanStatistics="false" countStatistics="true" description=""> + <TerminalParameter name="p[0] : " value="numberAvailableServersB" type="java.lang.String"/> + <Coordinate x="360.0" y="80.0"/> + </PropertyChangeListener> + <PropertyChangeListenerConnection property="numberAvailableServersA" listener="numAvailServerAStat" source="twoTypeServer" description=""/> + <PropertyChangeListenerConnection property="queue" listener="queueStat" source="twoTypeServer" description=""/> + <PropertyChangeListenerConnection property="numberAvailableServersB" listener="numAvailServerBStat" source="twoTypeServer" description=""/> + <Adapter name="adptr" eventHeard="Arrival" eventSent="Arrival" from="arrivalProcess" to="twoTypeServer" description=""/> + <Output entity="arrivalProcess"/> + <Output entity="twoTypeServer"/> + <Schedule stopTime="100.0" verbose="false" saveReplicationData="false"/> +</SimkitAssembly> diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml new file mode 100644 index 0000000000..b22b9b36c0 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<SimEntity name="ArrivalProcess" package="examples" version="1.0" author="advan" extend="SimEntityBase" xsi:noNamespaceSchemaLocation="http://diana.nps.edu/Simkit/simkit.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <Parameter name="interarrivalTime" type="simkit.random.RandomVariate"> + <Comment></Comment> + </Parameter> + <StateVariable name="numberArrivals" type="int"> + <Comment></Comment> + </StateVariable> + <Event name="Run" description="This event is fired first to facilitate initialization of all simulation state variables"> + <Schedule delay="interarrivalTime.generate()" event="Arrival" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="30.0" y="60.0"/> + </Event> + <Event name="Arrival"> + <Comment></Comment> + <StateTransition state="numberArrivals"> + <Assignment value="numberArrivals + 1"/> + </StateTransition> + <Schedule delay="interarrivalTime.generate()" event="Arrival" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="230.0" y="60.0"/> + </Event> +</SimEntity> diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml new file mode 100644 index 0000000000..b22b9b36c0 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<SimEntity name="ArrivalProcess" package="examples" version="1.0" author="advan" extend="SimEntityBase" xsi:noNamespaceSchemaLocation="http://diana.nps.edu/Simkit/simkit.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <Parameter name="interarrivalTime" type="simkit.random.RandomVariate"> + <Comment></Comment> + </Parameter> + <StateVariable name="numberArrivals" type="int"> + <Comment></Comment> + </StateVariable> + <Event name="Run" description="This event is fired first to facilitate initialization of all simulation state variables"> + <Schedule delay="interarrivalTime.generate()" event="Arrival" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="30.0" y="60.0"/> + </Event> + <Event name="Arrival"> + <Comment></Comment> + <StateTransition state="numberArrivals"> + <Assignment value="numberArrivals + 1"/> + </StateTransition> + <Schedule delay="interarrivalTime.generate()" event="Arrival" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="230.0" y="60.0"/> + </Event> +</SimEntity> diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml new file mode 100644 index 0000000000..e17ab0cc4d --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<SimEntity name="TwoTypeServer" package="examples" version="1.0" author="advan" extend="SimEntityBase" xsi:noNamespaceSchemaLocation="http://diana.nps.edu/Simkit/simkit.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <Parameter name="numberServersA" type="int"> + <Comment></Comment> + </Parameter> + <Parameter name="numberServersB" type="int"> + <Comment></Comment> + </Parameter> + <Parameter name="serviceTimeA" type="simkit.random.RandomVariate"> + <Comment></Comment> + </Parameter> + <Parameter name="serviceTimeB" type="simkit.random.RandomVariate"> + <Comment></Comment> + </Parameter> + <StateVariable name="numberAvailableServersA" type="int"> + <Comment></Comment> + </StateVariable> + <StateVariable name="numberAvailableServersB" type="int"> + <Comment></Comment> + </StateVariable> + <StateVariable name="queue" type="int"> + <Comment></Comment> + </StateVariable> + <Event name="Run" description="This event is fired first to facilitate initialization of all simulation state variables"> + <Comment></Comment> + <StateTransition state="numberAvailableServersA"> + <Assignment value="getNumberServersA()"/> + </StateTransition> + <StateTransition state="numberAvailableServersB"> + <Assignment value="getNumberServersB()"/> + </StateTransition> + <StateTransition state="queue"> + <Assignment value="0"/> + </StateTransition> + <Code></Code> + <Coordinate x="40.0" y="60.0"/> + </Event> + <Event name="Arrival"> + <Comment></Comment> + <StateTransition state="queue"> + <Assignment value="queue + 1"/> + </StateTransition> + <Schedule delay="0.0" event="StartServiceA" condition="getNumberAvailableServersA() > 0" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Schedule delay="0.0" event="StartServiceB" condition="getNumberAvailableServersA() == 0 && getNumberAvailableServersB() > 0" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="40.0" y="180.0"/> + </Event> + <Event name="StartServiceA"> + <Comment></Comment> + <StateTransition state="numberAvailableServersA"> + <Assignment value="numberAvailableServersA - 1"/> + </StateTransition> + <StateTransition state="queue"> + <Assignment value="queue - 1"/> + </StateTransition> + <Schedule delay="serviceTimeA.generate()" event="EndServiceA" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="180.0" y="100.0"/> + </Event> + <Event name="StartServiceB"> + <Comment></Comment> + <StateTransition state="numberAvailableServersB"> + <Assignment value="numberAvailableServersB - 1"/> + </StateTransition> + <StateTransition state="queue"> + <Assignment value="queue - 1"/> + </StateTransition> + <Schedule delay="serviceTimeB.generate()" event="EndServiceB" priority="DEFAULT"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="180.0" y="260.0"/> + </Event> + <Event name="EndServiceA"> + <Comment></Comment> + <StateTransition state="numberAvailableServersA"> + <Assignment value="numberAvailableServersA + 1"/> + </StateTransition> + <Schedule delay="0.0" event="StartServiceA" condition="queue > 0" priority="HIGH"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="350.0" y="100.0"/> + </Event> + <Event name="EndServiceB"> + <Comment></Comment> + <StateTransition state="numberAvailableServersB"> + <Assignment value="numberAvailableServersB + 1"/> + </StateTransition> + <Schedule delay="0.0" event="StartServiceB" condition="queue > 0" priority="HIGH"> + <Comment></Comment> + </Schedule> + <Code></Code> + <Coordinate x="350.0" y="260.0"/> + </Event> +</SimEntity> diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class new file mode 100644 index 0000000000000000000000000000000000000000..9ae9ff1c1968f2c75a16bcf3f92168383699f3f3 GIT binary patch literal 1600 zcmah}ZC4XV6n-WUHi;`pK-3}yd<_dt>Pu}k)EWqAG%81se(*~NGNxmbUC!=6%YW*J z>QVY~PWuD;qda{kyGTqt^z1n^vv=-&?sMPf-}it017Hb{b4X#p!JvyYh6KhV-Tq0N z(z<T1_(q%kB^fD!p+)U$b5~%XFt?dQ23ZF=7boBfoKe5X_D)MhrAip;J=t0dgKZT> z0%MUfHQ%UE#upp9O{|$hJ#i9BzY(-c&pO+t47D_>Z1GbVb}?f4q(eoJ3`PZ<1U^gm zV=l&VTHuuKgP%GU{RGb7tb=ndKEtHI<S|SHGEL=^ydi1EUCm+&pF5a#F@srwk;HZ_ z)IrEhkzsXZweq~aAuxJK;_$NU;3Db1l6$h$l76%FbnBJcHa3-)U0lIcf$Yyxo2qI_ zB0VhBk5t!9sQqTS+K2g~ODV=H&mAh+0`4i_l&y<77arzGtEtSB-S(CWlU%Y$jI3r; z`h|-kN&>@vkAkRWP|V>vZaBE<;w#)D&=EUZ;HC;0Jxjl<p1u^ADAeY<s3jU5Cf~TY zjXMJQmpW8zlpPhC{pBB-5hl6*iKx49k`VhPpUOk0OBY>y3wEtz<CeDh#tYrdlFSMW zE(Z<Xj?}fU;skBTtrjKcp6zlB+G<lrnu3b&2Syql_{`kt`ks#Lu&l|D;Oz6qa;MCm z_4&v9wAtUWd(vdZxZR5%wL7&M0e!IijUXus2Zwz72WOhxkLg!>&X^z$Ng%f#?1tNF zRof`W669nui?({0Wzkc71XBDsOgs(R4&a^zX<>-+@Ax;%Kfyii{SNV(2Z4KB?UVxN zX*7ijPZN|cQMUX7A|hb5v#(H^hRfALdAzq)ISb{@AHX@n8^!={rinL00@f)XfW)qw z!pS3(n8Ib6T%qFX2lbns6L8kcpYq-!|0gB{-r)Se-?(sqOW*e*%=1xLAj16*2o0Vr z(M9h7g+-4b3xhwr!-ALpa`F#cvr=v`-q-)@Wr8UHu5rE2pl;w2hp3EO7_|>*65@p< zHACL~JLG#A-lpvxYCb?M(VyZTSA_xoM)<fYHe+DZ3p?;!ZPvS07k=$gtx)M9?)Ir3 PpxlePN~K3MPoe%FVE$Zy literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/EntityCreator.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/EntityCreator.class new file mode 100644 index 0000000000000000000000000000000000000000..223b0d32e9af9d75e3599736e4c729b051a3bb1f GIT binary patch literal 787 zcmZWn%We}v5UloVZR5lboPZrdFweCQ_{L=sk`pHfWI}|4QIyj-9$6FiVeO6$`77X% zNFewCJ_^y3-3TXKrl-4Ws%m=X_n+^-0BoaEL<(sOnG&+d5$cihJ}TWEDsR`<N}p|u zND^`{m9O+GLfUSR^2ifb;&v|#)k3%h6miQ!se~1*63Pk7L8yX|NeEVdcdz$;a7d^Q zZZsVW6+-1yEJW88{<Qmcd@4`0g&M0Q*jTKHD$+%)Vco)=67HfwSeKuLH*;mwjWIi+ z6gmhAg-=51zH|kvzqSYe=!ZH~{?zIJ=i_(@6nk*mS0FQwh4i&!<TpyVhfTiJRO)@< z@qFrbd+BhZK*;O_6YiD=%9s0dZ!E(@F?PAqcsJ+idUB*9#f6^l2U=(q_z_`kuuzeC zg98yVxt8G@F>?r6pEK@f_1VnC!X!wh&kB>^+ItXc_LcRx;j~ADybfY-gyJxmhbMAR z89TLWvwLo4g%)2l#eW3IfJKqx>^^5L&WK~Sa{>Cw8^RW^<{tq~25;a2?<!nxaqZzT zCy&fRc+4bpN%Dg6hNRi4S*zbr$oxe4DE$M~qYK;~o}>QZCi4~=%u9HJrwK=c&l}Ap h6NVlvLwJVG1ZJYCW;^F-elhq<zcJM2%;s7O?Y~s7uGRnm literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ServerGeneric.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ServerGeneric.class new file mode 100644 index 0000000000000000000000000000000000000000..d18e66dbc7c39b9ae85af6d3249268a450b4156b GIT binary patch literal 3297 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 an>6|ySLaQO`W5hMIgwj5`hq7_;nu%H-}1}= literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TestAssembly.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TestAssembly.class new file mode 100644 index 0000000000000000000000000000000000000000..1f69eea93b9c735d4496bb4a13bf8a50cc5ebbdd GIT binary patch literal 2833 zcmbVOX?GK46n>^nlQbO)q@@T*DJ_LGEKznWSh}HwN^29U0a+%=+jdGa6J{obxZ#5P ziaWUe0YB)6lw*(n0FV9?zxl~89-nt6O;U)Qqci8scJF)dbDz7s^XuO~{Q_VJ--XbC z#sGXOn&4N^xuDyZbtk6Tw#cQj#n`m_K3INL;6JJxy7Q=l#z^0^|9FyCc!YSi1fZ%| zg;oXY#5FCK&k8%15VliY++qtS?wI+6o)Zduk&(V>xpIw)wFoN+Q9LcIlxe%tv!1kF z#X5A*D5a+hxs<S`L_VvhHAgoMTbdd36dzErL7Le}#YsyyoEkkonwDcrZ<|y+DAlAr zS1n%1<ut44sYs1Z6<ef62Q}i_f~c`GqB&X+TNSiwmZdLf*-6Vx3)>E$N5T3^*n=yC zLG&tU8NHS_4PiLCmJMKsf;IEnf)>ka#%ydNH80YRf8eiM^0*zsPV5R`w~9T8txy~> z3#ly03D9#vOw2F}k~m(q<SF!r@G$lUuusK)98l10>p7WKOEWTNE;i-frZr2~9C1QR zJEm16z**sp8MdPtX?hrm)L4x>q;t0aT+JsBa)00WeM}QZHx9|lI;@~8a$i+1g^#G{ z$592UmdV8R+$h;{2yI6lFw52|YW;oFL9j4aIakd@F)!l6S`bzM$C=1VViL77|G*!= z$>Vqbz@PivBZL8*kboakFc29VTXs^9xc>VJC73Y<O<E@JSV5d(&dNn0E9?msr!m2b zXPko>E$;|R!TEYoR#RI}LQM|-!xu?!1D;edCA)lW+7e9tGIhGJgGeZ7GYYxE1x?R- z)D6ZR%?V<fg-rqb&Xs8_Ku>ND%21wGk;GXAJq(4-kQbIy9G+uUi*em{gdwb9(=b@x z>{bOw{%4Gm&Sw-fUnz)!@NiuqyY6ccm+rwn<msgT75k9nBcnn{J~n%N)Q8XBo~^bJ z`@@NmI8Ha|!j_|qom6ChgfIhL7SFtF%X{<Wm3US~4rHQ@eANsV*O-FCb=G;7QbIHA zSbc~reVK~9iYqb|y>(3An+!>St-_H6ba({ZjYq01sJL3AG9qk!)|fOoUR}t|DB{@w zo>TEWURW`!;zg!E$Bn`)I3&c2LN^(LyOtH0<AAu1mjZZM#VgWBn_KNGb=Ww0xgu)> zaf5T$n+aVb!eOCupkK%9a`k)=Z&JE@#UV*~Tg5wgS3#KLZMoo!L&ejY+=8~(p}R8D zD%vj0_obH)?#k@)6m;q5Hu}*D1`=}&G84j0d?L%@Qx;>bzo~*@$Zm48cN3qh_(GD< z#1gZ}m~Yt35aQ}_-4Ncsmyp_Q0+)|5W5%RXPSaUT9g*7ET%HSk?A%b?ELdrALYE8I z*6zl8B-hwVh8o;0JOH|epVwP_Poj}eKyP#rO0*q;5}KopC9ID6N@$ap_42Y&e%t&5 z6&2j(wHrZR{qP}x7Cx^*GdJ%LHu7x?RBYq_fltn$vYYSuF5QS|xN8aB$?!Jc&)A-9 zY)9k{qVYR;Xb}fXI1&vXTf#un*Hl#)EGtyM3|E$nx=S7ppXAvUK32jw!<ekXJV>`d zm}dvicKJU*c$=_~d>rD_D0(r59!&7t6r#9<UC3ZJp>kZ5p`T(P5_(TG91ow7PM(T} z&xOyIpDu<q?`aX~s^bn)4DQV#x@yM(bkbcn4$~0Zux$7Sb)?}*8eYOoGJIwcb0u7^ z_%Z3n6`Wrdl-*Kr(G_URf-(w|;agP{UY3qxHGcp%U<47I#9oYJkinipf?=N_0(N~F z(N^9iq9&RtRLyvmlOzvkDgLseK3lGxLqFnL2`};*ezk<x<oylr&TN<PRtfL%8&g|( zcI8zEovb3@0u5h8E0fRxjcld(SCqy<CZri(;p;NS{d6h|xqS(t<RU&CU&77g&P9A& Z!e>>Bt<(Z$S($TagU+?z@Vx=w{sS`9<mUhY literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class new file mode 100644 index 0000000000000000000000000000000000000000..32f3485bc9e6513c0d997c15cd18decc559504cb GIT binary patch literal 3397 zcmb7`>2DiF7{;GXoY+Y>N#mw1Ip_tU&ZbRh%hAT^;arVdw@s7OJ)zyin`D!Co$juk zhN~@<f&>VJ0I5h+;sZ!XfGBDVMJgZo$lrtz&+OW<y><ggmS=b7oo9aY9<%f3-@pA1 zU;yveqYBl2_+-?eRzi!VCl_?PcS27N8@6t*45*eSp|)Q)bo+>e>QGm_9s$((Q7>Zy zWC>fe8)|ZCQL}m{ms67~OWK5HW;9bmv!&Um)5$5#bbG9b1YaoX3N*@S60^&U284XG zj372iXrhFetWRr`dQzjnj!-OzXsSjcmFyjNnz(A}s;z}x@y#-}RG3cbDm*2lRqV9J z)F>_%YnRc1r-?FK&ddEq>u9rG#t!V1u+?xj6v?RiqB^yh+pE}_6ct*}$auD*)__oX zPR8zaR2-Ww8H%u}xt`Y2S^ztQ>|Pl?Lbh!Uv5cS|&tsn-`(+%!3*5}Sno)ZfRb#d{ zYS`MW2#7zUE~d3JGmII-5G%6?i=|$Y@iGod2+ruHHfE-lG}B%goTCu)V0Wl!)`V^9 z#%#E#=gic+Hf=Kq0qho9VHy4FV-EzN2+N}~jtR>EH+WWT+>ZeX8w-f8v@jhKfWs1E z|B0oX?s9pT06s3EVZv6;e7;5M5XA{UPRfYklt@LlGR90jWwJ2n&Y|Iv$hp`got@9g z{Gj8>Gcv|-Rzlsfs@p@_qRKfZDnJjF&8~!)HxiYZ(F{8rz=Q{x&O9e!!?2Oa)eQF# zz<C)La8ZJ6l@!v`dBKWxv;miK#gA8Hyo#$5+SjQ$CuoLdvizL$VJHB#gu+SdX&DJG z1qY&-kufX$>l=+89~Hd1jCoN2jc%#s&kixPC?i=u<eV5O8B4g%poj`llSF9=6{mPE zS-H+&D#6jFm~Lq9=`<+{Swic0nkQaTi|dxoj)-BTY}M9Nh9zNhETdcETpUwPirbob zN?i)GNDaPmyvF9a$F^EG>@{!oxSs7PIiVyR4Mn5t`hMNPt~ggqq{zy|N~9vDsk5rx zM3`P6Rc<#;iBw58bH}AUEU$({swh`H?;LNUFH29~?eyt7sX&i-=1?VIlSG^p66z;X zX>(c|(S^T*C7+8PQR>*qAXo9j<mW$=fKOE-;!evXc3P$pTc0?Oot7u6)AH10yBYKk zYB|s3+fKeoY-^NXAU)uN1dIRTI{@sX$bQ&-3b8-UzRYF#EX-R-TDV{_VV9kb8y5Im z;g5DTc#Z!;e1tP<*tQ9Ar9BJ3(vd}jvNwy3N~<r6mcoi{L;}w(9}c1phtP;VY(kiy zqJFCJgOt-8pr!y8np+hmi?&s46YZ{5bSl-W2o*H9IIAC{W&|?7<t-Sb(h%przNQyL zwWAkOg56Zv^DBC@cu@%+;!9ut<uG54xGx3uAa%j|Y`_V$;Uqs?r>OMCn({q92`^p{ zllv9rAws@u<Wqu&+o_e4tbUA07K41-b00w^IMVntM%~WS=SA<AXl2vq42~BM3X&=( zTDzDOz&Lk1!8^kwKd^Ch<2*fh5u>=orz?1q7EGGI&?j{e^Q|?^&-hf$!E0hM2XmV* zA$%I_&S46l6fln*cDF(sv6YVUtpq2z*Z3n`l2Ejlg5z9VmAF&HohI%Kx_HJNz#MVs zaTN<ByjhX3&mrs-gq;jhj!*>Ze-U0I;ncqoE|Ks$2~85FNthwwG6`2mC{p~^8llA} z5$bS}4;ktw_>hUP7HTaY>OwT#O1R0zZ*lS4T>KqI^A4kV*NGx4K}3-Nw<`kVT||H< zxF`=G(&>o+9}wU}0(?Y(j|uPz0X{7OXcpI7Vu(`T#r+Ep)GF<(m@CBEJxD&M))%zo zEiz{>TKC*}h`H}M(LHxWl>_(C%!MmTFL<TDqV#>v;-!-R0;O1b!7KeWrFn7AnHH$K zR}uG0e?#eSY56t-P%a(+$wU1erFp5YBt7Mo{(;gz((+D4=_#-D1Df)BTY+MmcY~`m q;+3+3X{Xop5si4KtY8}Qnm(q{yDSE;8?rFGtbfqxE?rZF_x=ItiPg3M literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServerAssembly.class b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServerAssembly.class new file mode 100644 index 0000000000000000000000000000000000000000..891976c4198510717712fc7952b01b4c56cc07cd GIT binary patch literal 2958 zcmbVOX>-$76g?t~9U}-RA+(`DNC+fmaajWd2q8<Gl0t}6QxhmC_9H0Rl9A+qTiQYk z-S>?`_w{@G!C{(de?Y(W=X5&L>3Nb@k}}guGtzsy_uY5yxy#e<fB*6ufTQ>^ge9m6 zpjJg4>J_Y;HJnR^8_^v{q^DB3NX(n}7p4m84;rT79#&A()g7xp5~mejA>K;^P*p6$ za#|5r^>ijBoXEr#Ya*8sQDM&tyKH5tBiyKKWhRWYP*B@7*d3E5R;XABO+kp_n6RfT z$CIA+rOhf<p+&(eN{?sLQ^Fn>nUs;xUBfaRX=cP%d`QK^(o8EA$85uNEA%+DY}b*y ztx@raRFn2RwP-e-*6p0HA~n{jST8kNs1em?MTMO~-PMEGpkTRf+s3S(8ndm0aGU@- z6s#`!-(MvRqEo@rp{p6o6sBwFsQ@-BSTUo|>XDRgPDf5m&4`3s-}l!p?+RfHwg#|G z#dbuh6bG&BREp#TxN}yVxIiyR;%M2Duh1L94(tqImx|rkqoCa}(lWfZZYHgCWZZkj zblcEfF{~$C%gzztv~WjE$JNaQcNpxduo`tq=XCF6#U~$fZ};c}OcO>sdSr_2Q_$A+ zKvh442UPUppaNA-CZk4rh-|rpws{dSMQbIs-tJfs%+O_SW%31Zgn=vtrYbS(`~JKm zue%}iVNl{6Qqb2mGE%g?7+<{)6iN(_F+O@S<J#vQ4Pu0oLN)|(jKQqV8>#Z7g2pP$ z=XS^}JfUI?Cs`HbqCcr;TwyCXyBHJY@D~DA5vTv~MPiS#)IIFP^;F3Z;#q=IDxQ|T zVr9Y>%$p+bhH!#7t)SV=ru%1gBjp#pb2RGeZV+c!7L>4RJ)zF@Eh<PSpHXoR=M{9& zNtRMZ*lup%B5Oj78jdSWVGmfQ$>LzGE7<=(y_cR%Eri(bLrnfF#Qq>yVk>?8Bj(Ah z$O?bWMFn-2<y0~=qvDceX06Z6;(oA2q|24aGIJxOklj)mbYw?lLFQOyA*5i*WX#Cw zUKmQhQfw6tTm?-euA)DA#uV&ZWSwtmO6aB&SsWrONXBGV#T6No&P7ZwjEW>6r{Y;j zK#Nbn{dlCxH5JcSs0<3nm^Q~Oc4-fC175`S0B)#w2`^W*yl9SjK;~+!EZtq@dtq2~ z!CT8*Ota72!Ycv1s^T@dN0V0&)jG`Oj9ig2gLs4O+ixvxgTiIX@?5xux8&+f5bsdB zt?H7byr<%Qe4s#Mmn^1!?r83~E>E&ei_l%_j3sRk=0|dukME0Yv6*`G^H~10ih+rX zbTS#jZQPY<@fp*#a=-DcY09$lqIVl#sQ6NnP{$Or$yn`xl_bQ*QNtAe@i`&26*PE! zjF=ZJDy4OU_0`f<+2RYWqdUeP6t%K;LJS*nVQW<rEuQY%CF$5es+M^F1_2NQ>iPVN z^Ehfa0y@KUP{Pd!<k1kW$)hn`n@5v;td@^f`EBh_R8;UapX~_pS&v!-u$1E!XyDI4 z2(6s0hl-8-@u-z;sj$r-oXc%)gtfMLw8yoLwZCFhyrvml_YjWW!=rQ9o5%jJc4!`b z@!GnwLVrPF;g>lKcuR)0$9X@YjplJYtc`oKHtmo%o2Z=4Ay#(bFd7L+<K4o$S^j$v z`WoyaS3MjJp%WwMzzKdEM;PaM_?y^@Ydrj~BSLrBTMF(SqqEYzj<6QjCgs*=!<w!o z3L~LS`=dD+WdJP<1GrrXd$@fM)?q(+JwQXO*@EGl)RBhAXl@><xR#iMnaAal^=w!Z zo?yBtC~QVS+!IU|1qEbTM*3<Qg&#>t#vuRFhS7yl?8I^OV*<wzqx+|bfGwhcXanC8 zQ60@ZS2p8k*Ccs3L-98y_31)>_56$%^0>*T_Ie&~%J<v;n;DVEyLo)bZw!BF?8(a; ztYfBuL8yn0<(Oi~5@ajMU<mBR1?Jzk_^yC)H#e2Z-aL;`d=8(C&f|7`%N*|H@p;+e Va%uqvvv&qf45otbIbVVw{sDJd2;Bex literal 0 HcmV?d00001 diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ArrivalProcess.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ArrivalProcess.java new file mode 100644 index 0000000000..e581c58add --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ArrivalProcess.java @@ -0,0 +1,72 @@ +package examples; + +// Standard library imports +import java.util.*; + +// Application specific imports +import simkit.*; +import simkit.random.*; + +public class ArrivalProcess extends SimEntityBase { + + /* Simulation Parameters */ + + /** */ + private simkit.random.RandomVariate interarrivalTime; + + /* Simulation State Variables */ + + /** */ + protected int numberArrivals; + + @viskit.ParameterMap ( + names = {"interarrivalTime"}, + types = {"simkit.random.RandomVariate"} + ) + + /** Creates a new default instance of ArrivalProcess */ + public ArrivalProcess() { + } + + public ArrivalProcess(simkit.random.RandomVariate interarrivalTime) { + setInterarrivalTime(interarrivalTime); + } + + @Override + public void reset() { + super.reset(); + } + + /** Bootstraps the first simulation event */ + public void doRun() { + + waitDelay("Arrival", interarrivalTime.generate(), Priority.DEFAULT); + } + + public void doArrival() { + + /* StateTransition for numberArrivals */ + int _old_NumberArrivals = getNumberArrivals(); + numberArrivals = numberArrivals + 1; + firePropertyChange("numberArrivals", _old_NumberArrivals, getNumberArrivals()); + + waitDelay("Arrival", interarrivalTime.generate(), Priority.DEFAULT); + } + + public final void setInterarrivalTime(simkit.random.RandomVariate interarrivalTime) { + this.interarrivalTime = interarrivalTime; + } + + public simkit.random.RandomVariate getInterarrivalTime() { + return interarrivalTime; + } + + public int getNumberArrivals() { + return numberArrivals; + } + + @Override + public String toString() { + return getName(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/EntityCreator.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/EntityCreator.java new file mode 100644 index 0000000000..72fac7aaf6 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/EntityCreator.java @@ -0,0 +1,42 @@ +package examples; + +// Standard library imports +import java.util.*; + +// Application specific imports +import simkit.*; +import simkit.random.*; + +public class EntityCreator extends SimEntityBase { + + /* Simulation Parameters */ + + /* None */ + + /* Simulation State Variables */ + + /* None */ + + @viskit.ParameterMap ( + names = {}, + types = {} + ) + + /** Creates a new default instance of EntityCreator */ + public EntityCreator() { + } + + public void doArrival() { + + waitDelay("EntityArrival", 0.0, Priority.DEFAULT, (Object) new simkit.Entity()); + } + + public void doEntityArrival(simkit.Entity customer) { + + } + + @Override + public String toString() { + return getName(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ServerGeneric.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ServerGeneric.java new file mode 100644 index 0000000000..294206dc69 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/ServerGeneric.java @@ -0,0 +1,160 @@ +package examples; + +// Standard library imports +import java.util.*; + +// Application specific imports +import simkit.*; +import simkit.random.*; + +public class ServerGeneric extends SimEntityBase { + + /* Simulation Parameters */ + + /** */ + private int totalNumberServers; + + /** */ + private simkit.random.RandomVariate serviceTimeGenerator; + + /* Simulation State Variables */ + + /** */ + protected int numberAvailableServers; + + /** */ + protected java.util.LinkedList<simkit.Entity> queue = new java.util.LinkedList<>(); + + /** */ + protected double delayInQueue; + + /** */ + protected double timeInSystem; + + @viskit.ParameterMap ( + names = {"totalNumberServers", + "serviceTimeGenerator"}, + types = {"int", + "simkit.random.RandomVariate"} + ) + + /** Creates a new default instance of ServerGeneric */ + public ServerGeneric() { + } + + public ServerGeneric(int totalNumberServers, + simkit.random.RandomVariate serviceTimeGenerator) { + setTotalNumberServers(totalNumberServers); + setServiceTimeGenerator(serviceTimeGenerator); + } + + @Override + public void reset() { + super.reset(); + numberAvailableServers = totalNumberServers; + queue = new java.util.LinkedList<simkit.Entity>(); + } + + /** Bootstraps the first simulation event */ + public void doRun() { + + firePropertyChange("numberAvailableServers", getNumberAvailableServers()); + firePropertyChange("queue", getQueue()); + + } + + public void doArrival(simkit.Entity customer) { + + /* Code insertion for Event Arrival */ + customer.stampTime(); + /* End Code insertion */ + + /* StateTransition for queue */ + java.util.LinkedList<simkit.Entity> _old_Queue = getQueue(); + queue.add(customer); + firePropertyChange("queue", _old_Queue, getQueue()); + + if (numberAvailableServers > 0) { + waitDelay("StartService", 0.0, Priority.HIGH); + } + } + + public void doStartService() { + + /* Code insertion for Event StartService */ + Entity customer = queue.getFirst(); + /* End Code insertion */ + + /* StateTransition for numberAvailableServers */ + int _old_NumberAvailableServers = getNumberAvailableServers(); + numberAvailableServers = numberAvailableServers - 1; + firePropertyChange("numberAvailableServers", _old_NumberAvailableServers, getNumberAvailableServers()); + + /* StateTransition for queue */ + java.util.LinkedList<simkit.Entity> _old_Queue = getQueue(); + queue.removeFirst(); + firePropertyChange("queue", _old_Queue, getQueue()); + + /* StateTransition for delayInQueue */ + double _old_DelayInQueue = getDelayInQueue(); + delayInQueue = customer.getElapsedTime(); + firePropertyChange("delayInQueue", _old_DelayInQueue, getDelayInQueue()); + + waitDelay("EndService", serviceTimeGenerator.generate(), Priority.DEFAULT, (Object) customer); + } + + public void doEndService(simkit.Entity customer) { + + /* StateTransition for numberAvailableServers */ + int _old_NumberAvailableServers = getNumberAvailableServers(); + numberAvailableServers = numberAvailableServers + 1; + firePropertyChange("numberAvailableServers", _old_NumberAvailableServers, getNumberAvailableServers()); + + /* StateTransition for timeInSystem */ + double _old_TimeInSystem = getTimeInSystem(); + timeInSystem = customer.getElapsedTime(); + firePropertyChange("timeInSystem", _old_TimeInSystem, getTimeInSystem()); + + if (queue.size() > 0) { + waitDelay("StartService", 0.0, Priority.HIGH); + } + } + + public final void setTotalNumberServers(int totalNumberServers) { + this.totalNumberServers = totalNumberServers; + } + + public int getTotalNumberServers() { + return totalNumberServers; + } + + public final void setServiceTimeGenerator(simkit.random.RandomVariate serviceTimeGenerator) { + this.serviceTimeGenerator = serviceTimeGenerator; + } + + public simkit.random.RandomVariate getServiceTimeGenerator() { + return serviceTimeGenerator; + } + + public int getNumberAvailableServers() { + return numberAvailableServers; + } + + @SuppressWarnings("unchecked") + public java.util.LinkedList<simkit.Entity> getQueue() { + return (java.util.LinkedList<simkit.Entity>) queue.clone(); + } + + public double getDelayInQueue() { + return delayInQueue; + } + + public double getTimeInSystem() { + return timeInSystem; + } + + @Override + public String toString() { + return getName(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TestAssembly.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TestAssembly.java new file mode 100644 index 0000000000..17f6b47983 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TestAssembly.java @@ -0,0 +1,106 @@ +package examples; + +public class TestAssembly extends viskit.assembly.ViskitAssembly { + + public TestAssembly() { + super(); + setStopTime(100.0); + setVerbose(false); + setNumberReplications(1); + setPrintReplicationReports(true); + setPrintSummaryReport(true); + setSaveReplicationData(false); + } + + @Override + protected void createSimEntities() { + + addSimEntity( "arrivalProcess", + new examples.ArrivalProcess( + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 1.6 + ) + ) + ); + + addSimEntity( "twoTypeServer", + new examples.TwoTypeServer( + 1, + 2, + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 0.9 + ), + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 1.2 + ) + ) + ); + + addAdapter("adptr", "Arrival", "Arrival", "arrivalProcess", "twoTypeServer"); + + super.createSimEntities(); + } + + @Override + public void createPropertyChangeListeners() { + addPropertyChangeListenerConnection("numAvailServerAStat", "numberAvailableServersA", "twoTypeServer"); + + addPropertyChangeListenerConnection("queueStat", "queue", "twoTypeServer"); + + addPropertyChangeListenerConnection("numAvailServerBStat", "numberAvailableServersB", "twoTypeServer"); + + super.createPropertyChangeListeners(); + } + + @Override + public void createReplicationStats() { + addReplicationStats("numAvailServerAStat", + new simkit.stat.SimpleStatsTimeVarying( + "numberAvailableServersA" + ) + ); + + addReplicationStatsListenerConnection("numAvailServerAStat", "numberAvailableServersA", "twoTypeServer"); + + addReplicationStats("queueStat", + new simkit.stat.SimpleStatsTimeVarying( + "queue" + ) + ); + + addReplicationStatsListenerConnection("queueStat", "queue", "twoTypeServer"); + + addReplicationStats("numAvailServerBStat", + new simkit.stat.SimpleStatsTimeVarying( + "numberAvailableServersB" + ) + ); + + addReplicationStatsListenerConnection("numAvailServerBStat", "numberAvailableServersB", "twoTypeServer"); + + super.createReplicationStats(); + } + + @Override + public void createDesignPointStats() { + super.createDesignPointStats(); + } + + @Override + public void printInfo() { + System.out.println(); + System.out.println("Entity Details"); + System.out.println("--------------"); + System.out.println(getSimEntityByName("arrivalProcess")); + System.out.println(getSimEntityByName("twoTypeServer")); + System.out.println("--------------"); + } + + public static void main(String[] args) { + TestAssembly testAssembly = new TestAssembly(); + new Thread(testAssembly).start(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServer.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServer.java new file mode 100644 index 0000000000..b0465276ce --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServer.java @@ -0,0 +1,196 @@ +package examples; + +// Standard library imports +import java.util.*; + +// Application specific imports +import simkit.*; +import simkit.random.*; + +public class TwoTypeServer extends SimEntityBase { + + /* Simulation Parameters */ + + /** */ + private int numberServersA; + + /** */ + private int numberServersB; + + /** */ + private simkit.random.RandomVariate serviceTimeA; + + /** */ + private simkit.random.RandomVariate serviceTimeB; + + /* Simulation State Variables */ + + /** */ + protected int numberAvailableServersA; + + /** */ + protected int numberAvailableServersB; + + /** */ + protected int queue; + + @viskit.ParameterMap ( + names = {"numberServersA", + "numberServersB", + "serviceTimeA", + "serviceTimeB"}, + types = {"int", + "int", + "simkit.random.RandomVariate", + "simkit.random.RandomVariate"} + ) + + /** Creates a new default instance of TwoTypeServer */ + public TwoTypeServer() { + } + + public TwoTypeServer(int numberServersA, + int numberServersB, + simkit.random.RandomVariate serviceTimeA, + simkit.random.RandomVariate serviceTimeB) { + setNumberServersA(numberServersA); + setNumberServersB(numberServersB); + setServiceTimeA(serviceTimeA); + setServiceTimeB(serviceTimeB); + } + + @Override + public void reset() { + super.reset(); + numberAvailableServersA = getNumberServersA(); + numberAvailableServersB = getNumberServersB(); + queue = 0; + } + + /** Bootstraps the first simulation event */ + public void doRun() { + + firePropertyChange("numberAvailableServersA", getNumberAvailableServersA()); + firePropertyChange("numberAvailableServersB", getNumberAvailableServersB()); + firePropertyChange("queue", getQueue()); + + } + + public void doArrival() { + + /* StateTransition for queue */ + int _old_Queue = getQueue(); + queue = queue + 1; + firePropertyChange("queue", _old_Queue, getQueue()); + + if (getNumberAvailableServersA() > 0) { + waitDelay("StartServiceA", 0.0, Priority.DEFAULT); + } + if (getNumberAvailableServersA() == 0 && getNumberAvailableServersB() > 0) { + waitDelay("StartServiceB", 0.0, Priority.DEFAULT); + } + } + + public void doStartServiceA() { + + /* StateTransition for numberAvailableServersA */ + int _old_NumberAvailableServersA = getNumberAvailableServersA(); + numberAvailableServersA = numberAvailableServersA - 1; + firePropertyChange("numberAvailableServersA", _old_NumberAvailableServersA, getNumberAvailableServersA()); + + /* StateTransition for queue */ + int _old_Queue = getQueue(); + queue = queue - 1; + firePropertyChange("queue", _old_Queue, getQueue()); + + waitDelay("EndServiceA", serviceTimeA.generate(), Priority.DEFAULT); + } + + public void doStartServiceB() { + + /* StateTransition for numberAvailableServersB */ + int _old_NumberAvailableServersB = getNumberAvailableServersB(); + numberAvailableServersB = numberAvailableServersB - 1; + firePropertyChange("numberAvailableServersB", _old_NumberAvailableServersB, getNumberAvailableServersB()); + + /* StateTransition for queue */ + int _old_Queue = getQueue(); + queue = queue - 1; + firePropertyChange("queue", _old_Queue, getQueue()); + + waitDelay("EndServiceB", serviceTimeB.generate(), Priority.DEFAULT); + } + + public void doEndServiceA() { + + /* StateTransition for numberAvailableServersA */ + int _old_NumberAvailableServersA = getNumberAvailableServersA(); + numberAvailableServersA = numberAvailableServersA + 1; + firePropertyChange("numberAvailableServersA", _old_NumberAvailableServersA, getNumberAvailableServersA()); + + if (queue > 0) { + waitDelay("StartServiceA", 0.0, Priority.HIGH); + } + } + + public void doEndServiceB() { + + /* StateTransition for numberAvailableServersB */ + int _old_NumberAvailableServersB = getNumberAvailableServersB(); + numberAvailableServersB = numberAvailableServersB + 1; + firePropertyChange("numberAvailableServersB", _old_NumberAvailableServersB, getNumberAvailableServersB()); + + if (queue > 0) { + waitDelay("StartServiceB", 0.0, Priority.HIGH); + } + } + + public final void setNumberServersA(int numberServersA) { + this.numberServersA = numberServersA; + } + + public int getNumberServersA() { + return numberServersA; + } + + public final void setNumberServersB(int numberServersB) { + this.numberServersB = numberServersB; + } + + public int getNumberServersB() { + return numberServersB; + } + + public final void setServiceTimeA(simkit.random.RandomVariate serviceTimeA) { + this.serviceTimeA = serviceTimeA; + } + + public simkit.random.RandomVariate getServiceTimeA() { + return serviceTimeA; + } + + public final void setServiceTimeB(simkit.random.RandomVariate serviceTimeB) { + this.serviceTimeB = serviceTimeB; + } + + public simkit.random.RandomVariate getServiceTimeB() { + return serviceTimeB; + } + + public int getNumberAvailableServersA() { + return numberAvailableServersA; + } + + public int getNumberAvailableServersB() { + return numberAvailableServersB; + } + + public int getQueue() { + return queue; + } + + @Override + public String toString() { + return getName(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServerAssembly.java b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServerAssembly.java new file mode 100644 index 0000000000..127a9cdf78 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/src/examples/TwoTypeServerAssembly.java @@ -0,0 +1,108 @@ +package examples; + +public class TwoTypeServerAssembly extends viskit.assembly.ViskitAssembly { + + public TwoTypeServerAssembly() { + super(); + setStopTime(100.0); + setVerbose(false); + setNumberReplications(1); + setPrintReplicationReports(true); + setPrintSummaryReport(true); + setSaveReplicationData(false); + } + + @Override + protected void createSimEntities() { + + addSimEntity( "arrivalProcess", + new examples.ArrivalProcess( + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 1.7 + ) + ) + ); + + addSimEntity( "twoTypeServer", + new examples.TwoTypeServer( + 1, + 2, + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 1.6 + ), + simkit.random.RandomVariateFactory.getInstance( + "Exponential", + 1.6 + ) + ) + ); + + addAdapter("adptr_0", "Arrival", "Arrival", "arrivalProcess_0", "twoTypeServer_1"); + addAdapter("adptr0", "Arrival", "Arrival", "arrivalProcess", "twoTypeServer"); + addAdapter("adptr_1", "Arrival", "Arrival", "arrivalProcess", "twoTypeServer"); + + super.createSimEntities(); + } + + @Override + public void createPropertyChangeListeners() { + addPropertyChangeListenerConnection("numAvailServersBStat", "numberAvailableServersB", "twoTypeServer"); + + addPropertyChangeListenerConnection("numAvailServersAStat", "numberAvailableServersA", "twoTypeServer"); + + addPropertyChangeListenerConnection("numberInQueueStat", "queue", "twoTypeServer"); + + super.createPropertyChangeListeners(); + } + + @Override + public void createReplicationStats() { + addReplicationStats("numAvailServersAStat", + new simkit.stat.SimpleStatsTimeVarying( + "numberAvailableServersA" + ) + ); + + addReplicationStatsListenerConnection("numAvailServersAStat", "numberAvailableServersA", "twoTypeServer"); + + addReplicationStats("numberInQueueStat", + new simkit.stat.SimpleStatsTimeVarying( + "queue" + ) + ); + + addReplicationStatsListenerConnection("numberInQueueStat", "queue", "twoTypeServer"); + + addReplicationStats("numAvailServersBStat", + new simkit.stat.SimpleStatsTimeVarying( + "numberAvailableServersB" + ) + ); + + addReplicationStatsListenerConnection("numAvailServersBStat", "numberAvailableServersB", "twoTypeServer"); + + super.createReplicationStats(); + } + + @Override + public void createDesignPointStats() { + super.createDesignPointStats(); + } + + @Override + public void printInfo() { + System.out.println(); + System.out.println("Entity Details"); + System.out.println("--------------"); + System.out.println(getSimEntityByName("arrivalProcess")); + System.out.println(getSimEntityByName("twoTypeServer")); + System.out.println("--------------"); + } + + public static void main(String[] args) { + TwoTypeServerAssembly twoTypeServerAssembly = new TwoTypeServerAssembly(); + new Thread(twoTypeServerAssembly).start(); + } +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/viskitProject.xml b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/viskitProject.xml new file mode 100644 index 0000000000..6c7a80c565 --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/viskitProject.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ViskitProject> + <AnalystReports name="AnalystReports" /> + <AssembliesDirectory name="Assemblies" /> + <EventGraphsDirectory name="EventGraphs" /> + <BuildDirectory name="build"> + <ClassesDirectory name="classes" /> + <SourceDirectory name="src" /> + </BuildDirectory> + <DistDirectory name="dist" /> + <LibDirectory name="lib" /> + <Project name="FinalProject" /> + <Cached> + <EventGraphs class="/Users/terry/Downloads/FinalProject/build/classes/examples/TwoTypeServer.class" digest="-512d144abdf3a25c1fd0468cca19fbe6" xml="/Users/terry/Downloads/FinalProject/EventGraphs/examples/TwoTypeServer.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class" digest="5dde00358e407bfd4311883c8721b5e3" xml="C:/Users/advan/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class" digest="690320b04ecb012c8a9ca57e07351225" xml="C:/Users/advan/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class" digest="2c654b4016e3310aea37d46120d91c16" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/viskit/MyViskitProjects/DefaultProject/EventGraphs/examples/ArrivalProcess.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/EntityCreator.class" digest="7020026ff300a02fa0ca78b16afd0a77" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/viskit/MyViskitProjects/DefaultProject/EventGraphs/examples/EntityCreator.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/ServerGeneric.class" digest="256ca2b5c866392a6c42353961b30c1a" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/viskit/MyViskitProjects/DefaultProject/EventGraphs/examples/ServerGeneric.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class" digest="690320b04ecb012c8a9ca57e07351225" xml="C:/Users/advan/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml" /> + <EventGraphs class="C:/Users/advan/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class" digest="5dde00358e407bfd4311883c8721b5e3" xml="C:/Users/advan/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml" /> + <EventGraphs class="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class" digest="690320b04ecb012c8a9ca57e07351225" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcess.xml" /> + <EventGraphs class="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/ArrivalProcess.class" digest="690320b04ecb012c8a9ca57e07351225" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/ArrivalProcessTwo.xml" /> + <EventGraphs class="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/build/classes/examples/TwoTypeServer.class" digest="5dde00358e407bfd4311883c8721b5e3" xml="C:/Users/advan/Netbeans/NetworkedGraphicsMV3500/assignments/src/MV3500Cohort2024JulySeptember/projects/Yu/MyViskitProjects/FinalProject/EventGraphs/examples/TwoTypeServer.xml" /> + </Cached> +</ViskitProject> + -- GitLab