<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Journal of the London Mathematical Society s1</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.1007/978-3-030-21803-4_36</article-id>
      <title-group>
        <article-title>Module Selection Optimization via Combinatorial Techniques in Intelligent Systems⋆</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Liudmyla Koliechkina</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Oksana Pichugina</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yurii Skob</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Olena Dvirna</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>National Aerospace University "Kharkiv Aviation Institute"</institution>
          ,
          <addr-line>17 Vadym Manko St, Kharkiv, 61070</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>National University "Yuri Kondratyuk Poltava Polytechnic"</institution>
          ,
          <addr-line>24 Vitaliya Hrytsayenka, Poltava, 36011</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Lodz</institution>
          ,
          <addr-line>68 Gabriela Narutowicza Str., Lodz, 90-136</addr-line>
          ,
          <country country="PL">Poland</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2025</year>
      </pub-date>
      <volume>3641</volume>
      <fpage>15</fpage>
      <lpage>17</lpage>
      <abstract>
        <p>This paper attacks the problem of optimal module selection and program layout in intelligent information systems through Euclidean combinatorial optimization. Two mathematical models are introduced: module selection under execution time and memory constraints (Model 1), and distribution of data arrays across memory (Model 2). Both are formulated as linear multi-objective Euclidean combinatorial optimization problems (LMOCOP). The study proposes a two-stage solution method for LMOCOP, which is based on utilizing Euclidean combinatorial configurations (e-configurations). In the first stage, linear convolution reduces the multiobjective optimization problem to a single-objective one. In the first stage, polyhedral a spherical relaxation and cutting planes are applied to obtain an optimal multipermutation configuration. A numerical example illustrates the ability to generate Pareto-optimal solutions by the proposed approach to solving LMOCOP.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;combinatorial optimization</kwd>
        <kwd>linear optimization</kwd>
        <kwd>multi-objective optimization</kwd>
        <kwd>mathematical modeling</kwd>
        <kwd>intelligent system</kwd>
        <kwd>linear convolution</kwd>
        <kwd>cutting-plane</kwd>
        <kwd>multipermurtation</kwd>
        <kwd>multipermutohedron</kwd>
        <kwd>program layout</kwd>
        <kwd>software modularity</kwd>
        <kwd>Euclidean combinatorial configuration</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Mathematical modeling methods are widely used for mathematical representation of real systems
[1, 2, 3]. These methods facilitate the analysis of complex systems, enable the prediction of their
behavior, and assist in finding optimal solutions [ 4, 5, 6]. There are various methods of mathematical
modeling, each of which is adapted to a specific area of application [7, 8, 9].</p>
      <p>The main approaches to mathematical modeling are analytical methods, numerical methods, statistical
approaches, and optimization methods. In particular, optimization methods are used to determine
the best solutions from a certain point of view among those that satisfy predefined constraints. This
category includes integer, discrete and combinatorial optimization methods used to solve problems
whose models contain one or more objective functions and additional constraints. The most studied
class of problems is linear programming, in which the objective function and constraints are linear. If
combinatorial conditions are present in the constraints, optimization problems fall into the combinatorial
class. Accordingly, combinatorial optimization methods become applicable to them [10, 11, 12, 13, 14].
Combinatorial optimization models and methods are widely used in various practical areas, including
ifnance, economics, and logistics [15, 16, 17].</p>
      <p>There is a deep and close connection between mathematical modeling methods and combinatorial
optimization methods, as both approaches are often used to solve complex problems arising in various
scientific and practical fields. Mathematical modeling provides tools for formalizing real problems,
while combinatorial optimization helps to find the best solutions in such models.</p>
      <p>After constructing a mathematical model, it is often necessary to find an optimal solution. If the
model has a discrete nature (for example, the task of choosing the best combinations from a set of
possible options), then combinatorial optimization methods are used. Combinatorial problems that arise
in mathematical modeling can be so complex that exact methods cannot solve them in an acceptable
time. That is, they belong to NP-complex problems. In such cases, mathematical models use heuristic
methods of combinatorial optimization, such as genetic algorithms, the ant colony method, the tabu
search method, and the branch and bound method. These methods make it possible to find close
to optimal solutions for complex combinatorial problems that arise in the modeling of real systems
described in works [18, 19, 20].</p>
      <p>Mathematical modeling of complex systems, such as transport networks, information systems, energy
systems, and logistics, often involves considering a large number of variables and options, making them
natural candidates for combinatorial optimization.</p>
      <p>Hence, mathematical modeling and combinatorial optimization complement each other: mathematical
modeling provides tools for accurately describing real-world problems. In contrast, combinatorial
optimization provides methods for finding optimal solutions in discrete option spaces. This combination
is key to solving many practical problems in economics, engineering, logistics, information technologies,
and complex systems [6, 21].</p>
      <p>There is a deep and close connection between mathematical modeling methods and combinatorial
optimization methods, since both approaches are often used sequentially when solving complex problems
arising in various scientific and practical fields. Mathematical modeling provides tools for formalizing
real-world problems, while combinatorial optimization helps find optimal solutions in such models.
Many practical problems allow the construction of multiple mathematical models, each of which can
be solved using specific methods. Accordingly, expanding the set of approaches to modeling a certain
problem increases the chance of finding an efective solution by choosing from a wider set of methods.</p>
      <p>After constructing a mathematical model, the optimal solution to the corresponding optimization
