david bengoa is er c 2013
Post on 07-Jul-2018
217 Views
Preview:
TRANSCRIPT
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 1/10
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 2/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
player will carefully plan and manage resources with the objective of fulfilling orders on time, as efficiently as
possible. This game is a simulation of the daily activities in a factory where decisions must be made to obtain
desired results. Some of the decisions that the user can control include: hire and fire workers, buy and sell machines
and equipment, determine storage allocation, among others. The project scope will allow playing on computers, with
different levels of difficulty. Although the graphic design of operators, machines and equipment has been simple, the
objective is to help students learn various IE concepts related to manufacturing and production.
2. Background
This section presents some related works of educational games focused in immune system and training of crisis
managers. Also, other studies about the use of games as a teaching tool in K-12 education.
2.1 How to Build Serious Games [3]The computer game “Immune Attack” was created by a team of computer programmers as a serious science-based
game. This game combined a realistic 3D depiction of biological structure and function of the human body with
educational technologies to teach immunology to high school and college freshmen. As part of this experience, the
developers describe the process of creating a serious game as a challenging endeavor, as it has to satisfy experts and
novices while addressing deeply held pedagogical assumptions, distinct expert viewpoints, integration of gameplay
and learning content, among others.
2.2 Games for Science and Engineering Education [4]The United States has a relatively small percentage of engineering graduates compared to other developing nations,
a statistic that is attributed to the perception that science and engineering is a boring course of study. The author
suggests that this perception can be changed if computer programs are used to teach science and engineering topicsfrom kindergarten through grade twelve, encouraging more students to continue college studies in these fields.
2.3 Pandora-Box [5]Crisis management is a major issue to prevent emergency situations from turning into disasters. Training plays an
important function to prepare the crisis manager. In order to achieve this, the Pandora project aims to study how to
support the training of crisis managers with innovative technology. In particular, it is creating a tool that collaborateswith traditional training methods to generate the ability for trainees to take correctly decisions under critical
situations. It shows three important aspects: (a) a novel use of timeline based planning as the core element in a
dynamic training environment for crisis managers; (b) a continuous loop of planning, execution, and plan adaptation
is created to support personalized training; (c) a trainer is provided with a set of functionalities that allow trainer to
maintain and adapt a “lesson plan” as the basis for the interaction between him and the involved trainees.
2.4 Serious computer games as instructional technology [6]The potential value of serious computer games for learning seems high, but there is still some degree of resistance to
the use of games in a classroom. A reasonable way to convince teachers to use games as a teaching tool is through
pedagogy, connecting elements of existing game designs with accepted learning and instructional theories. At the
Faculty of Education of the University of Ljubljana the serious game TimeMesh has been developed in the
framework of the Comenius programme. The game is intended to be used for learning history in primary and
secondary schools, but at the same time students learn about different cultures and social relations in Europe indifferent historical periods. Some research results show increasing students’ motivation and their interest for topics
covered by the game. On the other hand, some teachers are not totally in agreement to use serious games in teaching
because games can be too time-consuming for use in classroom, so they are willing to present the games as a home-
based learning activity
3. Technology Features
3.1 Architecture OverviewThe game development process followed the system architecture shown in Figure 1. This architecture is composed
of four main tiers (layers) each having specific functions. (1) The presentation layer; provides the graphical user
interface (GUI). (2) The business layer; contains and controls the artificial intelligence algorithm, the discrete event
engine, input manager, sound engine, graphic engine, and game engine. (3) The data access layer; provides
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 3/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
simplified access to data stored in persistent storage. (4) The data source; stores the set of tables and routines, the
game logic and the user data. Moreover, it is located in both databases, MySQL and SQLite.
Figure 1: Overview of the game architecture
3.2 Database & Synchronization Process (remote & local)MySQL, which is the world’s most popular open source relational database management system and that runs as a
server providing multi-user access to a number of databases [7], was the main database engine used to store all the
data of the game. Initially, it was the only database for the game because it was storing the game data and user data
remotely, so when a user started a new game, it downloaded all required data from the database. This process took
between 2 and 5 minutes, depending of the internet bandwidth. So in order to improve performance we decided to
use SQLite, which is a software library that implements a self-contained, serverless, zero-configuration, and
transactional SQL database engine [8], as the local database and keep using MySQL as the remote database.
Both databases have the same data structure, and are synchronized to maintain updated game data in the localdatabase, and updated user data in the remote database. Also, this synchronization process checks each time the
existence of new data in the remote database to be downloaded into the local database, and the same applies in
reverse.
3.3 Game Engine & JavaJMonkeyEngine 3 SDK RC2 [9] is the game engine used in the development process. This engine has been chosen
because it is open source, is easy to use, allows modular design, supports multi-platform, provides different tutorials,
documentation, and a forum to learn and discuss within a community and committed developers. Moreover, this set
of libraries works under Java language programming. Java SE 6 [10] has been used due to the features and facilities
it provides to support Object-Oriented programming. Figure 2 shows furniture factory and environment loaded by
game engine.
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 4/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
Figure 2: Furniture and environment in the jMonkeyEngine
3.4 SimPack (discrete event machine) [11]SimPack is a collection of routines and programs for computer simulation developed by Fishwick [8]. The source of
SimPack is Open Source under a Gnu Public License (GPL). It has a version in C++ which was used in an early
prototype. It also has a later version in Java which is the one that was finally adopted for the game. The decision was
made because it would be easier to develop the code using the selected game engine, JMonkey, which provided the
opportunity to be OS platform-independent since it is written in Java.
3.5 Artificial Intelligence – A* Search AlgorithmA* (A star) algorithm [12] is widely used in pathfinding and graph traversal, the process of plotting an efficiently
traversable path between points, called nodes. Noted for its performance and accuracy, it enjoys widespread use. A*
uses a best-first search and finds a least-cost path from a given initial node to one goal node (out of one or more
possible goals). In the project, it is used to find the path (set of pixels) of the transport activity, from one station to
another.
3.6 GUI (Nifty)It is a Java library to create interactive user interfaces. It is well integrated into many existing rendering systems
(JME3, JME2, LWJGL, JOGL, Slick2D and even Java2D). The actual GUI has been created directly from Java.
Java is used to respond to events generated by the GUI and to modify the GUI to reflect changes in the state of your
application [13]. Figure 3 shows one example of the Nifty controls used in the game.
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 5/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
Figure 3: Nifty controls used in the game
4. Furniture Factory Features
4.1 ActivitiesThe game summarizes the daily activities of the furniture factory in four (4) main activities: purchase, transport,
operation, and shipping. These activities are executed constantly during game, depending on the activities
requirements; as shown in Table 1. The amount of activities executed in the game varies depending on the game
level, making early levels easier than later levels which include more activities.
Table 1: Requirements for each kind of activity
Activity Validation Process – Step by Step
Purchase1. + ≤
2. + + ≤
3. × ≤ ℎ
Transport
1. Available qualified operator & available transport equipment
2. + + ! ≤
3. " # $ ! 4.
Available slot in initial/end station, if required
Operation
1.
Available qualified operator & available machine
2. + + ≤
3. % × % ≤ " #
Shipping1. Next order required
2. $ %
The game allows player to change a few parameters for some activities, in order to get a desired result. Purchase
activity allows changing the reorder point, order quantity, and supplier. Transport activity allows changing the
quantity of parts to transport, or unit load. Other kind of activities will not allow changing any parameter, for
example the operation activity will produce the same amount of parts that have been set, and the shipping activity
will ship the number of parts required in the order after enough parts are available in the shipping station. In the
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 6/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
operation activity the player can decide the number of machines available as well as number of operators and their
respective skills.
4.2 Process FlowchartFigure 4 represents the set of activities that occurs in the furniture factory using process flow symbols. It allows the
player to get a general understanding of the game, in particular the flow of material. Each game level has a particular
process flowchart. For example Figure 4 shows the hardest level with multiple transport activities and assembly
processes.
Figure 4: Example of game process flowchart
4.3 CostsThis game manages different costs, in order to mimic the realities in a furniture factory. Figure 5 shows the
summary of expenditures and incomes. The detailed costs include:
• Storage stations. It includes storage of raw material, work in process and finished goods. Each of storage
has a limited number of slots, depending of their size. The player will choose the number of available slots
and will pay a fee per hour even if they are not in use.
• Workers. The player chooses the number of workers to hire, during the game the player will be able to fire
some or all of them as well as hire available workers. Hiring and firing workers have respective costs; and
each hired worker will be paid an hourly salary based on the worker skill (i.e. Material Handler, Machine
Operator, and Versatile).
• Machine and equipment. The game allows the player to buy and sell the available machines and equipment
as the player wishes. Also, a cost per hour will be charged for the machine and equipment usage, and after a
certain time these will require preventive maintenance, otherwise they will “breakdown”. This maintenanceimplies another cost, so the player will choose between paying this cost and continue working, or wait to be
completely repaired after a few minutes. Moreover, the machine or equipment will have a depreciation cost
that will impact the selling price.
• Supplier. The game will provide the player a list of suppliers to purchase raw material, which is received in
the “receiving zone”, as shown in Figure 4. The raw material cost will depend on the selected supplier and
the order quantity as well as order arrival time.
• Overhead. This is an average cost per hour that includes an ongoing expense of operating the furniture
factory, for example: gas, electricity, taxes, telephone bills, other wages, etc.
• Part. The available raw material, intermediate product and finished good are considered as a “part” in the
current game. Only the raw material is part of the costs, as explained above in Supplier section. Moreover,
the finished good (i.e. product) is part of the sale process, located in the shipping zone.
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 7/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
Figure 5: Game overall – summary of expenditures and incomes
4.4 Human Resources ManagementThe management of the workers is an important factor in the game. The decision of hiring or firing workers by the
player, leads to increases or decreases in the production of finished goods, and therefore the fulfillment of the
arriving orders. In addition, hiring workers implies to choose the role type for each worker. As we mentioned above,
there are three (3) types: Material Handler, who uses equipment (i.e. hand truck) to transport parts and products inthe factory; operators, who work directly with machines; and versatile workers that can perform both types of roles.
Figure 6 shows the two different ways a player can hire and fire workers, deciding the worker role.
Figure 6: Hire/fire workers using general view (left) or specific view (right)
4.5 Inventory ControlThe ease of use of the game allows the player to know at every moment the exact amount of inventory for each partor product. This game feature is available to the player as a general inventory for the part, which can be found in the
Part window, or an inventory for a specific station, or even in the receiving dock. In addition, the inventory in a
specific storage station (i.e. raw material, work in process, finished goods) is different from the receiving dock,
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 8/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
because the storage stations are controlled through slots available and is not limited for part type, as shown in Figure
7, as opposed to the receiving dock which limits capacity and type of part.
However, the effective management of inventory control requires adequate knowledge of inventories for different
types of activities. For example, the reorder point and order quantity for purchase activity, the unit load for transport
activity, the amount of required parts for operation activity, and the amount of finished goods to fulfill the orders for
shipping activity.
Figure 7: Raw Material Storage – three different parts
4.6 Production OperationsCurrently the game supports two kinds of operations: cutting and assembly. Both processes (example shown in
Figure 8) can be found in different game levels. Each process produces as many parts as it is specified in the
operation activity and requires an adequate machine and a skilled operator.
Figure 8: Assembly process
4.7 Probability Distributions and TimingThe use of statistical distributions has been important in the game development process, with aims to achieve resultsas realistically as possible. Normal, uniform and exponential distributions are used as part of some elements in the
factory, e.g. machine times, equipment repair times, worker performance, and order shipments. Table 2 shows a
detailed use of probability distributions in the game.
Table 2: Probability distributions in the game
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 9/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
Factory Element Activity Distribution Sub-Activity
Machine Operation
Uniform (U),
Exponential (E),Normal (N)
1. Machine time – U – N
2. Time between failures – E
3.
Repair time – U
4. Factor – N
Equipment Transport
Uniform (U),
Exponential (E),
Normal (N)
1. Pick up time – U – N
2. Placement time – U – N
3. Time between failures – E
4. Repair time – U
5.
Factor – N
OperatorOperation,
Transport
Uniform (U),
Normal (N)
1. Skill – U
Supplier Purchase - 1. Fixed time
Order Shipping Uniform (U) 1. Time to ship completed order – U
However, as shown in Table 2 above, these statistical distributions allow calculating different equations in order to
obtain a variable time, which is used as part of the execution of different activities. Also, the use of these
distributions is important because it allows obtaining different times for each execution. Table 3 shows the detailed
equations.
Table 3: Equations to obtain different times in each activity
Sub-Activity Equation
Machine time!ℎ # & '#()* +#(* ,--
# & % +! !#
Time between failures # & )()-
Repair time # & +#()*-
Pick up time. & '#()* +#(* ,--
# & % . +
Placement time & '#()* +#(* ,-- # & % +
Walk loaded with
equipment
. & '#()* +#(* ,--
# & (
.- + +%#
Walk unloaded with
equipment
& '#()* +#(* ,--
# & (
- + +%#
Walk alone
& '#()* +#(* ,--
# & (
- +
Factor operator (skill) + & +#()* -
Factor machine/equipment
+! & '#()* -
+%# & '#()* -
5. Game Testing Process
Once completed the game development, the next step in the software development life cycle is the “testing process”,
which will have as technical objectives: to find and fix as many bugs as possible, to improve the GUI design, and to
assess the game usability; and as conceptual objectives: to assess how the game design improves student retention
and motivation, to improve student understanding of IE core concepts, and improvement of problem-solving skills in
complex unstructured problems. This process development takes different steps as shown below:
1. Tester selection. This step requires identifying a small number of persons with different profiles, e.g. IE students
preferable, gamers and non-gamers, and men and women.
8/18/2019 David Bengoa is Er c 2013
http://slidepdf.com/reader/full/david-bengoa-is-er-c-2013 10/10
Bengoa, Rullán, Vélez, Pomales-García, and Zapata
2. Pre-test and consent. The selected students will take a test before playing the game. It will ask about their
experience in general games, serious games, and different questions in order to know their knowledge of the IE
concepts applied in the game. Also, they will complete a consent form, where they allow the use of their personal
data and game data by the researchers in order to track their progress in the IE program.
3. Game Play. In this step the players should play between 2 and 3 hours, and the results will be stored in a
principal database; which will contain for each level: number of attempts, best high score, status, and others.
4. Post-test. Once participants have played, they will have an interview in order to assess motivation, and
understanding of IE concepts shown in the game. Also, the academic progress of the students will be tracked
through registrar’s office data to evaluate student academic records. It is important to track the student progress
throughout the program as the primary goal for the proposed work (NSF-proposal) is to link the effect of the
game in student retention and knowledge.
6. ConclusionsGame development has been a challenge for the team, given the game complexity, as well as the use and integration
of different emerging technologies. The current version provides 4 different levels of increasing difficulty and can
be easily installed in multiplatform systems (i.e. Windows, MacOS and Linux). For a future release, it could be
available in Android tablets.
Currently the game is in pilot phase (testing process), and once completed is expected to be played by the freshman
students, in order to measure the research objective, which is to know if the students learned or not core IE concepts
and improved problem-solving skills. As part of this testing process, many critical bugs has been fixed but there is a
few more in process. Moreover, the GUI design has been improved in order to make the user’s interaction as simple
and efficient as possible.
Finally, we expect that this research will promote the development of other educational activities based on gaming,
given the lack of IE research through games.
AcknowledgementsWe would like to acknowledge the support from the National Science Foundation, Award No. 0835990.
References1. Alan Emrich (2004-2005). “The gamer generation and why baby boomers shouldn’t worry so much about
them”; p1. http://www.alanemrich.com/SGI/Week_10/SGI%2010%20GAMER%20GENERATION.pdf
2. Thilmany, J. (2012). Gaming Pros and Cons. Mechanical Engineering; Mar2012, Vol. 134 Issue 3, p20-20
3. Kelly, H., Howell, K., Gilnert, E., Holding L., Swain, C., Burrowbridge, A., Roper, M. (2007). How to
Build Serious Games. Communications of the ACM; Jul2007, Vol.50 Issue 7, p44-49
4. Mayo, Merrilea J. (2007). Games for Science and Engineering Education. Communications of the ACM;Jul2007, Vol.50 Issue 7, p30-35
5. Bernardi, G., Cesta, A., Coraci, L., Cortellessa, G., De Benedictis, R., Mohier, F., Polutnik, J. (2011).
“Only hope remains in the Pandora’s” - http://www.pandoraproject.eu/
6. Zapusek, M. (2011). Serious computer games as instructional technology. Mipro, 2011 Proceedings of the
34th International Convention; May2011, p1056-1058
7.
MySQL – Database and Workbench – http://www.mysql.com/ 8. SQLite – SQL database engine – http://www.sqlite.org/
9. JMonkeyEngine 3.0. Java OpenGL Game Engine (2012), http://jmonkeyengine.com/engine/
10. Java SE 6 – Oracle Technology Network (2012), http://www.java.com/
11.
SimPack by Dr. Paul Fishwick – University of Florida http://www.cise.ufl.edu/~fishwick/Welcome.html
12. Hart, P., Nilsson, N., Raphael, B. (1968). A Formal Basis for the Heuristic Determination of Minimum
Cost Paths. IEEE Transactions on Systems and Cybernetics SSC4; 100-10713. Nifty GUI 1.3.1 – http://nifty-gui.lessvoid.com/
top related