3.1. Aircraft Shaping: Traditional Methodology
The concept of “product appearance” does not have a strict definition, but most design specialists include structural (schematic) features and the most important parameters of the design object in its composition, which uniquely determine its shape, size, and takeoff weight. Schematic features include the aerodynamic scheme (“normal”, “duck”, or “tailless”), the location of the wing (lower, middle, or upper), the shape of the wing in plan, types of wing mechanization devices along the leading and trailing edges, the scheme plumage (low-lying or T-shaped), and type and location of engines. This group of features is called shape parameters. They define a “dimensionless” prototype of the aircraft, the dimensions of which are further determined by subsequent calculations. Within the framework of the selected combination of schematic features, the dimensions of the aircraft are determined primarily by the wing area and the starting thrust of the engines (or the specific load on the wing and the starting thrust-to-weight ratio derived from them). This group of parameters is referred to as dimension parameters.
The perfection of the chosen scheme is characterized by functions of the airframe geometry such as the lift coefficient Cyα, drag coefficient Cxα, aerodynamic quality K, and the efficiency of the power unit, which are functions of the gas dynamic characteristics of the engine, e.g., the specific fuel consumption Cp and the relative fuel mass mt [
14].
Together, these parameters uniquely determine the flight characteristics of the aircraft. By varying them, the designer achieves the design goals.
Thus, the problem of shaping the appearance (AS) includes the subtasks of structural synthesis (determination of circuit solutions) and parametric synthesis (determination of the optimal values of the dimension parameters).
In this case, the problem of structural synthesis cannot be finally solved in isolation, since the efficiency of the obtained circuit solution can be confirmed only as a result of solving the problem of parametric synthesis.
It is this circumstance that makes the AS task so important and so difficult to formalize. The complexity of this task is not so much in organizing the enumeration of permissible combinations of circuit features, but in the difficulties of comparing synthesized variants of circuits.
The complexity of the considered problems is highlighted in
Figure 6 with a dot-and-dash frame. At the same time, this work does not consider the formation of a geometric model of an aircraft; it can be built interactively or generated automatically in a specialized knowledge-oriented CAD subsystem, which does not affect its subsequent use in any way.
The traditional solution to the problem of selecting rational options for design solutions at the preliminary design stage is to use empirical or approximate analytical dependencies to determine the aerodynamic and flight characteristics [
14]. The same path was proposed in the works of recent years [
15,
16]. A similar approach to the AS problem (search for analogs, enumeration of combinations of circuit features, and calculation of characteristics based on simplified dependencies) also prevailed in [
17,
18].
The motive for refusal from numerical research at the stage under consideration is usually its high labor intensity. For all the seeming naturalness of this approach (many initial data for accurate analysis have simply not been established yet), it has a serious drawback—the low accuracy of estimates of the aircraft’s functional properties, i.e., its aerodynamic and flight characteristics.
At the same time, only flight characteristics can act as private criteria for evaluating and comparing options at the preliminary design stage. The main source of regulatory data is the airworthiness standards for aircraft of various categories (e.g., [
19]), and practically the only category of aircraft properties that can be checked for compliance with the standards at this stage is flight characteristics, since these properties have the most complete quantitative representation in them. Therefore, it is quite natural to strive to obtain a more accurate assessment of these characteristics at the earliest possible stages of development. However, the well-known simplified dependencies cannot cover the entire wide range of speeds specified in the norms.
The feasibility of such a solution is supported by the leading trends in the development of software engineering analysis (CAE) in recent years, primarily the following:
The transition to multidisciplinary (so-called multiphysics) modeling for solving related problems requiring the simultaneous analysis of processes of different physical nature, e.g., the gas flow around a structure and its deformation under the action of this flow; such capabilities can be both embodied in one multidisciplinary system, for example, VHDL-AMS simulators, SimulationX, ANSYS multiphysics, and NASTRAN multidisciplinary, or implemented through the interaction of multidisciplinary systems, such as FlowVision and ABAQUS;
Transition from design verification to up-front simulation; the experience of using the SimDesigner 2004 toolkit in the CATIA V5 environment showed that transferring the analysis of design solutions to earlier design stages significantly increases the efficiency of CAD; the development of this direction was the SIMULIA project by Dassault Systemes, which laid the foundation for a new class of CAD tools—realistic simulation, also called Rapid Analysis and Validation of Design Alternatives (RAVDA); similar developments were carried out by other companies;
The use of CAE systems not only for verification, but also for the synthesis of design solutions; typical examples are the methods of optimization of the shape of objects (topology optimization) by iterative execution of procedures for the analysis of the stress state and subsequent exclusion from the model of the least loaded finite elements, as a result of which a structure close to equal strength is formed.
An additional incentive to include software tools for the analysis of aerodynamic processes, computational fluid dynamics (CFD), and flight simulation systems together with specialized programs for synthesizing the layout and geometry of the model in a single cycle of forming the appearance of the aircraft is another modern trend in the construction of CAD—the transition from “initially integrated” complexes to “freely integrated” sets of functional modules. This approach (arrangement of readymade modules with a minimum of own programming) is successfully used in the design of microelectronic and micromechanical products, where such systems are called heterogeneous CAD systems. This path seems to be promising for other areas of technology, which is confirmed by the developments of foreign research groups, particularly the work of the Delft Technical University [
20].
Thus, the analysis of previous works indicates the existence of a contradiction between the need for multivariate design, the requirements for reducing the development time, and the insufficient accuracy of methods for assessing the aerodynamic and flight characteristics of an aircraft during preliminary design. To resolve this, it is proposed to use CFD systems and flight simulators at the earliest possible design stages from the moment of synthesis of the first variants of the topology and geometry of the aircraft, i.e., already in the problem of shaping the appearance.
The general sequence of design procedures in the proposed preliminary design methodology as a whole also corresponds to
Figure 6; however, their content changes as follows:
Selection of a combination of schematic features for the next design option:
Design calculations of the main parameters of the aircraft;
Building a geometric model of the first approximation;
Virtual blowdown of the model in the CFD system;
Determination of the main aerodynamic characteristics;
Setting the initial data and/or programming the flight dynamics block of the flight simulator;
Virtual test flights in the simulator;
Conclusion about the possibility of achieving the specified characteristics and about compliance with airworthiness standards.
To test the proposed preliminary design technology, a prototype of the software package was developed as part of the SolidWorks CAD system, the Plane3D proprietary application for the automated synthesis of the geometric model, the Flow Vision CFD system, and the Flight Gear flight simulator. The complex also uses general-purpose software—the Notepad text editor for storing the coordinates of the points of standard aerodynamic profiles, the MS Excel spreadsheet processor for storing the characteristics of analog aircraft and calculation results, and the Blender graphic editor for converting the 3D model into the format required by the flight simulator. The scheme of the complex is shown in
Figure 7.
Below, the main stages of work on the analysis of the flight characteristics of the designed aircraft are illustrated.
The geometric model of the aircraft, generated by the Plane3D application in cooperation with SolidWorks (
Figure 8), is translated and transmitted to the Flow Vision CFD system in VRML format.
In the Flow Vision system, a mesh of finite volumes is generated (
Figure 9), the conditions for adapting the mesh and rhe boundary and initial conditions are set, and then a virtual blowdown of the model is performed in the mode of interest to the researcher.
The results obtained—values or graphs of changes in flow rates, pressures, aerodynamic forces, and other parameters (
Figure 10 and
Figure 11)—are subject to processing for the appropriate adjustment of the simulator dynamics block.
After completing the simulator setup, the model is converted to AC3D format and loaded into the simulator to perform virtual flight tests (
Figure 12).
3.2. Architecture of a Multiagent Platform for Structural–Parametric Synthesis of Objects
The design of complex technical objects requires the simultaneous consideration of a large number of relationships of various types (cause-and-effect, temporal, and spatial) between their elements and properties and processes of various physical nature (mechanical, electrical, hydraulic, etc.). The construction of a unified informational or mathematical model of such objects is practically impossible, since a different mathematical apparatus is required to describe various types of relations and connections—various methods of continual and discrete mathematics. The decomposition principle leads to the formation, instead of a single model, of a certain set of submodels (private models), each of which reflects a certain aspect of consideration, i.e., a particular point of view on the design object. The number and types of these sub-models can change when moving between hierarchical levels (product, assembly, assembly, and part) and development stages. For an aircraft, the most important of these submodels are geometric, weight, aerodynamic models, models of flight dynamics, power unit, layout and alignment, efficiency, and economic models [
14]. Note that the listed models relate only to the functional aspect; in the tasks of resource (strength), structural, and technological design, the corresponding submodels are added to the general list.
However, dividing the description of a complex object into particular models and corresponding groups of tasks significantly simplifies the modeling process within each aspect, while significantly complicating the procedures for corroborating particular design solutions obtained within this framework. Decomposition of a technical system reduces the explicit complexity, but increases the so-called implicit complexity associated with the difficulties in determining the expected properties of the system by the characteristics of its elements, which is a manifestation of the emergence property of complex systems [
14].
The entire set of tasks to be solved can be classified according to such criteria as the hierarchical level, aspect, and type of task (see
Figure 13).
The figure shows an area that roughly corresponds to the tasks of forming the appearance of the product.
Table 1 presents a list of design tasks for one of the units (the wing) as an example.
Along each axis of the “system cube” (hierarchical levels, types of tasks, and aspects), movement in only one direction is permissible, but the sequence of individual steps along different axes is not limited by anything other than the availability of the necessary initial data, and nowhere is it stipulated in which direction to perform the first steps, under what conditions to change the direction of movement, and how long it is generally permissible to move in one direction. In addition, we will encounter “linked” (connected) problems, the sets of variables of which intersect, as seen in aeroelasticity problems.
This means that the design strategy may not be as rigidly regulated as with a sequential “aspect” pass. However, this requires a different organization of the information and procedural components of the CAD software. In particular, a flexible management of the sequence of design procedures, close to an adaptive design strategy, can be provided by a multidimensional model of the design object. One of the modern trends in the development of CAD is exactly the desire of developers to build systems of interconnected models that characterize various aspects of describing the design object. An example of such an approach is [
14], where the modules of weight design, aerodynamic, and strength calculations were combined. This area also includes the work of a number of foreign research groups, particularly the Delft Technical University (The Netherlands), where the knowledge-oriented multi-model generator (MMG) system was created, the diagram of which is shown in
Figure 14. The system uses the facilities of the GDL (General-Purpose Declarative Language). The combined information model of the object covers aerodynamic, strength, and production and economic “layers”.
To date, a number of theories have been developed related to solving the problem of multidimensional modeling, the origins of which can be seen in the general design theory of Yoshikawa–Tomiyama, and further traced in numerous modifications of the FBS theory (function—mode of operation—structure) [
21]. These theories imply the interaction and origin of one aspect from another, which is absolutely correct in terms of the sequence of design phases. However, for each aspect, the concept of its own knowledge model is introduced and, as a consequence, transitions from one model to another are necessary at each transition to the next design phase.
For this reason, most theories are considered insufficiently formalized, since the list of knowledge representation models is rigidly defined and cannot be supplemented or changed. In fact, these theories are too formalized, since they formally describe each (but not all) phase and model in advance, which does not allow abstracting from specific design problems. Models and requirements should not be categorized as functional or structural.
If we define a certain format for describing requirements, which can be formalized not within the framework of the specifics of its description, but universally for all possible options for presenting and describing requirements, then the division of design into phases will be extremely indicative, while the work of the system will be carried out outside the design phases.
It can be assumed that the main reason for dividing the design process into phases and stages is, apparently, a person’s defensive reaction to two main factors: (a) insufficient amount of human memory, which requires the participation of different specialists to work on one rather complex project; (b) the need to agree on private (“one-aspect”) decisions made by different developers outside of contact with each other.
Thus, transferring to the area of computer-aided design all the traditions of organizing the design of the non-automated, a person imposes on the computer their imperfect method of work, generated by the limitations not of the computer, but of its capabilities.
In the design methods of most technical objects, the sequence of stages is set rather rigidly, e.g., for an aircraft: aerodynamics → flight dynamics → structure and strength → technology…; for an electric motor: electromagnetic calculation → thermal calculation → ventilation calculation → noise and vibration calculation → mechanical calculation → reliability calculation, etc.
For an automated system, both of the above factors are not decisive (provided that the procedures for agreeing decisions are also formalized); it really could work “outside the design phases” and there is no need for it to establish the sequence of determining the properties of various groups so strictly. However, this requires completely different design methods that do not imply the division of properties into categories (functional, constructive, costly, etc.) or by physical nature (mechanics, electrodynamics, hydraulics, etc.). It is still difficult to assess the harm from unnecessary restrictions, but it is obvious that everything that constrains the designer’s freedom, whether in the content of actions or in their sequence, is not good for the cause.
Thus, it is possible to develop the most flexible system in which the work with different kinds of requirements will be uniform. By delegating calculations and checking compliance with the requirements for specific agents, we get a “design constructor” that any subject matter specialist can use, while accumulating their knowledge in the knowledge base.
Each element of this knowledge base is an agent, which has its own methods of calculation and verification of compliance with requirements. Therefore, when redesigning, the work of the designer is greatly simplified due to the reuse of previously designed elements. At the same time, the properties of an element are not divided into structural and functional. Properties are just parameters of an element, the main function of which is to determine compliance with the requirements; they are only secondarily responsible for visualizing the result—a physical or functional model of the designed product.
From this point of view, various types of design (structural, functional, and conceptual) cease to be decisive factors in choosing a design strategy, including computer-aided design. Multidimensionality cannot be achieved as long as the number of aspects is determined by the programmer developing software for domain specialists. It is necessary not to expand the number of approaches (aspects) to design (this tendency can be seen in a number of works, e.g., the general design theory of Yoshikawa–Tomiyama, i.e., design according to the requirements of the structure, and then the expansion of this theory by the functional aspect of Braha, i.e., paired design [
22]), but to develop one universal approach that will define N aspects, where N depends directly on the end user.
The problem of moving from one stage of design to another is an illusion introduced into modern design by the need to recreate the image of the designed product from every point of view, forming a new model for each facet of the design solution. A technologist and a designer, working on one task, see it differently, but the essence of the task does not change from this; if the knowledge of the technologist and the designer were combined, then the design of two models with subsequent coupling and all the resulting difficulties would be meaningless.
Note that, from this point of view, the stage of ensuring the manufacturability of a product design (MPD) between design and technological preparation of production, legalized by many standards, is one of the most odious results of our artificial transition to sequential design; its main content is precisely the revision of part of the design solutions, accepted without taking into account the opinions of technologists (i.e., within one aspect). Here, one can see the loudly condemned “redesign” by all, but raised all over the world to the rank of a mandatory procedure.
The advantage of an automated system is that it can contain an unlimited amount of knowledge in various subject areas, while operating with one model. In this case, it is not necessary, as it is stated in Braha’s works, to first check the compliance with the structural requirements, and then look for intersections with the satisfaction of functional requirements; one only needs to ensure that all requirements are met. Moreover, when solving a particular problem, there will still be a need for additional aspects.
By and large, functional design is just the definition of a list of functional properties (requirements) that the designed object must meet [
23]. Even if it is possible to find a solution to the functional puzzle that will fully meet the requirements, there is no guarantee that the structure corresponding to the selected functional solutions will satisfy the structural requirements. Therefore, it is necessary to consider structural, functional, and other requirements as a single entity.
Consequently, the design system should consist of agents with a number of properties, the division of which into any categories is very arbitrary and introduced solely for the convenience of the end user. Each agent has calculation methods and methods for checking compliance with a certain requirement. In addition, the system has a number of requirements; each agent may or may not meet any requirement. However, parametric and structural constraints are also requirements. In such a system, design is reduced to the selection of a set of agents that meet all the requirements. The task of calculating the parameters and structure is a nested selection task, since, when determining the fulfillment or nonfulfillment of the requirement, all possible implementations of the agent are calculated. The sequence of design phases is implicitly taken into account when calculating the model, since previously defined properties are usually used to determine the value of a property. In general, the properties of aspects of earlier design phases are initially determined, e.g., from function to structure.
In accordance with our requirements, an agent is a highly mobile entity that can stop its execution, change its internal structure, and continue execution. The enlarged physical structure of an agent is shown in
Figure 15.
The definitions of each entity in the figure are provided below.
Let us define an agent as a kind of autonomous entity that is capable of sensing and acting through receptors and effectors. In this case, the software implementation, perception, and impact will be carried out through the transmission of messages. When defining an agent, many people focus on intellectuality. The property of intellectuality depends on the specific implementation of the agent’s behavior and does not directly depend on its architecture. The architecture in this case should be at least such that it allows one to show intellectuality. In this case, this can be achieved through input/output channels (sensation/impact).
The external environment is defined as a set of objects that do not belong to a given agent and are perceived as a separate entity. Signals are received from there, which the agent can ignore if it does not know the kind of signals or respond with some action. Thus, if the external environment is defined as a set of agents, then, for an agent without receptors and effectors, this set will be empty. A larger set indicates that the agent knows more about the environment.
In this case, any agent must have the basic functionality defined in the agent management module; hence, each agent knows about the existence of other agents in its reach. The basic functionality of the agent with the IUnknown interface of the COM architecture can be compared, and then some analogy between the methods defined by this interface can be drawn.
The agent management module is a static part of the agent and is responsible for the implementation of the agent specification in memory, transferring incoming messages and events to it, as well as sending messages to the external environment. It is necessary to stipulate right away that synchronization with other agents, blocking access to the agent, resolving agent links, stopping and starting the agent, and saving its state will take place at this level.
The “cast” of the agent involves the designation of all metadata and dynamic data about an object, i.e., its specification, the last saved state, and associated data.
The agent’s suite is the set of data and working modules that relate to a specific agent.
It is necessary to clarify the essence of the relationship between the agent management module and the agent itself.
Figure 15 shows the case when one control module can manage several agents. Here, one can draw an analogy with a CORBA server, which, when receiving a new request, sends it to the addressee—a specific instance of an object. In this case, the situation is somewhat different, but the essence remains unchanged; in fact, the agent management module is its server part, which sends messages intended for it to the agent’s domain. The creation of a new agent can occur as with cloning the mobile part (e.g., if it is necessary to move a new agent to another runtime, roughly speaking, to another computer) or without cloning the mobile part, where several agents will correspond to one control module. However, below, we take the control module and the agent as a whole. The cloning process of a control module must be transparent to the ultimate creator of the agent. Adopting such an architecture, we get a mobile agent, for which no additional components are needed.
Obviously, even the most experienced specialist cannot handle the representation of integrity when creating complex systems. This is where the myth of the inevitability of dividing the design process into aspects with different models originates. However, an automated system can have a knowledge base of unlimited complexity, and the solution to the problem of choosing an engine for an aircraft will be carried out according to the same algorithm as the choice of a simple mechanism.
The choice of the type of engine can be made on the basis of the dependence of the thrust efficiency on the number M of the flight (
Figure 16).
The mechanism of the corresponding module of the knowledge base is the decision table (
Table 2). At the same time, the choice of an agent should not be understood as the choice of a finished result from an already existing list.
The calculation of the parameters and the determination of the structure in the design is also a kind of choice of values or elements of the product, such as, for example, the calculation of the dimensions of the engine in
Table 2. In the case of the multidimensional agent network (knowledge base) described above, the choice of the calculation method is added to these selection parameters, i.e., the choice of a solution in the form of one or another agent.
For an automated system, the traditional division of tactical and technical requirements (TTT) into tactical and technical ones is irrelevant; not only technical requirements, but also a number of constructive (“structural”) features are extracted from tactical (in the general engineering sense of “functional”) requirements in one iteration, e.g., using production rules of the following form:
IF TTTs provide for the standard conditions of use of the aircraft (for example, subsonic passenger or transport), THEN the structure of the aircraft should include fuselage, wing, empennage, and landing gear.
IF the given cruising speed significantly exceeds the landing speed (determined by the class of the aerodrome specified in the TTT), THEN the wing structure should include the flap together with its attachment units.
Hence, it follows that in the conditions of computer support for making design decisions, there is no need to delay the start of the work of designers until the complete appearance of the product, whereas, for technologists, there is no need to delay the start of the work until the preparation of working documentation. The task of modern developers is to overcome the barrier of formalization of knowledge, to present it as a certain entity corresponding to a single, flexible, and scalable pattern.