problem is sought. If the model is discrete in nature (for example, the task of selecting the best
combinations from a set of possible options), then combinatorial optimization methods are used.
Combinatorial optimization models that arise in the mathematical modeling of complex practical
problems usually have exponential computational complexity. Accordingly, exact methods cannot
solve such problems of suficiently large dimension within an acceptable time. In such cases, heuristic
combinatorial optimization methods are widely applied to the models, such as genetic algorithms, the
ant colony method, the tabu search method, and the branch and bound method etc. These methods
allow finding solutions to complex combinatorial problems that are close enough to the optimal ones.</p>
      <p>Mathematical modeling of complex systems such as transportation networks, information systems,
energy systems, and logistics often involves choosing from a large but finite number of options, making
such models natural candidates for attacking by combinatorial optimization approaches.</p>
      <p>Thus, mathematical modeling and combinatorial optimization complement each other: mathematical
modeling provides tools for adequately describing real-world problems. In turn, combinatorial
optimization provides methods for finding optimal solutions in discrete spaces of options. This combination
is key to solving many practical problems in economics, engineering, logistics, information technology,
and complex systems [6, 21].</p>
      <p>This paper examines the real-world problem of optimal selection of information system software
parameters. To solve this problem, a multi-objective combinatorial optimization model on permutation
configurations is proposed, along with a two-stage solution method that combines two well-known
methods: linear convolution and combinatorial clipping. The study is structured as follows: the
introduction is dedicated to an overview of the paper topic, while the second chapter presents the
basic concepts and definitions used to construct two mathematical models of applied problems and
the proposed method of their solving. The third and fourth sections are devoted to the formulation
of these applied problems and their formalization as combinatorial optimization problems. The last
sections provide an outline of the proposed method for solving the problem and an illustrative numerical
The concept of configuration was introduced by C.Berge [ 22] with the aim of creating a formal and
rigorous structure for defining combinatorial objects, as well as for solving problems associated with
the accumulation of verbal descriptions as the complexity of these objects increases. Such formalization
helps to simplify the study of combinatorial structures by reducing ambiguity in their definitions.
The properties of Euclidean combinatorial configurations (e-configurations) as a separate subclass
of configurations and the sets they form are discussed in detail in many works, such as [ 13, 20, 23].
e-configurations play an important role in combinatorial geometry and optimization.
a configuration is a mapping  :  →  that satisfies certain constraints
Λ.</p>
      <p>Let the set  = {1, 2, ..., } be given,  = {1, 2, .., } be a finite set, and  :  →  be the
mapping associating a single element  ∈  with each element  ∈ , i.e.  =  (). According to [22],
Given the finiteness of sets</p>
      <p>and , a configuration is called combinatorial configuration
(c-configuration). As a result of mapping  :  →  we get an ordered sequence  of -elements:
where 
∈</p>
      <p>,  ∈
 = [1 , 2 , ...,  ].</p>
      <p>In most cases, the set  can be unified, meaning that the elements of the set can be replaced by their
ordinal numbers. By setting the bijective mapping between  and , we obtain the transformation of
the mapping into
 =
︂(
1
2</p>
      <p>...  )︂
1 2 ... 
 (
=
{1, 2, ..., }).</p>
      <p>= [1 , 2 , ...,  ] ,</p>
      <p>Further, we will use the later notation
where  is called a numbering set. Note that the configuration elements  do not change, i.e.
 =
︂(
1
2</p>
      <p>...  )︂
1 2 ... 
=
︂(
1
2</p>
      <p>...
1 2 ... 
 )︂
= [1 , 2 , ...,  ]
tion can be represented by a tuple [13]:</p>
      <p>
        Suppose, elements in  are strictly ordered, namely,  ≺ +1,  ∈ − 1. A combinatorial
configura :  → ,
⟨, , Λ⟩ ,
2. Prerequisites
(
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
(
        <xref ref-type="bibr" rid="ref4">4</xref>
        )
where  is the mapping (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ), which satisfies a set of constraints Λ,  is a resulting set with strictly
ordered elements.
elements.
      </p>
      <p>This transformation redefines elements in terms of their ordinal positions, allowing for a more
structured and systematic analysis of combinatorial configurations. Specifically, this approach simplifies
the representation of configurations by using a standard numerical indexation instead of arbitrary
real vectors of the same dimension , i.e.</p>
      <p>
        Let * = { 1,  2, ..,  } be a resulting set in the formation of the configuration (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) set consisting of

  = (1 , 2 , ...,  )⊤ ∈ R ,  ∈ ,
while Λ be a set of constraints allowing singling out the required configuration. Then, according to (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ),
 = [ 1 ,  2 , ...,   ].
      </p>
      <p>We will assign a vector to each configuration in a one-to-one correspondence  = [ 1 ,  2 , ...,   ]
 = (1, 2, ...,  ) ∈ R ,  =  · 
whose components are an ordered set of elements of a multiset</p>
      <p>{︁
̃︀() = 11 , 12 , ..., 1 , 21 , 22 , ..., 2 , 1 , 2 , ..., 
}︁
thus establishing a bijective mapping such that</p>
      <p>=  ( ) ,  =  − 1().</p>
      <p>
        Let
A set  = (˜) ⊆
An Euclidean combinatorial configuration (e-configuration) is called mapping
 : (, * , Θ) → R ,
 and  .
where  :  → * , * is a resulting set of the form (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ), Θ is a collection of constraints on the mappings
Thus, an e-configuration is defined as a mapping of a combinatorial configuration
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) into the
Euclidean space R . This mapping ,  assigns specific positions to elements of the configuration
in the Euclidean space, producing a vector  ∈ R that represents the configuration geometrically.
The vector  given by formula (
        <xref ref-type="bibr" rid="ref4">4</xref>
        ). The set ̃︀ of vectors induced by this mapping is referred to as the
