<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Leveraging the Pedagogical Potential of Tile-Based Games for Teaching Petri Net Modeling, the Sokoban Case</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">João-Paulo</forename><surname>Barros</surname></persName>
							<email>joao.barros@ipbeja.pt</email>
							<affiliation key="aff0">
								<orgName type="institution">Polytechnic Institute of Beja</orgName>
								<address>
									<settlement>Beja</settlement>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="department">Center of Technology and Systems (CTS)</orgName>
								<orgName type="institution">UNINOVA</orgName>
								<address>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
							<affiliation key="aff3">
								<orgName type="department">Intelligent Systems Associate LAboratory (LASI)</orgName>
								<address>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Luis</forename><surname>Gomes</surname></persName>
							<affiliation key="aff1">
								<orgName type="department">School of Science and Technology</orgName>
								<orgName type="institution">NOVA University Lisbon</orgName>
								<address>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="department">Center of Technology and Systems (CTS)</orgName>
								<orgName type="institution">UNINOVA</orgName>
								<address>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
							<affiliation key="aff3">
								<orgName type="department">Intelligent Systems Associate LAboratory (LASI)</orgName>
								<address>
									<country key="PT">Portugal</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Leveraging the Pedagogical Potential of Tile-Based Games for Teaching Petri Net Modeling, the Sokoban Case</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">70EFA8DDF7FAF12A4736D07EED6E27DE</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2025-04-23T18:58+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Board games</term>
					<term>Modeling</term>
					<term>Formal methods</term>
					<term>Education</term>
					<term>Reachability graph</term>
					<term>Petri nets</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Students face unfamiliar abstract concepts when learning about formal methods and Petri net modeling. These concepts are challenging for students to understand fully and for teachers to design captivating modeling exercises that align with the intended learning outcomes. The proposed exercises should provide significant opportunities to apply abstract concepts in familiar domains, bridging the gap between the concrete and the abstract. Board games offer a range of modeling problems in an area that many students know. This paper introduces a model for Sokoban, a classic computer-based, one-player puzzle game. After, a sequence of possible Petri net modeling exercises focused on the game movement rules and model composition are proposed. The complete model is created by composing multiple instances of the previously defined models acting as modules. The complete model can then be used to verify game termination and obtain the net step sequence leading to the intended final net marking.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>Exercises are a core component of learning and assessment and must fulfill a dual role: they must align with the intended learning outcomes and be perceived by students as interesting and motivating.</p><p>Due to the well-known capacity to engage students, games are frequently used for pedagogical purposes (e.g., <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b1">2]</ref> ) and are often a way to introduce students to programming (e.g., <ref type="bibr" target="#b2">[3]</ref>). Furthermore, games offer domains that are well-known by most students.</p><p>We propose using simple tile-based games, sometimes called grid-based games, as an adequate basis for teaching and learning Petri net modeling. More specifically, we argue that many of those games offer the following advantages: 1. Game domain, which should foster student engagement; 2. Huge variety, from very simple to very complex ones; 3. Graphical representations allowing a visual mapping between the physical board and the Petri net model structure; 4. A clear differentiation between the passive part (the board) and the active part (moving pieces and their movement rules, including restraints).</p><p>We present the Sokoban game as an illustrative example. This game, with its grid-based structure and movement rules, is a concrete application that exemplifies the above-listed advantages.</p><p>The paper is structured as follows. In the next section, we present the game Sokoban. In Section 3, we present a sequence of proposed exercises and the respective possible solutions focusing on the movement rules of the game and the subsequent composition that yields the complete model amenable to simulation or state-based exploration. Finally, we conclude with some proposals for future work.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">The Sokoban game</head><p>Sokoban has been named "the quintessential "block pushing" game " <ref type="bibr" target="#b3">[4]</ref>. It is a single-player tile-based board game with simple rules. However, it can quickly become highly challenging. It is played on a "map" made of adjoining tiles. Each tile can be seen as a cell in a grid. The player moves in one of four directions: left to right, right to left, top to bottom, and bottom to top. The objective is for the player to push all the boxes around the grid to put them in the final marked locations. If a box is adjacent, the player can push the box to the next cell in the same direction. However, for that to happen, the ending box position must be free, which means no (other) box or "wall" can be in that cell. Each tile can be from one of three types:</p><p>Free cell A cell that can also contain the player or a box;</p><p>End cell A free cell that is marked as a final destination of any one box;</p><p>Wall A cell that cannot be occupied by the player or a box; these cells also serve to delimit the level board.</p><p>The Wikipedia webpage provides a simple and short introduction to the Sokoban game, illustrated with an animated gif <ref type="bibr" target="#b4">[5]</ref>. Numerous Sokoban implementations and levels are readily available on the Internet. As a specially significant example, the website https://sokoban.info/ provides "more than 7500 levels". Fig. <ref type="figure" target="#fig_0">1</ref> illustrates one of the smallest and simplest levels available. Even Sokoban basic levels necessitate significant computational resources, as there are many branches and possible deadlocks, and a vast number of steps can quickly be needed to reach a solution <ref type="bibr" target="#b5">[6]</ref>. More precisely, the game domain has been proven NP-Hard <ref type="bibr" target="#b6">[7]</ref>, and PSPACE-complete <ref type="bibr" target="#b7">[8]</ref>. Sokoban has also been the object of several studies regarding possible algorithms (e.g., <ref type="bibr" target="#b8">[9]</ref>). Here, our object is to use the modeling of the level (board) and movement rules as motivating exercises for model construction using Place/Transition Petri nets. The Petri net reachability graph can then be used to explore the existence of solutions and the respective paths to them.</p><p>The following section presents a sequence of possible student exercises. It corresponds to a step-wise and module-based approach for constructing a complete Sokoban level.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">A Modular Petri net for a Sokoban level</head><p>Here, we present six sequential exercises toward a complete model for a Sokoban game level and its analysis using Place/Transition nets. First, we focus on the player movement, either by simply moving to an adjacent position or by pushing a box; secondly, we present how that model can be split into a passive and an active part; finally, using a textual description, we show how multiple instances of these two small modules can be composed to generate a level with all the possible movements in that level.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.">Modeling the player movement</head><p>When presenting the game to the students, the obvious challenge is to model the player's movements. Here, we split the player movement into two cases: (1) the end position is free; (2) the end position has a box.   The student's first solution does not need to distinguish between an end position with a box or a wall. This distinction can be required for a second solution, as it should be clear that it will be needed for the case where the player has to move a box. Fig. <ref type="figure" target="#fig_3">2b</ref> illustrates a solution with two places, for the begin and end positions, respectively, that need the end position to be free for the transition freeMove to be enabled. The transition firing models the player's movement.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.1.">Free movement</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.2.">Movement pushing a box</head><p>The cases to be presented to students in a second exercise are shown in Fig. <ref type="figure" target="#fig_6">3a</ref>. The player moves to a position where a box is. The students have to consider the following aspects that are to be expressed in the model:   In this second exercise, it should be apparent from the beginning that the box and the player must change their positions. An additional complication is that a total of three positions must be considered, as the position after the box is also a possible restriction to the player's (and the box's) movement. The need to test and update the presence and the absence of a box presents a new difficulty that provides an opportunity to discuss the use of complementary places. In addition, it is helpful to discuss whether we need a complementary place for the wall and what information we need in each position.</p><p>Fig. <ref type="figure" target="#fig_6">3b</ref> illustrates a solution. It is centered on the "push box" action, which is modeled by transition pushBox. It uses complementary places for boxes in the initial box position and in the position where the box is going to be pushed. It also checks whether or not there is a wall in the box end position. The chosen layout has all places related to the same cell (position) in the same row to highlight the number of positions involved and the data needed for each position state.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.3.">Movement composition</head><p>A third, more straightforward exercise is to compose both movements into a single one. The solution is presented in Fig. <ref type="figure">4</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2.">Position state and two-way movement</head><p>A fourth exercise is identifying all the state information needed for each position as a step toward modeling movement in both directions. Fig. <ref type="figure">5a</ref> presents the solution presented in Fig. <ref type="figure">4</ref> with all the places needed to store each position's state. Their use in the two-way movement is illustrated in Fig. <ref type="figure">5b</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.">Creating the complete model using module composition</head><p>The complete model, for a whole level, requires multiple compositions. A two-step approach can be presented to students: (1) identify the modules to be composed; (2) express the multiple compositions.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.1.">Modules identification</head><p>The modeling of the two movements in two opposite directions can be seen as the modeling of the "passage" between those two positions. The following exercise can be the identification of the model for each position (each cell in the grid). Next, both the "passage" and the "cell" should be transformed into composable modules by identifying the "interface" nodes. The "interface" nodes are the ones that will be fused (merged) with nodes in other modules. It seems worth discussing the dual nature of "passages, " which encapsulate the actions (moving from one position to another), and "cells, " which encapsulate the game state. This duality is analogous to the one between Petri nets transitions and places. Hence, the module composition is particularly interesting when allowing and exhibiting this duality. Figures <ref type="figure" target="#fig_8">6a and 6b</ref> allow the composition of cell module instances with passages modules in between. Fig. <ref type="figure" target="#fig_9">7</ref> shows a high-level view of the whole game level of Fig. <ref type="figure" target="#fig_0">1</ref> as the composition of juxtaposed cell and passage instance modules.  </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.2.">Complete model</head><p>The last modeling exercise can be the specification of all the necessary compositions. This exercise relies heavily on a tool that comprehensively supports model composition. Some textual language is probably the preferable approach. We present a possible pseudo-code for such composition (see Algorithm 1). The 𝐶𝑜𝑛𝑛𝑒𝑐𝑡 procedure receives four-cell module instances and one passage module instance. A set of place fusions connects the five instances. The whole level is built by the 𝐶𝑟𝑒𝑎𝑡𝑒𝐵𝑜𝑎𝑟𝑑 procedure. This procedure calls the 𝐶𝑜𝑛𝑛𝑒𝑐𝑡 procedure for each pair of positions (cells) with a passage between them. The function 𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑖𝑜𝑛𝑠𝐿𝑖𝑠𝑡 returns the positions with a passage between them, thus effectively defining the game-level structure but not the initial state (marking). The 𝐹 𝑜𝑢𝑟𝐶𝑒𝑙𝑙𝑠 function receives those two positions' coordinates and returns the four module instances needed for the composition. Functions 𝑐𝑒𝑙𝑙.𝑐𝑟𝑒𝑎𝑡𝑒 and 𝑝𝑎𝑠𝑠𝑎𝑔𝑒.𝑐𝑟𝑒𝑎𝑡𝑒 create new instances of module 𝑐𝑒𝑙𝑙 and module 𝑝𝑎𝑠𝑠𝑎𝑔𝑒 (identified by the respective parameters) if not yet created, and return the respective instance if already created.</p><p>If suitable tools are available to obtain the model for the complete level, using it for simulation or state-space analysis should be interesting. The state-space analysis is especially interesting for checking the reachability of the intended final marking (all boxes in the end cells) and the shortest path (step sequence) to reach it.  </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">Conclusions and future work</head><p>Using the Sokoban game as an example, we have shown how a classic tile-based game can be used as a basis for engaging P/T net modeling exercises. Considering low-level nets, the model also offers good opportunities to discuss and use test arcs, inhibitor arcs, or both to simplify the model. The game also provides a suitable ground for high-level Petri net modeling, including coloured Petri nets <ref type="bibr" target="#b9">[10]</ref> and reference nets <ref type="bibr" target="#b10">[11,</ref><ref type="bibr" target="#b11">12,</ref><ref type="bibr" target="#b12">13]</ref>. The presented exercise sequence can be adapted to the modeling of other tile-based games by P/T nets, high-level nets, or even non-autonomous nets.</p><p>In our future work, we recognize the necessity for a straightforward method to define and implement multiple module compositions. Specifically, this method should enable the composition of modular models in a declarative manner, utilizing a textual language.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: The game level "Mini Cosmos" at https://sokoban.info/?4.</figDesc><graphic coords="2,229.95,354.51,135.38,133.19" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig</head><label></label><figDesc>Fig.2aillustrates the cases that should be presented to the students as a first exercise. The player moves to a free position. The students have to consider the following aspects that are to be expressed in the model:</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Move to free position: (a) game; (b) P/T model.</figDesc><graphic coords="3,139.69,306.16,90.25,129.10" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>1 .</head><label>1</label><figDesc>How the initial and end box position are modeled; 2. How to know where the player is; 3. How the model moves the player from one position to the other; 4. How the model moves the pushed box from one position to the other; 5. How the model moves the player and the pushed box synchronously; 6. How the model checks if the end position has a box; 7. How the model checks if the box's intended end position is free (from a box or a wall).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_6"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: Box push: (a) game; (b) P/T model.</figDesc><graphic coords="4,139.69,65.61,90.25,189.08" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_7"><head>Figure 4 :Figure 5 :</head><label>45</label><figDesc>Figure 4: Model for both movements of the player from position 1 to position 2: free move and move pushing a box.</figDesc><graphic coords="5,184.82,65.61,225.64,232.73" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_8"><head>Figure 6 :</head><label>6</label><figDesc>Two Petri nets as modules: (a) cell and (b) passage with the respective abbreviated representations used in Fig. 7.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_9"><head>Figure 7 :</head><label>7</label><figDesc>Figure 7: Module composition mimicking a game level "Mini Cosmos" at https://sokoban.info/?4.</figDesc><graphic coords="6,207.38,299.69,180.50,177.45" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_10"><head>Algorithm 1 2 :</head><label>12</label><figDesc>Create board (complete Petri net model) 1: procedure createBoard((𝑥1, 𝑦1), (𝑥2, 𝑦2)) for all ((𝑥1, 𝑦1), (𝑥2, 𝑦2)) ∈ 𝑐𝑜𝑛𝑛𝑒𝑐𝑡𝑖𝑜𝑛𝑠𝐿𝑖𝑠𝑡() do 3:Connect( FourCells( (x1, y1), (x2, y2) ), passage.create((x1, y1), (x2, y2)) ) 3), (1, 4)), ((3, 3),<ref type="bibr" target="#b2">(3,</ref><ref type="bibr" target="#b3">4)</ref>), ((4, 3), (4, 4)), ((6, 3), (6, 4)), ((1, 4), (2, 4)), ((2, 4),<ref type="bibr" target="#b2">(3,</ref><ref type="bibr" target="#b3">4)</ref>), (<ref type="bibr" target="#b2">(3,</ref><ref type="bibr" target="#b3">4)</ref>,<ref type="bibr" target="#b3">(4,</ref><ref type="bibr" target="#b3">4)</ref>)), ((2, 4),<ref type="bibr" target="#b1">(2,</ref><ref type="bibr" target="#b4">5)</ref>), ((4, 4), (4, 5)), ((6, 4), (6, 5))), ((4, 5), (5, 5)), ((5, 5), (6, 5)), (</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_11"><head>) 9 :◁ 12 :x1 = x2 then 13 :◁</head><label>91213</label><figDesc>end function10: function FourCells((x1, y1), (x2, y2)) 11: Position pairs with a passage in between ▷ if return ( cell.create(x1, y1 -1), cell.create(x1, y1),cell.create(x2, y2), cell.create(x2, y2 + 1) ) 14: else if y1 = y2 then 15: return ( cell.create(x1 -1, y1), cell.create(x1, y1), cell.create(x2, y2), cell.create(x2 + 1, y2) ) 16: end if 17: end function 18: procedure Connect((𝑐0, 𝑐1, 𝑐2, 𝑐4), 𝑝) 19: All parameters are 𝑖𝑛𝑜𝑢𝑡 (references to modules Cell or Passage) ▷</figDesc></figure>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgments</head><p>This work was financed by Portuguese Agency FCT -Fundação para a Ciência e Tecnologia, in the framework of project UIDB/00066/2020.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Computer games and traditional cs courses</title>
		<author>
			<persName><forename type="first">K</forename><surname>Sung</surname></persName>
		</author>
		<idno type="DOI">10.1145/1610252.1610273</idno>
		<idno>doi:10.1145/1610252.1610273</idno>
		<ptr target="https://doi.org/10.1145/1610252.1610273" />
	</analytic>
	<monogr>
		<title level="j">Commun. ACM</title>
		<imprint>
			<biblScope unit="volume">52</biblScope>
			<biblScope unit="page" from="74" to="78" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Using game development to teach programming</title>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">F</forename><surname>Martins</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Eliseo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Omar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">L A</forename><surname>Castro</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">G D</forename><surname>Corrêa</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Handbook of Research on Immersive Digital Games in Educational Environments</title>
				<imprint>
			<publisher>IGI Global</publisher>
			<date type="published" when="2019">2019</date>
			<biblScope unit="page" from="450" to="485" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A review of games designed to improve introductory computer programming competencies</title>
		<author>
			<persName><forename type="first">A</forename><surname>Vahldick</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J</forename><surname>Mendes</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">J</forename><surname>Marcelino</surname></persName>
		</author>
		<idno type="DOI">10.1109/FIE.2014.7044114</idno>
	</analytic>
	<monogr>
		<title level="m">IEEE Frontiers in Education Conference (FIE) Proceedings</title>
				<imprint>
			<date type="published" when="2014">2014. 2014</date>
			<biblScope unit="page" from="1" to="7" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<title level="m" type="main">The video game explosion: a history from Pong to Playstation®and beyond</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">J</forename><surname>Wolf</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2008">2008</date>
			<publisher>Greenwood Press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<ptr target="https://en.wikipedia.org/w/index.php?title=Sokoban&amp;oldid=1219730853" />
		<title level="m">Sokoban -Wikipedia, the free encyclopedia</title>
				<imprint>
			<date type="published" when="2024-04-21">2024. 21-April-2024</date>
		</imprint>
	</monogr>
	<note>Wikipedia contributors</note>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<title level="m" type="main">Solving Sokoban</title>
		<author>
			<persName><forename type="first">T</forename><surname>Virkkala</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
		</imprint>
		<respStmt>
			<orgName>University Of Helsinki</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Masters thesis</note>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">SOKOBAN and other motion planning problems</title>
		<author>
			<persName><forename type="first">D</forename><surname>Dor</surname></persName>
		</author>
		<author>
			<persName><forename type="first">U</forename><surname>Zwick</surname></persName>
		</author>
		<idno type="DOI">10.1016/S0925-7721(99)00017-6</idno>
		<ptr target="https://doi.org/10.1016/S0925-7721(99)00017-6" />
	</analytic>
	<monogr>
		<title level="j">Computational Geometry</title>
		<imprint>
			<biblScope unit="volume">13</biblScope>
			<biblScope unit="page" from="215" to="228" />
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<author>
			<persName><forename type="first">J</forename><surname>Culberson</surname></persName>
		</author>
		<title level="m">Sokoban is PSPACE-complete</title>
				<imprint>
			<date type="published" when="1997">1997</date>
		</imprint>
		<respStmt>
			<orgName>University of Alberta</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical Report</note>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Using an algorithm portfolio to solve sokoban</title>
		<author>
			<persName><forename type="first">N</forename><surname>Froleyks</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Froleyks</surname></persName>
		</author>
		<idno type="DOI">10.5445/ir/1000073699</idno>
	</analytic>
	<monogr>
		<title level="m">Symposium on Combinatorial Search</title>
				<imprint>
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">Coloured Petri Nets: Modelling and Validation of Concurrent Systems</title>
		<author>
			<persName><forename type="first">K</forename><surname>Jensen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><forename type="middle">M</forename><surname>Kristensen</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<publisher>Springer Publishing Company, Incorporated</publisher>
		</imprint>
	</monogr>
	<note>1st ed</note>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Renew -the Reference Net Workshop</title>
		<author>
			<persName><forename type="first">O</forename><surname>Kummer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Wienberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Duvigneau</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Moldt</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Rölke</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Tool Demonstrations. 24th International Conference on Application and Theory of Petri Nets (ATPN 2003)</title>
				<editor>
			<persName><forename type="first">E</forename><surname>Veerbeek</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page" from="99" to="102" />
		</imprint>
		<respStmt>
			<orgName>Department of Technology Management, Technische Universiteit Eindhoven, Beta Research School for Operations Management and Logistics</orgName>
		</respStmt>
	</monogr>
	<note>International Conference on Business Process Management (BPM 2003</note>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Introduction to petri nets and reference nets</title>
		<author>
			<persName><forename type="first">O</forename><surname>Kummer</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Sozionik Aktuell</title>
		<imprint>
			<biblScope unit="volume">1</biblScope>
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<title level="m" type="main">Renew User Guide</title>
		<author>
			<persName><forename type="first">O</forename><surname>Kummer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Wienberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Duvigneau</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Cabac</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Haustermann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Mosteller</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">M</forename></persName>
		</author>
		<ptr target="https://www2.informatik.uni-hamburg.de/TGI/renew/4.0/renew4.0.pdf" />
		<imprint>
			<date type="published" when="2022-11-23">2022. 2022-11-23</date>
		</imprint>
		<respStmt>
			<orgName>University of Hamburg,Department for Informatics, Theoretical Foundations Group</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical Report</note>
	<note>Arbeitsbereich</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
