The slides of our paper presented at The 2015 International Conference on Software Engineering Research and Practice. The paper can be found here, https://www.researchgate.net/publication/290325167_Modeling_Elevator_System_With_Coloured_Petri_Nets
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
In software testing, there are many paths between the entry and exit of a software program. So it’s difficult to fully test all paths of even a simple unit. This is a challenge when we design test cases.
Unified Modeling Language (UML) is a modeling language, used for design. Designed based on OMG Standard, Object this helps to express and design documents, software. This is particularly useful for OO design. Here is a brief tutorial that talks about UML usage.
Modeling Elevator System With Coloured Petri NetsMohammed Assiri
The slides of a seminar showing my research about using CPNs to model a real system.
The thesis can be found as a downloadable PDF file here, https://macsphere.mcmaster.ca/handle/11375/18040
Also, it can be ordered as a printed book from Amazon here, https://www.amazon.com/Modeling-Elevator-System-Coloured-Petri/dp/1537219103
Application Of The Three-In-One Control Platform Based On OPC In The Lifting-...IJRES Journal
The three-in-one control platform includes MATLAB, WINCC and S7 300 PLC. In the platform, MATLAB communicates with WINCC through OPC and WINCC communicates with PLC. It is a control platform with WINCC as the bridge. The platform is designed to shorten the operating time of the lifting-sliding stereo garage, and at the same time to achieve controlling the stereo garage through monitoring interface. Genetic algorithm is designed with MATLAB for getting the optimal scheduling scheme of lifting-sliding stereo garage in the platform. Then the date was passed to WINCC through OPC. PLC conducts the scheduling of the stereo garage based on the date getting from WINCC, and through the WINCC to achieve real time picture monitoring and operating of the stereo garage. Under the same conditions, the control platform can get access to the vehicle in the shortest time.
In software testing, there are many paths between the entry and exit of a software program. So it’s difficult to fully test all paths of even a simple unit. This is a challenge when we design test cases.
Unified Modeling Language (UML) is a modeling language, used for design. Designed based on OMG Standard, Object this helps to express and design documents, software. This is particularly useful for OO design. Here is a brief tutorial that talks about UML usage.
Modeling Elevator System With Coloured Petri NetsMohammed Assiri
The slides of a seminar showing my research about using CPNs to model a real system.
The thesis can be found as a downloadable PDF file here, https://macsphere.mcmaster.ca/handle/11375/18040
Also, it can be ordered as a printed book from Amazon here, https://www.amazon.com/Modeling-Elevator-System-Coloured-Petri/dp/1537219103
Application Of The Three-In-One Control Platform Based On OPC In The Lifting-...IJRES Journal
The three-in-one control platform includes MATLAB, WINCC and S7 300 PLC. In the platform, MATLAB communicates with WINCC through OPC and WINCC communicates with PLC. It is a control platform with WINCC as the bridge. The platform is designed to shorten the operating time of the lifting-sliding stereo garage, and at the same time to achieve controlling the stereo garage through monitoring interface. Genetic algorithm is designed with MATLAB for getting the optimal scheduling scheme of lifting-sliding stereo garage in the platform. Then the date was passed to WINCC through OPC. PLC conducts the scheduling of the stereo garage based on the date getting from WINCC, and through the WINCC to achieve real time picture monitoring and operating of the stereo garage. Under the same conditions, the control platform can get access to the vehicle in the shortest time.
Elevator system. a case study of coloured petri netsMohammed Assiri
The slide of our paper presented at The International Conference on Advanced Technology & SciencesAt 2016, ICAT’16.
The paper can be found here, https://www.researchgate.net/publication/309620060_Elevator_System_A_Case_Study_of_Coloured_Petri_Nets
Combining Phase Identification and Statistic Modeling for Automated Parallel ...Mingliang Liu
Parallel application benchmarks are indispensable for evaluating/optimizing HPC software and hardware. However, it is very challenging and costly to obtain high-fidelity benchmarks reflecting the scale and complexity of state-of-the-art parallel applications. Hand-extracted synthetic benchmarks are time- and labor-intensive to create. Real applications themselves, while offering most accurate performance evaluation, are expensive to compile, port, reconfigure, and often plainly inaccessible due to security or ownership concerns. This work contributes APPrime, a novel tool for trace-based automatic parallel benchmark generation. Taking as input standard communication-I/O traces of an application's execution, it couples accurate automatic phase identification with statistical regeneration of event parameters to create compact, portable, and to some degree reconfigurable parallel application benchmarks. Experiments with four NAS Parallel Benchmarks (NPB) and three real scientific simulation codes confirm the fidelity of APPrime benchmarks. They retain the original applications' performance characteristics, in particular their relative performance across platforms. Also, the result benchmarks, already released online, are much more compact and easy-to-port compared to the original applications.
http://dl.acm.org/citation.cfm?id=2745876
Malaysian car plate localization using region-based convolutional neural networkjournalBEEI
Automatic car plate localization and recognition system is a system that identifies the car plate location and recognizes the characters on the car plate input images. Within the automated system, the car plate localization stage is the first stage and is the most crucial stage as the success rate of the whole system depends heavily on it. In this paper, a Malaysian car plate localization system using Region-based Convolutional Neural Network (R-CNN) is proposed. Using transfer learning on the AlexNet CNN, the localization was greatly improved achieving best precision and recall rate of 95.19% and 97.84% respectively. Besides, the proposed R-CNN was able to localize car plates in complex scenarios such as under occlusion.
Help the Genetic Algorithm to Minimize the Urban Traffic on IntersectionsIJORCS
Control of traffic lights at the intersections of the main issues is the optimal traffic. Intersections to regulate traffic flow of vehicles and eliminate conflicting traffic flows are used. Modeling and simulation of traffic are widely used in industry. In fact, the modeling and simulation of an industrial system is studied before creating economically and when it is affordable. The aim of this article is a smart way to control traffic. The first stage of the project with the objective of collecting statistical data (cycle time of each of the intersection of the lights of vehicles is waiting for a red light) steps where the data collection found optimal amounts next it is. Introduced by genetic algorithm optimization of parameters is performed. GA begin with coding step as a binary variable (the range specified by the initial data set is obtained) will start with an initial population and then a new generation of genetic operators mutation and crossover and will Finally, the members of the optimal fitness values are selected as the solution set. The optimal output of Petri nets CPN TOOLS modeling and software have been implemented. The results indicate that the performance improvement project in intersections traffic control systems. It is known that other data collected and enforced intersections of evolutionary methods such as genetic algorithms to reduce the waiting time for traffic lights behind the red lights and to determine the appropriate cycle.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
Why React Native as a Strategic Advantage for Startup Innovation.pdfayushiqss
Do you know that React Native is being increasingly adopted by startups as well as big companies in the mobile app development industry? Big names like Facebook, Instagram, and Pinterest have already integrated this robust open-source framework.
In fact, according to a report by Statista, the number of React Native developers has been steadily increasing over the years, reaching an estimated 1.9 million by the end of 2024. This means that the demand for this framework in the job market has been growing making it a valuable skill.
But what makes React Native so popular for mobile application development? It offers excellent cross-platform capabilities among other benefits. This way, with React Native, developers can write code once and run it on both iOS and Android devices thus saving time and resources leading to shorter development cycles hence faster time-to-market for your app.
Let’s take the example of a startup, which wanted to release their app on both iOS and Android at once. Through the use of React Native they managed to create an app and bring it into the market within a very short period. This helped them gain an advantage over their competitors because they had access to a large user base who were able to generate revenue quickly for them.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
2. 1. Introduction
2. The Elevator System
3. Coloured Petri Nets
4. CPN-based Modelling of Elevator System
5. Analysis
6. Conclusion
Outline:
2
3. • The elevator system is one of the software engineering benchmarks
[Ghezzi et al. (2003)]*
• It has been modeled many times the in past and that includes Petri Nets:
1. Petri net based dynamic scheduling of an elevator system [Lin and Fu
(1996)].
2. Dynamic scheduling of elevator systems over hybrid Petri net/rule modeling
[Huang and Fu (1998)].
3. Timed Petri net based approach for elevator group controls [Cho et al.
(1999)].
4. Abstract Petri net based approach to problem solving in real time
applications [Etessami and Hura (1989)]
5. Petri net-based modeling and control of the multi-elevator systems
[Ahmad et al. (2014)]
6. Simulation of the intelligent control circuit based on Petri net [Ye et al.
(2011)].
* Fundamentals of Software Engineering. Pearson Prentice Hall, 2nd edition.
1. Introduction
3
4. 7. Requirements Engineering for Reactive Systems: Coloured Petri
Nets for an Elevator Controller [Fernandes et al. (2007)]
8. Modeling and analysis of elevator system based on timed-Coloured
Petri net [Liqian et al. (2004)]
Nevertheless, all of these previous models are either static or dependent on a
particular number of elevators and floors, the concept of colour as a data type
was not fully utilized, or other formalisms such as UML were substantially
involved.
Our model is independent of the number of floors and elevators and
covers different stages of the elevator system in substantial detail.
We believe our model is flexible enough to be adapted to different
algorithms and rules, and may eventually evolve into a ’standard’
formal model of the elevator system.
1. Introduction (Cont.)
4
5. Ø Integral aspect of buildings from the point at which they are first
designed
Ø The complexity of these elevator systems arises from factors such
as scheduling needs, resource allocation, and stochastic control, to
name a few. Handling these jobs usually results in systems
behaving as discrete event systems [P. J. Ramadge et al. (1989)]*
Ø The elevator system is usually defined as follows [Ghezzi et al.
(2003)]**: (next slide)
* The control of discrete event systems,” in Proceedings of the IEEE 77.1, 1989, pp. 81–98.
** Fundamentals of Software Engineering. Pearson Prentice Hall, 2nd edition.
2. The Elevator System
5
6. An elevator system is to be installed in a building with m floors and n cars. The
elevator and the control mechanisms are supplied by the manufacturer. The
problem concerns the logistics of moving cars between floors according to the
following :
a. Each elevator’s car has a set of buttons - one for each floor. Pressing
these buttons signals the elevator to move to the corresponding floor.
b. On the wall outside the elevator each floor has two buttons (with the
exception of the ground and the top floors). One button is pressed to
request an upward moving elevator and another button is pressed to
request a downward moving elevator. If both buttons are pressed, then
each direction is assigned to a different car.
c. When an elevator has not received any requests for service, it should be
held at its parking floor with its doors closed until it receives further
requests.
d. All requests for elevators from floors (i.e. hall calls) must be serviced
eventually. The applied algorithm controls the priority of floors. All requests
for floors within elevators (i.e. car calls) must be serviced eventually, with
floors usually serviced sequentially in the direction of travel.
e. Each elevator’s car has an emergency button which when pressed causes
an alarm. The elevator is then deemed "out of service". Each elevator has
a mechanism to cancel its "out of service" status.
v The Definition:
6
7. • Coloured Petri Nets (CPN) [Jensen (1981)*] are an extension of Petri Nets
which are often used to model behaviours of rather complex systems.
• CPN have preserved the useful properties of Petri Nets while at the same
time extending the initial formalism to allow for distinction between tokens.
• It is a graphical language for constructing models of concurrent systems
and analyzing their properties.
* Coloured Petri Nets and the Invariant Method, Theoretical Computer Science
3. Coloured Petri Nets
7
8. • CP-nets is a discrete-event modelling language combining the capabilities
of Petri Nets with the capabilities of a high-level programming language.
• Petri Nets provide the foundation of the graphical notation and the basic
primitives for modelling concurrency, communication, and synchronisation.
• Coloured Petri Nets allow tokens to have a data value attached to them.
This attached data value is called token colour. Although the colour can be
of any arbitrarily complex type, places in CPNs usually contain tokens of
one type. This type is referred to as the colour set of the place.
• CPN support hierarchical modeling and are equipped with a modeling
language called CPN ML which is based on the standard functional
programming language ML.
3. Coloured Petri Nets (Cont.)
8
9. • Semi-formal definition:
A Coloured Peter Net is a tuple :
CPN = (P,T,A,Σ,C,N,E,G,I)
• For more details and theory of CPN, please refer to Coloured Petri Nets
Modelling and Validation of Concurrent Systems by Jensen and
Kristensen (2009)
v Definition
9
12. Colour
Sets
Defini1ons
Car
ID
{
i
|i
∈
Z+
∧
i
≤
total
number
of
cars}
Range
{
r
|
r
∈
Z+
∧
lowest
floor
≤
r
≤
highest
floor}
Status
{
idle,
emergency,
out
of
service,
up,
down
}
Desired
Floors
{
[l]
|
l
∈
Range}
Call
Issuer
{
request,
system,
non,
reservacon}
Cars
{
(car
id,
current
floor,
status,
parking
floor,
desired
floors,
call
issuer)
|
car
id
∈
Car
ID,
current
floor
∈
Range,
status
∈
Status,
parking
floor
∈
Range,
desired
floors
∈
Desired
Floors,
call
issuer
∈
Call
Issuer}
v The Definition of The Colour Set “Cars”
12
13. 13
The initial value of the parking floor is calculated generally by:
1. Floors′ Number = (highest floor − lowest floor ) + 1
2. Scope = |floors′ number ÷ cars′ number|
3. Scope Head = ((scope ∗ car id) − (scope − 1)) + (lowest floor′s − 1)
4. Scope Tail = (scope ∗ car id) + (lowest floor − 1)
∴ Spot(car id) = scope′s head (car id)
14. Colour
Sets
Defini1ons
Car
Info
{(current
floor,
status,
descnacons,
car
id)
|
current
floor
∈
Range,
status
∈
Status,
descnacons
∈
Desired
Floors,
car
id
∈
Car
ID}
Database
{[d]
|
d
∈
Car
Info}
v The Definition of The Colour Set “Database”
14
15. 4.2 The Hall-Call Sub-Model
15
counter
selected
floor's num
requested call
floor's
number
CarsCars
DatabaseDatabasePrk SysPrk SysPrk Sys
all floors'
numbers
watch
generators
log
Release Random
Number
Release
Assign Hall Call
Assign
Direction
n
rn_random()
new_call
new_call
car
hall_call
snd_hcall
(car,hall_call)
n+1
i i-1
i
i new_call
hall_call
i
i+1
asn_dir(new_call)
hall_call
db
upd_db
(hall_call,
db,car)
INT
1`1
()
Range
Range
selected_floor
INT
1`1
Hall_Call
Hall_Call
[rn_guard(n,i)]
[r_guard(i)]
[asn_hcall_guard
(hall_call,car,db)]
Hall_Call
Database
Database
initialize_database()
initialize_cars()
Cars
Cars
16. v The Processing of Hall-Calls
16
requested call
Hall_Call
CarsCars
initialize_cars()
DatabaseDatabase
initialize_database()
Prk SysPrk Sys
Hall_Call
log
Hall_Call
Assign Hall Call
[asn_hcall_guard
(hall_call,car,db)]
car
hall_call
snd_hcall
(car,hall_call)
hall_call
hall_call
db
upd_db
(hall_call,
db,car)
Hall
Call
{(hall
call
floor,
status)
|
hall
call
floor
∈
Range,
status
∈
Status}
17. 17
The Rules
1. The selected car is either idle or
travelling toward the direction of the hall call,
2. The selected car is not reserved, and
3. The selected car is elected by the applied algorithm.
18. v The Processing of Hall-Calls
18
requested call
Hall_Call
CarsCars
initialize_cars()
DatabaseDatabase
initialize_database()
Prk SysPrk Sys
Hall_Call
log
Hall_Call
Assign Hall Call
[asn_hcall_guard
(hall_call,car,db)]
car
hall_call
snd_hcall
(car,hall_call)
hall_call
hall_call
db
upd_db
(hall_call,
db,car)
Hall
Call
{(hall
call
floor,
status)
|
hall
call
floor
∈
Range,
status
∈
Status}
19. v The Adopted Algorithms:
19
• The nearest-car algorithm [Barney (2003)*]:
1. Analysing the token of place Database.
a. The cars with proper status are extracted from the token.
b. The distances between hall-call floor and cars’ current floors are calculated.
2. The hall call is assigned to the car with minimum distance to the hall call floor.
• The minimum waiting algorithm:
3. Calculating the stop times consumed by the already placed and being served calls
between the floor of the new hall call and each car’s current floor.
4. The car with the expected minimum waiting-time is assigned to serve the new hall call
• The scope algorithm:
H ≤ A ≤ T.
where:
H = the head floor of car’s scope
A = the answered hall-call floors
T = the tail floor of car’s scope
* Elevator Traffic Handbook: Theory and Practice.
20. v Producing Floors’ Numbers:
20
counter
selected
floor's num
floor's
number
all floors'
numbers
watch
generators
Release Random
Number
Release
n
rn_random()
new_call
new_call
n+1
i
i
INT
1`1
()
Range
Range
selected_floor
INT
1`1
[rn_guard(n,i)]
[r_guard(i)]
21. v The Parameters of Hall-Call Sub-Model
21
Parameters
Legal
values
Producing
mode
{finite,
infinite}
Times
of
finite
hall
calls
{y
|
y
∈
Z
∧
0
≤
y}
The
most
requested
floor
{r
|
r
∈
Range}
Duplicacon
of
most
requested
floor
{d
|
d
∈
Z
∧
0
≤
d}
The
applied
algorithm
{minimum
waicng,
nearest,
scope}
Producing’
pause
number∗
{p
|
p
∈
Z
∧
0
<
p}
22. v Associating Floors’ Numbers with Directions
22
requested call
floor's
number
Assign
Direction
new_call
asn_dir(new_call)
Range
Hall_Call
23. 23
• If the produced number equates the highest floor, then it is associated
restrictedly with the down direction,
• Else if the produced number equates the lowest floor, then it is associated
restrictedly with up direction.
• Otherwise, a produced number is associated non-deterministically with up
direction or down direction.
ü Thus, a hall call of a valid floor’s number and an appropriate direction is
produced correctly and completely.
24. 4.3 The Car-Call Sub-Model
24
CarsCarsCars log
car call
all floors'
numbers
counter
specific
floors' num
DatabaseDatabase
watch
generator
Coordinate
Release Floor's Number
Reproduce
archive(car,car_call,
new_call,sf)car_callcar
snd_ccall(car,
new_call,sf)
new_call
rn_random()
n+1
n
sf
place_calls
(car,sf)
db
upd_db_
(new_call,
db,car,sf)
i+1
i
i
i-1
car_call
reproduce(sf)sf
car
INT
1`1[rfn_guard(n,i)]()
RangeINT
1`1
Specific_Floors
initialize_sfloors()
[rep_guard
(sf,car,car_call)]
0Car_Calls
initialize_log()initialize_cars()
CarsDatabase
initialize_database()
[coord_guard(car_call,car,sf,new_call)]
Database
25. v The Coordination between Cars and Car-Calls
25
CarsCars log
car call
specific
floors' num
DatabaseDatabase
Coordinate
archive(car,car_call,
new_call,sf)car_callcar
snd_ccall(car,
new_call,sf)
new_call
sf
place_calls
(car,sf)
db
upd_db_
(new_call,
db,car,sf)
Range
Specific_Floors
initialize_sfloors()
Car_Calls
initialize_log()initialize_cars()
CarsDatabase
initialize_database()
[coord_guard(car_call,car,sf,new_call)]
Specific
Floors
{(car
id,
specific
calls,
repeated
cmes)
|
car
id
∈
Car
ID,
Specific
calls
∈
Desired
Floors,
repeated
cmes
∈
Z}
26. v Producing Car-Calls
26
car call
all floors'
numbers
counter
watch
generator
Release Floor's Number
rn_random()
n+1
n
i+1
i
INT
1`1
[rfn_guard(n,i)]()
RangeINT
1`1
specific
floors' num
Reproduce
reproduce(sf)sf
Specific_Floors
initialize_sfloors()
[rep_guard
(sf,car,car_call)]
27. v The Parameters of Car-call Sub-model
27
Parameters
Legal
values
Producing
mode
{finite,
infinite}
Times
of
finite
car
calls
{x
|
x
∈
Z
∧
0
≤
x}
Most
desired
floors
{[f]
|
f
∈
Range}
Frequency
of
desired
floors
{d
|
d
∈
Z
∧
0
≤
d}
Producing
pause
number
{p
|
p
∈
Z+
}
28. 4.4 The System-Cycle Sub-Model
28
CarsCars
Cars
initialize_cars()
Cars
out of service
Cars
error log
Cars
DatabaseDatabase
Database
initialize_database()
Databasesuccess log
Cars
Doors
Doors
initialize_doors ()
Database
Database
initialize_database()
Database
Maintain
[mnt_guard(car)]
0
Restart
[rst_guard(car)]
Transfer
[trn_guard(car)]
Arrive
[arr_guard(car,door)]
suspend
(car)
car
car
car
restart(car)
car
transfer(car)
upd_trn(car,db) db
cararrive(car)
car
doordoor
upd_arr(car,db)
db
upd_susp
(car,db)
db
db upd_rst
(car,db)
29. Parameters
Legal
values
Cars’
number
{n
|
n
∈
Z+}
Lowest
floor
number
{f
|
f
∈
Z+
∧
f
<
highest
floor}
Highest
floors
number
{h
|
h
∈
Z+
∧
lowest
floor
<
h}
v The Parameters of System-Cycle Sub-Model
29
30. v The Maintenance Stage
30
CarsCars
out of service
error log
Database
Database
Maintain
Restart
suspend
(car)
car
car
car
restart(car)
upd_susp
(car,db)
db
db upd_rst
(car,db)
Cars
initialize_cars()
[rst_guard(car)]
Cars
initialize_database()
[mnt_guard(car)]
0
Cars
Parameter
Legal
value
Restart
pending
cars
automaccally
{”yes”,”no”
}
31. v The Transition Stage
31
CarsCars
DatabaseDatabase
Database
Transfer
car
transfer(car)
upd_trn(car,db) db
Cars
initialize_cars() [trn_guard(car)]
initialize_database()
32. v The Arrival Stage
32
CarsCars
Cars
initialize_cars()
DatabaseDatabase
Database
initialize_database()
success log
Cars
Doors
Doors
initialize_doors ()
Arrive
[arr_guard(car,door)]
cararrive(car)
car
doordoor
upd_arr(car,db)
db
33. 4.5 The Parking Optimizer Sub-Models
33
• Holding idle cars on or near floors where most hall-calls are placed
substantially improves passenger satisfaction and the system’s energy
usage and efficiency [Barney (2003)]*.
• Therefore, cars are initially distributed in fair distances between the lowest
and highest floors. Subsequently, the parking optimizer sub-models
continuously analyse the placed hall-calls and then assign the elected
floors to the cars.
• The parking optimizer models include the election sub-model and the
position sub-model.
* Elevator Traffic Handbook: Theory and Practice.
34. v The Election Sub-model
34
elected floor
counter
INT
1`1
sorted
list
INT_List
1`[]
candidate
floors
Floors_Statistics
processed
call counter
INT
1`0
floors
statistics
Floors_Statistics
initialize_statistics()
Prk SysPrk Sys
Hall_Call
Prk Sys
elected floors
Out
Range
Out
Lock SysLock Sys
INT
1`0
Lock Sys
Elect Floor
[elect_guard(tl,n,fs)]
3
Sort Floors' Recursion
[sort_guard(n,fs)]
2
Count Call
[count_guard(hall_call,fs,n,i)]
1
Sweepe Unelected
Floors
5
upd_pcc(n,i,tl)
hall_call
upd_efc(tl,n)
fs
fs
n
update_list(tl,n)
n
count(hall_call,fs)
i
tlsort_recursion(fs,tl)
n fsn+1
tl
update_statistics(fs)
(#floor fs)
i
1i
fs
fs
35. v The Position Sub-model
35
scopes
req
times
Scope_Statistics
cmpl
nxt
cmpl
orders
cmpl
prv
elected floors
In
Range
new
position
Identified_Floor
CarsCars
Cars
Lock SysLock Sys
Identify Scope
Count Scope's
Elected Floors
Identify Next
Scope
Decide Position
Identify Previous
Scope
Alter Car's
Parking Floor
s
s
identify_prv(s,t)
identify(s,floor)
s
s
identify_nxt(s,t)
s
count_floors(s)
decide(s)
f
car alter(car,f)
iunlocksys(i)
ii+1
t
t
floor
s
re_initialize(i)
n
INT
1`0
[scope_guard(s,floor)]
4
Scope
initialize_scope()
[n<>0]
6
Scope
[prv_guard(s,t)]
7
Scope
[nxt_guard(s,t)]
8
Scope
9
In
[alter_guard(car,f)]
10
Cars
Lock Sys
initialize_cars()
36. 5. Analysis
36
• Two analyses techniques were applied:
1. The first technique is the reachability analysis by means of the State Space tool:
This tool verified and generated an automatic report,
Ø The proposed model has dead markings that occur in cases such as a
placed hall-call with no available car.
Ø Transition Maintain and transition Restart are dead transitions which indicate
no operation failure of the proposed model.
2. The second technique is the simulation-based analysis by means of CPN Tools.
• Although this technique is flexible, it is also time-consuming.
• However, the proposed model was simulated repeatedly with different
settings, and the entire definition of the system was achievable.
37. 6. Conclusion
37
• We have provided a fairly general CPN-based model of the elevator system.
• The model covers various aspects of the elevator system and is divided into
five sub-models that can be analyzed independently.
• Such division allows for easier tracking of errors and faults in the elevator
system.
• The flexibility of the model allows for easy adaptation of different algorithms
and rules depending on the actual needs.