inducing multiset of the Euclidean combinatorial configuration . This concept allows combinatorial
structures to be studied using the tools of Euclidean geometry, which facilitates a more accurate analysis
of their properties and interrelationships.
      </p>
      <p>
        = {︀  ∈ R :  satisfies (
        <xref ref-type="bibr" rid="ref5">5</xref>
        ) }︀ .
(
        <xref ref-type="bibr" rid="ref5">5</xref>
        )
(
        <xref ref-type="bibr" rid="ref6">6</xref>
        )
(
        <xref ref-type="bibr" rid="ref7">7</xref>
        )
(
        <xref ref-type="bibr" rid="ref8">8</xref>
        )
(
        <xref ref-type="bibr" rid="ref9">9</xref>
        )
(
        <xref ref-type="bibr" rid="ref10">10</xref>
        )
Theorem states that to check the condition  ∈ Π
︁( ˜
︁) for an arbitrary point in Euclidean space, it
is suficient to check just
      </p>
      <p>constraints of the polytope out of 2 − 1.</p>
      <p>Other properties of the polytope Π(˜) and its generalization, called the generalized permutohedron,
can be found in the works [26, 27, 28] and a compact analytic description of a multipermutohedron is
presented in [29].
(multipermutation e-configurations) is a multipermutohedron
set coincides with the set of permutations, i.e. Π(˜) = (˜).</p>
      <p>Theorem 1. [24] The multipermutohedron Π(˜) is given by linear constraints:</p>
      <p>In [13], it is shown that the convex hull of a set  of e-configurations of multipermutations
Π(˜) = (˜), whose vertex
∑︀∈  ≤ ||,  ⊂ ,
∑︀</p>
      <p>=1  = ,
 = ∑︁ ˜− +1,  ∈ .</p>
      <p>=1
1 ≤ . . . ≤ ;
∑︀=1 − +1 ≤  ,  ∈ − 1,
inducing the set , i.e. ∀ ∈ 
˜ () ⊂</p>
      <p>˜. Here,  &gt; .</p>
      <p>Without loss of generality, we can assume that ˜ is ordered, i.e.</p>
      <p>˜ = {˜1, ..., ˜} : ˜1 ≤ ... ≤ ˜.</p>
      <p>A set  = (˜) ⊆
set , i.e. ∀ ∈   () = ˜. Here and further,  is the number of diferent elements in
˜.
(permutations) if an inducing multiset of each its elements coinsides with ˜, the multiset inducing the</p>
      <p>
        R of the form (
        <xref ref-type="bibr" rid="ref6">6</xref>
        ) is called a set of e-configurations of partial multipermutations
(partial permutations) if an inducing multiset of each its elements is a proper subset of the multiset ˜
      </p>
      <p>
        R of the form (
        <xref ref-type="bibr" rid="ref6">6</xref>
        ) is called a set of e-configurations of multipermutations
where
then  ∈ Π
︁( ˜ .
      </p>
      <p>
        ︁)
Theorem 2. [25] If the point  ∈ R satisfies the constraints (
        <xref ref-type="bibr" rid="ref8">8</xref>
        ),
      </p>
      <p>Suppose that functions  :  → R1,  ∈  are components of the optimality criterion  () =
(1 () , ...,  ()) in the following multi-criteria optimization problem: find a vector  such that
 () = (1 () , ...,  ()) → ,</p>
      <p>∈  ⊆ ,
where  is the domain of objective functions, while  ⊆  is the feasible domain singled out from 
by the constraints Λ.</p>
      <p>
        Problem (
        <xref ref-type="bibr" rid="ref11">11</xref>
        ) is a problem of multiobjective Euclidean combinatorial optimization (multicriteria
Euclidean combinatorial optimization problem, MOCOP). If  = , this is an unconstrained optimization
problem over , otherwise it is constraint ones.
      </p>
      <p>Let all components of the vector criterion be linear functions, i.e.
and  is singled out from  by linear constraints  ≤ , i.e.</p>
      <p>Now, the MOCOP becomes: find a vector  such that
subject to constraints:</p>
      <p>
        Problem (
        <xref ref-type="bibr" rid="ref11">11</xref>
        ), (
        <xref ref-type="bibr" rid="ref14">14</xref>
        )-(16) is a linear MOCOP (LMOCOP). Note that without limiting accuracy, it can be
assumed that all LMOCOP criteria are maximization criteria.
      </p>
      <p>
        If  = 1, LMOCOP is degenerates into a linear single-objective Euclidean combinatorial optimization
problem LCOP:
subject to constraints (
        <xref ref-type="bibr" rid="ref15">15</xref>
        ), (16).
      </p>
      <p>Among LMOCOP, we will focus on problems, where
