To study the problem of assessing the quality of
flight crew operations when using the simulator, the following objectives are
solved in the work:
– the definition of formalization elements that
would allow the implementation of evaluation logic;
– development of automated assessment methods;
– development of automated assessment system
software components-prototypes with the purpose of working capacity experimental
approbation of the proposed automated assessment method.
The problem of fully automatic assessment of the
crew’s activities at the moment cannot be solved, because there are no
exhaustive formal criteria and strict methodology for crew activities in the
industry. A key determinant of the assessment system is an expert instructor,
who forms integral assessments,
based on his experience. Therefore, the main objectives of the work are limited
to the automated generation of generalized data (partial estimates), which
simplify the process of forming integral final evaluations done by the
The developed methodology includes the following set
of basic sequential actions of the system: receiving and recording of flight
data, the formation of certain particular assessments of pilot actions tied to
flight phases, the recording and visualization of the pilot’s actions
assessment results. Recording of the pilot’s actions assessment results will
not be covered in this work. In general, the developed methodology does not
depend on the type of aircraft, although to formalize particular estimates for
a particular aircraft, it is necessary to define the evaluation elements, since
they depend on aircraft design and operation characteristics.
The recorded flight data from the simulators will
serve as the input data for the assessment, that will include both instrument
readings and information from aircraft systems. According to paragraph 4 of
section 1, this data will be sufficient to determine the main crew control
activities. The remaining data, which can not be formalized and subsequently
automatically identified, will need to be identified and assessed by the
instructor. It should be noted that, perhaps, this technique can be used to
assess the actions of the crew in real flight on the basis of flight parameters
from onboard flight data recorder. In this case, it will be possible to assess
the actions of the crew after the actual flight.
According to paragraph 3 section 1, aircraft flight
is divided into phases, and each phase will have different assessment criteria.
For example, the normal speed of the aircraft at the cruise phase of flight and
landing phase is significantly different. Also, based on the aircraft flight
operation manuals, at some phases of the flight, some aircraft systems must be
turned off, for example, on an L-410 aircraft it is necessary to turn off the
central electronic limiter (CEBO) during landing and take-off to ensure that
the engines power will reach the maximum operating mode. This objective will be
solved by method at the stage of recognition of the flight phase.
assessment of the crew actions is done by the instructor through comparing the
actions of the aircraft crew members in each section of the flight and in
emergency situations with criteria that are described in the flight manuals and
the general international rules to check if crew sustains proper operations and
permissible flight parameters.
To solve the problem of determining the formalization of
evaluation elements, the situational calculus and event calculus are used in
the work. Situational calculus allows to form sequences of transitions of
flight situations, based on a certain initial situation and transitions to
subsequent situations depending on the actions of pilots. This makes it
possible to identify the classified situations in which the crew may be in
flight, and which are selected in terms of the impact on the assessment of the
The situation calculus is a logic formalism
designed for representing and reasoning about dynamical domains.
situation calculus represents changing scenarios as a set of first-order
logic formulae. The basic elements of the calculus are:
The actions that can be performed in
The fluents that describe
the state of the world
A domain is
formalized by a number of formulae, namely:
Action precondition axioms, one for
Successor state axioms, one for each
Axioms describing the world in
The foundational axioms of the
The main elements of the situation
calculus are the actions, fluents and the situations. A number of objects are
also typically involved in the description of the world. The situation calculus
is based on a sorted domain with three sorts: actions, situations, and objects,
where the objects include everything that is not an action or a situation.
Variables of each sort can be used. While actions, situations, and objects are
elements of the domain, the fluents are modeled as either predicates or
functions. The actions form a sort of the domain. Variables of sort action can
be used. Actions can be quantified. In the situation calculus, a dynamic world
is modeled as progressing through a series of situations as a result of various
actions being performed within the world. A situation represents a history of
action occurrences. Statements whose truth value may change are
modeled by relational fluents, predicates which take a situation as their
final argument. Also possible are functional fluents, functions which take
a situation as their final argument and return a situation-dependent value.
Fluents may be thought of as “properties of the world”‘.
Situation calculus language Lsitcalc is a second order language with
equality. It has three disjoint sorts: action
for actions, situation for
situations, and a catch-all sort object
for everything else depending on the domain of application. Apart from the
standard alphabet of logical symbols there is ?, ¬ and ?, with the usual definitions of a
full set of connectives and quantifiers —
Lsitcalc has the
infinitely many individual variable symbols of each sort. We shall use s and a, with subscripts and superscripts, for variables of sort situation and action, respectively. We normally use lower case roman letters
other than a; s, with subscripts and superscripts for variables of sort object. In addition, because Lsitcalc is second order, its alphabet includes countably infinitely
many predicate variables of all arities.
function symbols of sort situation:
1. A constant symbol S0,
denoting the initial situation.
2. A binary function symbol do
: action × situation ® situation. The
intended interpretation is that do(a, s) denotes the successor situation
resulting from performing action a in
binary predicate symbol ?: situation × situation, defining an ordering relation
on situations. The intended interpretation of situations is as action
histories, in which case s ? s’ means that s is a proper subhistory of s’.
binary predicate symbol Poss : action × situation. The intended interpretation of Poss(a, s) is that it is
possible to perform the action a in
each n ? 0, countably infinitely many predicate symbols with arity n, and sorts (action ? object)n. These
are used to denote situation independent relations.
each n ? 0, countably infinitely many function symbols of sort (action ? object)n ® object. These are used to denote
situation independent functions.
each n ? 0, a finite or countably infinite number of function symbols of sort (action ? object)n
® action. These are called action
functions, and are used to denote actions. In most applications, there will be
just finitely many action functions, but we allow the possibility of an
infinite number of them.
each n ? 0, a finite or countably infinite number of predicate symbols with
arity n + 1, and sorts (action ? object)n × situation.
These predicate symbols are called relational fluents. In most applications,
there will be just finitely many relational fluents, but we do not preclude the
possibility of an infinite number of them. These are used to denote situation
dependent relations. Notice that relational fluents take just one argument of
sort situation and this is always its last argument.
each n ? 0, a finite or countably infinite number of function symbols of sort (action ? object)n × situation ® action ? object. These function symbols are called functional fluents. In
most applications, there will be just finitely many functional fluents, but we
do not preclude the possibility of an infinite number of them. These are used
to denote situation dependent functions. Notice that functional fluents take
just one argument of sort situation and this is always its last argument.
that only two functions symbols of Lsitcalc
and do —
are permitted to take values in sort situation.
Thus, the situational calculus allows us to identify the
current situation on the basis of the previous situation and the pilot’s
actions. For example, during take-off, when the aircraft speeds up on runway,
the pilot uses brakes, which causes the rejected takeoff:
do(useBrakes, takeoffRun) ®
In this case useBrakes is the action of the pilot, namely the use of brakes, takeoffRun – the current situation,
namely the takeoff and rejectedTakeoff
– the next situation, namely the rejected takeoff:
of situation calculus
Situational calculus fully justifies itself if there is a
single agent performing instant, discrete actions and if an action occurs
before or after another within a situation.
There is no way of expressing that an action occurs at a particular time, or
that two or more actions occur concurrently. Moreover, the definition of the
state of the external world in the situational calculus is closed on the agent
who performs the actions, and therefore external influences or effects created
not by the agent are not taken into account.
The above limitations make it
impossible to determine such situations as, for example, during takeoff when
the airplane speeds up on runway, the pilot briefly uses brakes, the airplane
does not stop and continues to take off. Similarly, if in this case the pilot,
in parallel with the use of brakes, switches on the reverse, it will be
impossible to determine the parallel use of these systems.
To solve the problem of identifying the pilot’s
actions leading to a situation change, let’s try to apply an event calculus
that takes into account the time intervals of actions.
The event calculus is a formalism for reasoning
about action and change. Like the situation calculus, the event calculus has
actions, which are called events, and time-varying properties or fluents. In
the situation calculus, performing an action in a situation gives rise to a
successor situation. Situation calculus actions are hypothetical, and time is
tree-like. In the event calculus, there is a single time line on which actual
A narrative is a possibly incomplete specification
of a set of actual event occurrences, i.e. a time structure which is
independent of any action occurrences is established or assumed, and then
statements about when various actions occur within this structure are
incorporated in the description of the domain under consideration. The event
calculus is narrative-based, unlike the standard situation calculus in which an
exact sequence of hypothetical actions is represented.
Like the situation calculus, the event calculus
supports context-sensitive effects of events, indirect effects, action
preconditions, and the commonsense law of inertia. Certain phenomena are
addressed more naturally in the event calculus, including concurrent events,
continuous time, continuous change, events with duration, nondeterministic
effects, partially ordered events, and triggered events.
Informally, the basic idea of the Event Calculus is
to state that fluents (time-varying properties of the world) are true at
particular time-points if they have been initiated by an action occurrence at
some earlier time-point, and not terminated by another action occurrence in the
meantime. Similarly, a fluent is false at a particular time-point if it has
been previously terminated and not initiated in the meantime. Domain dependent
axioms are provided to describe which actions initiate and terminate which
fluents under various circumstances, and to state which actions occur when. In
the context of the Event Calculus, individual action occurrences are often
referred to as “events”, so that “actions” are “event types”.
Event Calculus given here is written in a sorted predicate calculus with
equality, with a sort A for actions
(variables a, a1, a2,…),
a sort F for fluents (variables f, f1, f2, …), a
sort T for timepoints (here either
real numbers or integers, variables t, t1,
t2, …) and a sort X
for domain objects (variables x, x1,
x2, …). To describe a very basic calculus we need five
predicates (other than equality); Happens
F ×T ,
A× F× T ,
A× F× T and