This section explains the system requirements and the detailed scheme of the proposed system. In the inspection schedule of PET, due to the many conditions and changes to be considered, such as the limitation of the time limit of special drugs, limited medical equipment, and possible rescanning, manual scheduling and time control are quite difficult. This paper proposes a real-time automatic scheduling and control system for PET examination, which can instantly estimate the examination time, allocate medical resources, and respond to possible rescanning in time.
2.2. Details of the Proposed System
The traditional PET examination process is shown in
Figure 1. According to Definition 1 and
Figure 1, we propose a new scheduling and control system (
Figure 2), which contains five roles and eight phases.
The five roles are patient
, medical staff
, radiographer
, server
, and announcement screen, where
is at the indwelling needle area in the IV indwelling needle room (or called the outer injection room)
and at the indwelling needle desk we equipped with a mobile device
and a beacon signal receiver
. We also equipped with a radiographer
, a mobile device
, and a beacon signal receiver
in the
j-th examination room and on the injection area in the inner injection room. Both
and
have functions to detect the content and strength of Beacon signals.
Table 1 defines the symbols and parameters used in the proposed method.
The system is divided into seven phases and two algorithms: initial phase, patient check-in phase, patient indwelling needle phase, bed allocation phase, algorithm for scheduling examination room, estimating injection time and scan time, injection phase, scanning phase, end examination phase, and algorithm to determine Beacon’s entry and exit from a certain area.
2.2.1. Initial Phase
let , , , , = 17:00, and the average task times , , and be their average time of the previous week.
2.2.2. Patient Check-In Phase
When
checks in,
configures a Beacon for
, uses
to scan
’s medical-record-number barcode
, enters
’s body status
and Beacon serial number
, and sends
,
, and
to
. Then,
calculates the estimated IV indwelling time as follows:
followed by adding
to
. Finally, the patient waits in waiting area. The check-in process is shown in
Figure 3.
2.2.3. Patient Indwelling Needle Phase
When the
’s previous patient (i.e.,
or
) indwelling needle ends and leaves
,
will receive the message that
(or
) has left
, and then automatically transfer
’s
to
, letting
know that the next beacon to be determined whether the signal is to enter or leave is
(please refer to
Section 2.2.9 for the detailed determine method). When the time is one minute before
,
sends the indwelling needle notification to
(or
checks
and judges that
can be indwelling), and
goes to the waiting area to notify
to go to
to indwell needle. Otherwise, the patient can actively enter the room after receiving a notification (by sight (for the patient to see that the time is up), hearing (broadcasting the patient’s name), or touching (by making the patient’s pager vibrate through the wireless paging system).
When
enters
,
judges that
has entered
indwelling needle and then informs
.
S then captures the time of entering
as the start time of the indwelling needle
, adds
to
and deletes it from
, and calculates the actual and estimated time difference as follows:
then uses
to update the estimated indwelling time for patients in
as follows:
During
indwelling,
transmits
to
via
. Next,
allocates an uptake room for patients in
, calculates the estimated injection time
and the estimated scan time
(for detailed methods, refer to
Section 2.2.4 and
Section 2.2.5), and uses
to calculate the
back.
After the indwelling needle is completed,
leaves
to the waiting area to wait for the injection. At this time,
automatically determines that
is leaving
and sends a “
has left
” message to
. Nest,
extracts the current time
, and calculates the length of the
indwelling needle as follows:
Finally,
calculates the average indwelling time from
to
as follows:
The indwelling needle process is shown in
Figure 4.
2.2.4. Bed Allocation Phase
After processing a “successful scan” patient
,
uses
to send
to
.
then runs
to vacate
’s bed, and runs
to assign this bed to the next waiting patient
(
Figure 5). Additionally, when the patient
indwelling needle ends,
performs the bed allocation algorithm
to try to assign an vacated bed to
.
There are three types of beds in the uptake room, and all three types can be allocated to general patients. However, bedridden patients can only use type-A beds, while patients with short drug absorption times (i.e.,
) are often allocated to type-B beds, while type-C Beds can be dispensed to short-absorption-time or general patients. We use “weight allocation” to calculate the priority of bed allocation in the uptake room. The allocation method is shown in
Table 2, where 0 means not applicable.
chooses the unoccupied bed with the highest weight as
. If
is allocated to a bed,
extracts the current time as
, and adds
to
and removes it from
.
then runs the algorithm for estimating scan time:
(
Figure 6). Otherwise, if
is not allocated to any bed,
continues to wait at
until there is a vacated bed in the uptake room.
2.2.5. Algorithm for Scheduling Examination Room, and Estimating Injection and Examination Time
After executing
,
then executes the algorithm
one by one for patients whose injection has not been estimated in
, where
is used for arranging the examination room
, as well as estimating the injection time
and start/end examination time
/
(
Figure 6). If
is a patient who has not completed the indwelling needle,
lets
’s fastest injectable time
be
. Otherwise,
lets
be
.
Next, separately determines which of and is earlier to find out the fastest available scan time in each examination room , where is the estimated time to leave the examination room for the last patient waiting for . For , if , it means the fastest scan time of in is . Otherwise, it means has the opportunity to scan before . Therefore, searches for free time space between and .
If there is enough time (higher than the average examination time () in the time space between and or between and , it means can perform examinations in the free time gap between “patient end scan” and “patient start scan”. Because may fall before , that is, is just when is inspecting, this situation is not feasible. Therefore, the fastest time for scan should be to be a reasonable time. may also fall behind ; hence, the fastest available time can be directly. Therefore, chooses = max{, }. If there is not enough time between and , then let be .
Finally, selects the minimum value from as , uses it to compute the estimated injection time and estimated end examination time , and adds to .
2.2.6. Injection Phase
When the
injection ends and leaves
,
will receive the message of “
is leaving
”, and then automatically pass
from
to
to let
know the next beacon determining entry or exit is
(please refer to
Section 2.2.9 for the detailed Beacon algorithm). When the time is one minute before
,
sends an injection notification to
. After receiving the notice,
goes to the waiting area and tells
to go to
to inject.
When enters , judges that enters for injection and informs . then extracts the current time as the injection start time and removes from .
When
leaves
to
at the end of the injection,
judges that
has left
and notifies
.
extracts the current time as the departure time
, and calculates
’s injection length as follows:
Finally,
calculates the average injection time from
to
as follows:
The patient injection process is shown in
Figure 7.
2.2.7. Scanning Phase
When the
examination ends and leaves
,
will receive the message of “
is leaving
”, and then automatically pass
from
to
to let
know the next beacon determining entry or exit is
(please refer to
Section 2.2.9 for the detailed Beacon algorithm). When the time is 5 min before
,
sends an examination notification to
. After receiving the notice (or
determines that
can be scanned via checking
),
goes to the uptake room and tells
to go to
to wait for examination.
When enters , judges that enters and informs . then extracts the current time as the examination start time and removes from .
If , which monitors the patient’s photographic image in the background, judges that ’s scan image is successful, they use to transmit to . empties , and then automatically allocates the bed to a patient in . In addition, needs go to to pull the needle and return the Beacon to complete the inspection.
If judges that the scan image of fails, then needs to be scanned again. uses to select a patient so that should be rescanned after the patient’s end examination. then updates all the estimated examination times of the patients who are injected in , clears the estimated injection and examination times of all patients in , and re-executes to calculate the new estimated injection and examination times of all patients.
When
leaves
at the end of examination,
judges that
has left
and notifies
.
extracts the current time as the departure time
, and calculates
’s examination length as follows:
Finally,
calculates the average scan time from
to
as follows:
The patient examination process is shown in
Figure 8.
2.2.8. End Examination Phase
Patient
, who was successfully examined, would return to the injection room, remove the needle, and return their Beacon.
then clicks the end button via
to inform
, and completes the PET inspection (
Figure 9).
2.2.9. Algorithm to Determine Beacon’s Entering or Leaving from a Certain Area
or
can judge whether
enters/leaves an area on the basis of whether
is “greater than
” or “less than
” (
Figure 10). However, when
approaches the entrance to the area, the value of
will oscillate back and forth between
and
, making it impossible to determine whether
enters or leaves the area. Therefore, we designate that
must be detected greater than
(or less than
) more than five consecutive times before it can be judged as entering (or leaving).