1 () = 1⊤ → ,
extr=max,  = (˜)</p>
      <p>
        () = ⊤,  ∈ ,
 = { ∈  :  ≤ }.
 () = ⊤ → ,  ∈ ,
 ≤ ,
 ∈ .
i.e. on linear multiobjective permutation-based optimization problems further referred to as  (, ),
where  satisfies (17) and  is given by (
        <xref ref-type="bibr" rid="ref13">13</xref>
        ). A single-objective analogue of LMOCOP is denoted as
′ (, ).
      </p>
      <p>An unconstrained problem ′ (, ) can be solved easily in polynomial time [30], whereas the
presence of additional constraints, i.e., the transition to a constrained optimization problem, significantly
complicates its solution.</p>
      <p>In the next section, we present a formulation of an applied problem enabling a formalization as
 (, ), where  ⊂ .</p>
    </sec>
    <sec id="sec-2">
      <title>3. Problem statement</title>
      <p>
        One of the fundamental principles of modern intelligent information system design is modularity.
Modularity significantly improves the eficiency of managing various stages of the software life cycle,
including the development, implementation, maintenance, and advancement of software and mathematical
components for computer systems.
(
        <xref ref-type="bibr" rid="ref11">11</xref>
        )
(
        <xref ref-type="bibr" rid="ref12">12</xref>
        )
(
        <xref ref-type="bibr" rid="ref13">13</xref>
        )
(
        <xref ref-type="bibr" rid="ref14">14</xref>
        )
(
        <xref ref-type="bibr" rid="ref15">15</xref>
        )
(16)
(17)
      </p>
      <p>The modular approach involves creating software in the form of a set of separate interacting
components called modules. Each module is designed to perform a specific function and can be developed,
tested, and updated independently of the others. This architectural strategy facilitates parallel
development and simplifies future modifications and updates to the system, ensuring its scalability and ease of
maintenance.</p>
      <p>A critical issue arises in modular software development, which is the selection and optimal
configuration of modules at the design stage. In particular, this concerns the problem of optimal program
composition when the overall software system consists of several modules, while several software
implementation options are available for some modules. These options may difer in functionality,
computational eficiency, memory consumption, or compatibility with hardware resources.</p>
      <p>Formally, the problem of module selection can be viewed as a combinatorial optimization problem,
the goal of which is to select the optimal subset and configuration of modules to optimize certain criteria,
such as minimizing execution time, minimizing memory usage, maximizing reliability, or achieving a
given level of economic eficiency, taking into account technical constraints.</p>
      <sec id="sec-2-1">
        <title>3.1. Problem 1 statement and model</title>
        <p>Let us consider the problem of ordering modules and selecting a way of their implementation when
developing software. Specifically, this is the task of optimally assembling a program consisting of
several modules, some of which can be implemented on a computer in diferent ways.</p>
        <p>At the software development stage, the program can be represented as  separate interconnected
blocks (modules, procedures, programs, segments). For each block , there are  possible
implementation options. Then a vector of variables  = (1, ..., ) representing a plan for implemented
options will be an element of a set () of multipermutation e-configurations induced by a multiset
 = {1, ..., } having  distinct elements. Each block is characterized by the execution time  ( ),
the amount of memory occupied  ( ), and the required total memory  ( ). The required total
memory includes the total memory for the executable code, constants, arrays, and additional overhead.
The goal is to select a variant for each program block such that the program terminates in a minimum
time  , while not exceeding the allocated resources.</p>
        <p>Let us formulate the problem as a mathematical model of combinatorial optimization with two
minimization criteria.</p>
        <p>Mathematical formulation of the problem: find a vector  = (1, ..., ) such that
 
 = ∑︁  ( ) → min,  = ∑︁  ( ) → min,</p>
        <p>=1 =1
subject to the constraint ∑︀
=1  ( ) + max  ( ) ≤  , where  is the amount of memory allocated</p>
        <p>1≤ ≤ 
for the optimizing program.</p>
        <p>As can be seen in this problem, the search domain is a set, and the problem contains two objective
functions and one constraint, i.e., overall it belongs to class MOCOP.</p>
        <p>A linear version of it is formed if</p>
        <p>∃ ,  ,  &gt; 0 :  ( ) =   ,  ( ) =   ,  ( ) =   ,  ∈ .</p>
        <p>Then the objective and constraints becomes
∑︀=1   +
 = ∑︀</p>
        <p>=1   → min,
 = ∑︀
=1   → min,
max   ≤ .</p>
        <p>1≤ ≤ 
 ∈ ().
(18)</p>
        <p>The constraint is still nonlinear but it is transformed into a linear one after introducing additional
variables  for representing max   . Respectively, denoting  = max   , we can rewrite (18) as
1≤ ≤  1≤ ≤ 
a collection of linear constraints:
∑︀=1   +  ≤ ,</p>
        <p>≤ ,  ∈ .</p>
        <p>Now, we came to a MOCOP with combinatorial variable vector  and discrete variable .
3.1.1. Example
Let us consider a program consisting of three modules that can be implemented in diferent ways. Let
us denote these modules as , , and . Module  allows two possible implementations, which are
represented as permutations over the set ′ = {0, 1}. Module  allows three possible implementations,
described by permutations from the set ′ = {0, 0, 1}. Similarly, module  allows two possible
implementations, represented as permutations over the set ′. Thus, the overall configuration of the
program can be described by a set of polypermutations, i.e., the Cartesian product of several sets of
permutations.</p>
        <p>For convenience, we represent the solution variables as a vector  = (1, 2, 3, 4, 5, 6, 7),
which uniquely encodes the selected procedures for all modules. For each  , the execution time  ,
memory usage, constants and arrays  , and the required total memory  are determined. Thus, this
formulation corresponds to the mathematical model described above.</p>
      </sec>
      <sec id="sec-2-2">
        <title>3.2. Problem 2 statement and model</title>
        <p>Arrays of information in computer memory can be allocated across diferent levels of hierarchy, each
containing one or more memory devices (MDs) of similar or distinct types with comparable speeds.
The key parameters of each MD are its capacity and transfer speed. Typically, higher-level devices ofer
greater speed but smaller capacity than lower-level ones. The following model describes the optimal
allocation of data arrays across memory devices to balance these characteristics efectively.</p>
        <p>We have  memory devices ( 1,  2, . . . ,  ) each characterized by its capacity  (MB),
transfer speed  (MB/s), and user activity weight per MB . There are  data arrays with sizes
1, 2, . . . ,  (MB). Each array must be placed on exactly one memory device without splitting. The
goal is to design an assignment plan minimizing total processing time and maximizing total user activity,
subject to per-device capacity constraints.</p>
        <p>Let us introduce necessary notations:
•  = {1, 2, . . . , } is a multiset of array sizes;
•  is number of distinct elements in ;
• ,() is a set of all multi)permutation e-configurations induced by ;
•  = (1, . . . , ) ∈ ,() is a variable vector of sizes of assigned arrays, where  is size of
array placed on  ;
•  is total processing time (seconds);
•  is total activity (activity units).</p>
        <p>Since 1/ (s/MB) is a transfer time per unit of data on  , Model 2 has the form of:
subject to:
 = ∑︀=1  → min
 = ∑︀=1  → max
 ≤ ,  ∈ ,</p>
        <p>∈ ().</p>
        <p>This model is a linear bi-objective constrained Euclidean combinatorial optimization problem over
the multipermutation set (), i.e. it is a LMOCOP.</p>
        <p>Model 2 reflects practical IT planning trade-ofs in hierarchical or distributed storage: reducing
input/output latency while increasing activity-based performance within strict capacity limits. It
applies to caching, in-memory databases, edge computing, and hybrid storage systems, providing a
rigorous mathematical basis for forming Pareto-eficient data placement under constraints having wide
applications in intelligent information systems.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>4. Solution Techniques</title>
      <p>For solving an LMOCOP, we propose first to apply methods of multi-criteria optimization, reducing it to
a standard single-objective optimization and then solve the resulting problem using the combinatorial
optimization method. Thus, we divide the solving process into two stages and propose a two-stage
approach to solving LMOCOP.</p>
      <p>Since Problem 1 and Problem 2 are problems of multi-objective optimization on e-configuration sets,
when they are solved, it makes sense combining multi-criteria methods with combinatorial optimization
approaches. Such a combination makes it possible obtaining a feasible e-configuration as a solution
while ensuring efectiveness of this solution for each of multiple criteria.</p>
      <p>Multi-criteria (multi-objective) optimization problems aims to simultaneously optimize several
objectives that may be in conflict. There are several quite diferent approaches to solving such problemss
[31, 32, 33].</p>
      <p>The main multi-criteria optimization approaches can be divided into the following groups:
1. Methods of reduction to a single-criterion problem (convolution methods): all criteria are
combined into one function by their linear weighting. Determining weighting coeficients for each
criterion and reflecting their relative importance are necessary. The result is a one-criteria
optimization problem.
2. The approximation method of all partial criteria to the ideal point. This method searches for
solutions, each of which cannot be improved by one criterion without worsening another. Such
a set of solutions is called Pareto-eficient. It allows you to explore all the compromise options
between the criteria.
3. Heuristic and metaheuristic methods: these algorithms are used for the evolutionary search of
optimal solutions. They search for several solutions simultaneously, making it possible to find a
set of Pareto-optimal solutions eficiently.
4. Hierarchical optimization methods.</p>
      <p>a) Analytic Hierarchy Process (AHP): involves decomposition of the problem into hierarchical
levels (goal, criteria, alternatives). The criteria are compared in pairs; based on this, a priority
matrix is built to determine the best solution.
b) Analytic Network Method (ANP): This is a generalization of the AHP method that considers
the relationships between criteria at diferent levels of the hierarchy.</p>
      <p>Since the introduced models include combinatorial constraints, in combination with a vector
optimization method, it is necessary to apply a combinatorial optimization approach to find a feasible
solution.</p>
      <p>Therefore, below most common methods of combinatorial optimization are outlined:
1. Branch and Bound method involves dividing the problem into sub-problems (branches) and
cutting of those that cannot lead to an optimal solution.
2. Dynamic programming is suitable for solving problems that can be broken down into
interdependent, repeating subproblems.
the search space is very large.</p>
      <p>method allows avoiding getting stuck in local minima.
3. Genetic algorithms are used to find a "good enough" solution in large search spaces where an
exact search is too computationally complex. At the same time, such algorithms can also be
useful for problems where it is necessary to optimize several criteria simultaneously or where
4. Simulated Annealing is commonly applied to problems where the search space is large, while the
5. Greedy Algorithms is based on achieving locally optimal solution at each step, while hoping
hoping that, expectedly, these solution sequence converges to a globally optimal solution.</p>
      <p>Based on the analysis of methods and properties of combinatorial configurations, and continuing
research and developing the results of works [13, 16, 19], we will formulate a two-stage approach to
solving LMOCOP, which is the formulated above practical problem of software design for information
systems.</p>
      <p>The proposed approach to solving the problem is based on the linear convolution (aggregation) of
the partial criteria and further reduction of it’s solution search to solving a series of single-objective
combinatorial optimization problems. We present an approach to method for solving the single-objective
problems, which is based on two continuous relaxation and cutting planes.</p>
      <sec id="sec-3-1">
        <title>4.1. Combinatorial Optimization Algorithm</title>
        <p>
          Input: a constraint linear permutation-based problem  (, ) for a certain  = (˜) and additional
linear constraints are given by (
          <xref ref-type="bibr" rid="ref15">15</xref>
          ) (see (17)).
        </p>
        <sec id="sec-3-1-1">
          <title>4.1.1. Multiobjective problem transformation</title>
          <p>Let us reduce the multi-objective combinatorial optimization problem  (, ) to a single-objective
LCOP using linear convolution. For that, we set weighting coeficients   ∈ R1&gt;0,  ∈ , ∑︀
that express the degree of importance of each criterion and move to maximizing the linear combination
=1   = 1,
of the objective functions. That is, we come to the problem:
 (, ) → ′ (, ) = { () = ∑︁  ⊤ → max,  ≤ ,  ∈ }.</p>
          <p>=1</p>
        </sec>
        <sec id="sec-3-1-2">
          <title>4.1.2. Linear permutation-based optimization</title>
          <p>Next, we solve the single-objective optimization problem ′ (, ).</p>
          <p>
            First, we solve a continuous relaxation of the problem on the polytope  = . An issue with
its solution by conventional linear programming methods is that the system of constraints (
            <xref ref-type="bibr" rid="ref7">7</xref>
            ), (
            <xref ref-type="bibr" rid="ref8">8</xref>
            ),
generally, contains an exponential on  number of constraints, so all of them cannot be involved in the
solving problem if  is quite large. Therefore, it is necessary to develop specific methods that use the
specifics of the problem and properties of the objective function domain  and feasible domain .
          </p>
          <p>This paper proposes an iterative approach to solving ′ (, ) by solving a series of relaxation linear
optimization problems on nested polyhedra. The approach is essentially a cutting-plain method utilizing
the fact that the set  = (˜) is vertex-located (VLS), i.e.  = () and is inscribed into a
hypersphere  centered at a = (, ..., ), where  = 1 ∑︀
the problem ′ (,  ), where  =  = { ∈ Π(˜) :  ≤ }.</p>
          <p>=1 ˜. Polyhedral relaxation of ′ (, ) is
︁( ˜</p>
          <p>︁)</p>
          <p>
            Theorem 2 underlies the Sequential Constraint Connection Method (SCCM) [25] of constrained linear
optimization on the multipermutohedron, i.e. for solving ′ (,  ). Briefly, at the initial iteration, the
relaxed problem is solved on the superset of the feasible domain (
            <xref ref-type="bibr" rid="ref7">7</xref>
            ), (
            <xref ref-type="bibr" rid="ref8">8</xref>
            ), (
            <xref ref-type="bibr" rid="ref15">15</xref>
            ),  ∈ [˜1, ˜]. Then the
constraints (
            <xref ref-type="bibr" rid="ref9">9</xref>
            ) of Theorem 2 are checked for the obtained point . If they hold, the process terminates
with the conclusion  ∈ Π
the conclusion  ∈/ Π
          </p>
          <p>
            , respectively,  is an optimal solution. If (
            <xref ref-type="bibr" rid="ref9">9</xref>
            ) holds, while (
            <xref ref-type="bibr" rid="ref10">10</xref>
            ) violates,
︁( ˜
          </p>
          <p>
            ︁) is made. If (
            <xref ref-type="bibr" rid="ref9">9</xref>
            ) violates, the transition from  to a point  is made by
rearranging -coordinates such that 1 ≤ . . . ≤ . If  satisfies (
            <xref ref-type="bibr" rid="ref10">10</xref>
            ), i.e., ∑︀
=1 − +1 ≤  ,  ∈ − 1,
then the conclusion ,  ∈ Π ︁( ˜︁) is made. Otherwise, the process continues iteratively by adding to
the previous constraints one or all of the detected constraints that are violated at  () and solving the
obtained linear optimization problem until conclusion ,  ∈/ Π ︁( ˜︁) or ,  ∈ Π ︁( ˜︁) according
to Theorem 2.
          </p>
          <p>Let * and * be the optimal solutions to the problems ′ (, ) and ′ (, ),respectively. The
result of applying SCCM is * . If * ∈ , then the problem ′ (, ) has been solved, namely, * .
Otherwise, the cutting-plain method (CPM) is applied, aiming to cut * while leaving all points of 
feasible. SCCM and CPM iteratively until we get a point of  as an output of SCCM.</p>
          <p>The paper [34] proposes the Polyhedral-Surface Cutting Plane Method (PSCPM) of linear optimization
over a vertex-located set. PSCPM is based on representing a VLS as an intersection of its convex hull
and a strictly convex surface. Adapting PSCPM to ′ (, ), a VLS is , its convex hull is a polytope
 , while the hypersphere  is the strictly convex surface. Let us outline PSCPM:
• First, a polyhedral relaxation is solved on  that is ′ (,  ), and its solution  is verified on
belongingness to .
• If it holds, the original problem ′ (, ) has been solved, and  is its optimal solution.
• Otherwise, a spherical relaxation ′ (, ) is considered, and a cut of  is formed utilizing a
polyhedral cone with apex at  given by active  -constraints at the point and an intersection of
its extreme rays with the hypersphere .</p>
          <p>This process continues iteratively until the termination condition is met.</p>
          <p>Thus, this section presents a two-stage approach to solving the problem  (, ) that combines the
linear convolution method (stage 1) with PSCPM and SCCM.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>5. Numerical example</title>
      <p>An illustrative example of solving the following problem using the algorithm proposed above is
presented.</p>
      <p>Problem statement. Determine  ∈ , where  is a set of permutations induced by a set
˜ = 8 = {1, 2, 3, 4, 5, 6, 7, 8}, such that:
1 () = 61 + 132 + 153 + 34 + 105 + 266 + 297 + 308 → max,
2 () = 251 + 132 + 113 + 64 + 155 + 316 + 137 + 328 → max,
3 () = 101 + 42 + 193 + 174 + 115 + 176 + 127 + 88 → max,
51 + 62 + 83 + 4 + 165 + 96 + 77 + 118 ≤ 225,
1 + 122 + 113 + 174 + 35 + 196 + 457 + 458 ≤ 487.
(19)</p>
      <p>Clearly, this problem is LMOCOP since several objectives are present, and both objective and
constraints are linear, while the objective function domain is a permutation configuration set. Let us first
represent this problem as  (, ):
• the number of objectives is  = 3;
•  = ˜,
• no repetitions in ˜, hence  =  = 8,
•  = 88(˜),
• the constraint matrix and free terms vector:
 =
• the feasible domain  = { ∈  :  satisfies (19) }.</p>
      <p>Solving process outline At initial step, the vector of the ideal solution is constructed. For this purpose,
the values of the functions 1, 2 and 3 are maximized over the feasible set . For that, we applied
the algorithm given in Sec. 4.1 and solve the problems ′ (1, ) − ′ (3, ). In order to solve these
scalar optimization problems, the simplex method is employed. Consequently, the following optimal
solutions are obtained Table 1.</p>
      <p>Thus, we have the vector of the ideal solution  * = (507, 659, 480). To solve the posed problem,
it is necessary to perform a search for the Pareto-optimal solution. For this purpose, the aggregation
method is employed, using diferent weighting coeficients for the objective functions and comparing
the resulting outcomes.</p>
      <p>Thus, we reduce the problem to a scalar combinatorial optimization problem. Weighting coeficients
 1,  2,  3 were applied. A scalar function  =  11 + 22 + 33 was obtained. For the computations,
the simplex method is employed. The results of the calculations are presented in a table Table 2.</p>
      <p>All three proposed solutions belong to the Pareto-optimal set. However, when comparing the second
and third solutions, the improvement in function 3 in the third solution is negligible, while the
deterioration in the values of functions 1, 2 is relatively significant. Therefore, from the perspective
of balancing the objectives, the second solution is the most evident choice. For the final decision, it
is advisable to involve the decision maker, who can take into account the priorities and preferences
among the criteria.</p>
    </sec>
    <sec id="sec-5">
      <title>6. Bridging our models with ML and AI</title>
      <p>The module selection problem (Model 1) and the program layout problem (Model 2) can be extended
to highly important tasks such as selecting and configuring layers, activation functions, connections,
and other neural network components under constraints such as inference time, accuracy, energy
consumption, etc.</p>
    </sec>
    <sec id="sec-6">
      <title>7. Conclusion</title>
      <p>The study investigates the problem of selecting and arranging software modules in intelligent
information systems, highlighting its formulation as a multiobjective combinatorial optimization problem. Two
mathematical models were proposed, each reflecting a crucial stage of the software lifecycle, namely,
• optimal selection of program modules with execution time and memory constraints,
• optimal allocation of arrays in hierarchical memory structures.</p>
      <p>These problems were formalized as linear optimization problems in terms of Euclidean combinatorial
configurations, providing a unified mathematical framework for their analysis and solution.</p>
      <p>The proposed two-stage approach, combining linear convolution of criteria with combinatorial
optimization, enables a reduction of complex multi-objective optimization problems to a sequence of
tractable single-objective continuous optimization problems, where surface and polyhedral relaxations
are combined. The case study confirmed the ability of the method to identify Pareto-optimal solutions.</p>
      <p>Overall, the results demonstrates applicability of combinatorial optimization methods to the domain
of software engineering. Future work may focus on extending the approach to larger-scale systems and
other applied domains including machine learning and artificial intelligence.</p>
    </sec>
    <sec id="sec-7">
      <title>Declaration on Generative AI</title>
      <p>During the preparation of this work, the authors used ChatGPT and Grammarly for grammar and
spelling checks, as well as for improving the wording of certain paragraphs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>E. A.</given-names>
            <surname>Bender</surname>
          </string-name>
          , An Introduction to Mathematical Modeling, Dover Publications, Mineola, NY,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Edwards</surname>
          </string-name>
          , Guide to Mathematical Modelling, Industrial Press, Inc., New York, NY,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>T.</given-names>
            <surname>Witelski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Bowen</surname>
          </string-name>
          ,
          <source>Methods of Mathematical Modelling: Continuous Systems and Diferential Equations</source>
          , Springer Undergraduate Mathematics Series, Springer International Publishing, Cham,
          <year>2015</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -23042-9.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Conforti</surname>
          </string-name>
          , G. Cornuéjols, G. Zambelli, Integer Programming, Springer, Cham,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>X.-S.</given-names>
            <surname>Yang</surname>
          </string-name>
          , Mathematical modeling, in: Engineering Mathematics with Examples and Applications, Elsevier,
          <year>2017</year>
          , pp.
          <fpage>325</fpage>
          -
          <lpage>340</lpage>
          . doi:
          <volume>10</volume>
          .1016/B978-0
          <source>-12-809730-4</source>
          .
          <fpage>00037</fpage>
          -
          <lpage>9</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F.</given-names>
            <surname>Papadimitriou</surname>
          </string-name>
          ,
          <article-title>Geo-mathematical modelling of spatial-ecological complex systems: an evaluation</article-title>
          ,
          <source>Geography, Environment, Sustainability</source>
          <volume>3</volume>
          (
          <year>2010</year>
          )
          <fpage>67</fpage>
          -
          <lpage>80</lpage>
          . doi:
          <volume>10</volume>
          .24057/ 2071-9388-2010-3-1-
          <fpage>67</fpage>
          -80.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A. C.</given-names>
            <surname>Fowler</surname>
          </string-name>
          ,
          <source>Mathematical Models in the Applied Sciences</source>
          , Cambridge University Press, Cambridge,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Naghshvarianjahromi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Deen</surname>
          </string-name>
          ,
          <article-title>Natural intelligence as the brain of intelligent systems</article-title>
          ,
          <source>Sensors</source>
          <volume>23</volume>
          (
          <year>2023</year>
          )
          <article-title>2859</article-title>
          . doi:
          <volume>10</volume>
          .3390/s23052859.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kaltdorf</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Breitenbach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Karl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fuchs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. K.</given-names>
            <surname>Kessie</surname>
          </string-name>
          , E. Psota,
          <string-name>
            <given-names>M.</given-names>
            <surname>Prelog</surname>
          </string-name>
          , E. Sarukhanyan,
          <string-name>
            <given-names>R.</given-names>
            <surname>Ebert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Jakob</surname>
          </string-name>
          , G. Dandekar,
          <string-name>
            <given-names>M.</given-names>
            <surname>Naseem</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Liang</surname>
          </string-name>
          , T. Dandekar,
          <article-title>Software JimenaE allows eficient dynamic simulations of boolean networks, centrality and system state analysis</article-title>
          ,
          <source>Scientific Reports</source>
          <volume>13</volume>
          (
          <year>2023</year>
          )
          <year>1855</year>
          . doi:
          <volume>10</volume>
          .1038/s41598-022-27098-7.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bona</surname>
          </string-name>
          , Combinatorics Of Permutations, Chapman And Hall/Crc,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>P. M. Pardalos</surname>
            , D.-
            <given-names>Z.</given-names>
          </string-name>
          <string-name>
            <surname>Du</surname>
          </string-name>
          , R. L. Graham (Eds.),
          <source>Handbook of Combinatorial Optimization</source>
          , 2nd ed., Springer, New York,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S. V.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <article-title>The method of artificial space dilation in problems of optimal packing of geometric objects</article-title>
          ,
          <source>Cybernetics and Systems Analysis</source>
          <volume>53</volume>
          (
          <year>2017</year>
          )
          <fpage>725</fpage>
          -
          <lpage>731</lpage>
          . doi:
          <volume>10</volume>
          .1038/ s41598-020-67842-9.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>S.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Pichugina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Koliechkina</surname>
          </string-name>
          ,
          <article-title>Combinatorial point configurations and polytopes</article-title>
          , Wydawnictwo Uniwersytetu Łódzkiego, Łódz,
          <year>2023</year>
          . URL: https://www.press.uni.lodz.pl/wul/ catalog/book/589. doi:
          <volume>10</volume>
          .18778/
          <fpage>8331</fpage>
          -391-7.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>S. V.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. V.</given-names>
            <surname>Grebennik</surname>
          </string-name>
          ,
          <article-title>Localization of solutions of some problems of nonlinear integer optimization</article-title>
          ,
          <source>Cybernetics and Systems Analysis</source>
          <volume>29</volume>
          (
          <year>1993</year>
          )
          <fpage>727</fpage>
          -
          <lpage>734</lpage>
          . doi:
          <volume>10</volume>
          .1007/BF01125802.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>L.</given-names>
            <surname>Koliechkina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Hudz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Kylnyk</surname>
          </string-name>
          ,
          <article-title>Modeling of bank performance indicators based on business intelligence and data analysis</article-title>
          ,
          <source>in: 2023 IEEE 13th International Conference on Electronics and Information Technologies (ELIT)</source>
          ,
          <year>2023</year>
          , pp.
          <fpage>87</fpage>
          -
          <lpage>92</lpage>
          . doi:
          <volume>10</volume>
          .1109/ELIT61488.
          <year>2023</year>
          .
          <volume>10310849</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>