The Butterfly Algorithm: A Contradiction Solving Algorithm

International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016), pp. 27-34
http://dx.doi.org/10.14257/ijseia.2016.10.1.03
The Butterfly Algorithm: A Contradiction Solving Algorithm
based on Propositional Logic for TRIZ
Jung Suk Hyun1 and Chan Jung Park2
1
Department of Management Information Systems, Jeju National University,
Jejudaehak-ro 102, Jeju-do, 63243,Republic of Korea
2
Department of Computer Education, Jeju National University,
Jejudaehak-ro 102, Jeju-do, 63243,Republic of Korea
{jsyun,cjpark}@jejunu.ac.kr
Abstract
Among creative and innovative problem solving algorithms, TRIZ solves difficult
problems by finding contradictions of the problems. In TRIZ, there are two types of
contradictions. One is a technical contradiction and the other is physial contradiction. A
technical contradiction occurs between two desirable functions of a system. We call it a
trade-off contradiction. On the other hand, a physical contradiction appears when two
opposite properties are required from the same part of a system. In TRIZ, the ARIZ has
been developed by Altshuller for reducing trial-and-error while solving problems. It is
known as an inventive problem solving. It transforms difficult technical contradictions of
a given problem into the corresponding physical contradiction to solve the problem
easily. However, ARIZ-85c, the most recent version of the ARIZ, has inefficient and timeconsuming features that cause trial-and-errors. In this paper, we propose the Butterfly
algorithm based on the Butterfly diagram to reduce trial-and-error features by giving the
right solution strategy based on propositional logic when selecting technical
contradictions and physical contradictions for a given problem. The Butterfly algorithm
can systematically find the solution strategy for the problem, and thus it helps to solve
contradictions efficiently.
Keywords: ARIZ, the Butterfly Diagram, the Butterfly Algorithm, Contradiction
Problem Solving, TRIZ, Creative Problem Solving
1. Introduction
Historically, many creative and innovative solutions solved the contradictions of given
problems. Among the creative problem solving methods, TRIZ, the Russian acronym for
the “Theory of Inventive Problem Solving”, is the one of the best methods handle
contradictions. TRIZ was developed by Altshuller and his colleagues [1]. They figured
out that there was a common thing among innovative inventions. The common thing was
that researchers have solved the contradictions included in given problems instead of
compromising the conflicts [1-2]. TRIZ can reduce the number of trial-and-errors by
abstraction and analogical reasoning when engineers solve problems [1-2]. TRIZ provides
many useful tools to solve contradictions in a given problem.
TRIZ defines two types of contradictions when it solves problems. One is technical
contradiction and the other is physical contradiction [3]. The technical contradictions are
‘trade-offs’. In other words, if one thing gets better, then the other thing gets worse [3].
For example, the speed of a bike forms a technical contradiction with the safety of a bike.
On the other hand, the physical contradictions occur when two opposite requirements
meet. For example, the width of a highway should be wide for easy traffic control and it
should be narrow for low impact on communities [3].
ISSN: 1738-9984 IJSEIA
Copyright ⓒ 2016 SERSC
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
Among the TRIZ tools, the ARIZ, algorithm for inventive problem solving, is the core
analytical tool of TRIZ [4]. It was also developed by Altshuller for reducing trial-anderrors while solving problems. The essence of the ARIZ is to transform an ill-structured
problem into a well-structured problem to solve easily. It is composed of 85 step-by-step
procedures to solve contradictions. The ARIZ transforms the technical contradiction of a
given problem into the physical contradiction of the same problem. The ARIZ has
continuously been evolved, and ARIZ-85c was published with 9 steps in 1985 as follows
[5].
Step1: Analysis of a given problem
Step2: Analysis of the problem’s model.
Step3: Formulation of the Ideal Final Result (IFR).
Step 4: Utilization of outside substances and field resources.
Step5: Utilization of information data bank.
Step 6: Change or reformulate the problem.
Step7: Analysis of the method that removed the physical contradiction.
Step 8: Utilization of found solution.
Step 9: Analysis of steps that lead to the solution.
In the early stages of the ARIZ Part 1, selecting the right contradiction is important for
solving the problem. However, ARIZ-85c, the most recent version of the ARIZ, still has
the brute-force feature inside. As shown in Figure 1, the step 6 of ARIZ-85c says “If the
problem has not been solved yet, go to the step 1.4, and then choose the other technical
contradiction for this problem”. It represents that the ARIZ has the feature similar to the
brainstorming. The step 1.4 is to select the technical contradiction that is suitable for the
main function of a given system. However, the problem is that the main function of the
system can be defined differently according to solvers. In addition, the ARIZ is a method
whose efficacy depends on the problem solver’s technical knowledge [5].
In this paper, we propose the Butterfly algorithm based on the Butterfly diagram to
reduce the trial-and-errors generated by choosing a wrong solution strategy. We propose
the logical way how to choose the right direction when selecting technical contradictions
and physical contradictions with propositional logic. The Butterfly algorithm can
systematically find the solution strategy for the problem, and thus it can reduce the trialand-errors and help to solve contradictions efficiently.
The rest of this paper is consisted as follows: in Section 2, we present the Butterfly
diagram that is the basis of our Butterfly algorithm. Next, in Section 3, we compare the
Butterfly algorithm and the ARIZ-85c. And then, we explain the difference with the iron
plate tank problem. Finally, we conclude our paper in Section 4.
28
Copyright ⓒ 2016 SERSC
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
Figure 1. The Step 6 of ARIZ-85c [6]
2. The Butterfly Diagram
A system has the interconnectivity of a system among the components of the system. It
means that when some part of a system gets better, other part of the system gets worse,
and vice versa [7-8]. The Butterfly diagram is the component of the Butterfly model [8-9].
Compared with TRIZ, the Butterfly model can define the essence of a given problem by
describing the relationships of its technical contradiction and physical contradiction.
Physical contradictions belong to more concrete and narrow problem space than technical
contradictions [8]. And then, the Butterfly model can find out the ideal solutions for the
given problem easily by combining its technical and physical contradictions. After finding
out its ideal solutions, according to the type of the problems, the time, the space, and the
partial and the whole state model are applied to derive the problem solutions more
precisely [8].
On the other hand, the Butterfly diagram assumes the interconnectivity of a system.
Due to the interconnectivity, when some function of a system is enhanced (w, wanted
function), other function is deteriorated (u, unwanted function) as shown in Figure 2. In
this situation, a trade-off relation occurs. The main cause, the system faces with a tradeoff relation, comes from the system state, s, and the contradictory system state, ~s.
For solving the contradiction problems, a few terminologies are defined in the Butterfly
diagram.
[Definition 1] A system S is composed of 3 components, w, u, and s, where w is a
wanted function of S, u is the unwanted function caused by satisfying a state s, which is a
condition for supporting w [9].Then, ~s is a condition for supporting ~u.
[Definition 2] w and ~u have a trade-off relation with each other when w becomes
better, whereas ~u becomes less, and vice versa.
Copyright ⓒ 2016 SERSC
29
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
Figure 2. The Interconnectivity of a System [9]
[Definition 3] s and ~s have a contradiction relation when s and ~s cannot be true at
the same time.
We explain a trade-off relation and a contradiction relation with the agility and the
safety of the iron plate of a tank. If the iron plate is thick (s), then the iron plate protects
shells well (w). However, the agility of the tank falls down (u) due to the thick plate. In
order to elevate the agility of the tank (~u), the iron plate should be thin (~s). The thin
iron plate also causes the problem that the tank cannot protect shells well (~w). In this
case, w and ~u have a trade-off relation, whereas s and ~s have a contradiction relation.
This problem is depicted with the Butterfly diagram shown in Figure 3.
Figure 3. The Butterfly Diagram for the Tank Problem
To give more accurate direction for solving problems, the Butterfly model analyzed the
problem types and the solution strategies based on Logics in [9]. In a Butterfly diagram,
the relationships between w and s mean the conditional propositions between the wanted
function, w, in a system and the system state, s, for performing w. Similarly, the
relationships between u and s mean the conditional propositions between the unwanted
function, u, in a system and the system state, s, for performing u. Then, there are 9 types
of conditional proposition relationships, i.e., 3 (a sufficient, a necessary, and a necessary
and sufficient condition between w and s)  3 (a sufficient, a necessary, and a necessary
and sufficient condition between s and u). From now on, we analyze each problem type
and propose the problem solving objectives and the solution strategies for each problem
type [9].
In the above problem, we describe the relations with the propositional logic. If the iron
plate is thick (s), then the tank protects shells well (w). Thus, we represent this relation as
s w like in the propositional logic. Also, if the iron plate is thick (s), then the agility of
the tank falls down (u). Thus, we represent this relation as s u. By the contraposition
30
Copyright ⓒ 2016 SERSC
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
law, if s u then ~u  ~s. Also, if s w then ~w ~s. Thus, the iron plate problem of a
tank can be described with the relations among w, u, and s. such as (s w)  (s u). In
addition, the solution objectives about the tank problem are to protect shells (safety) and
to move quickly (agility) at the same time (w  ~u). It means that the iron plate should be
thin and the tank should protect well (~s  w). The relations represented in the Butterfly
diagram are transformed into a propositional logic expression as follows [9]:
(s w)  (s u) and (w  ~u)  (~s  w).
The above logical expression is proved with the truth table as shown in Table 1. Table
1 shows if we can describe the relations between technical contradictions and physical
contradictions by the propositional logic, then we know the solution for solving the
contradictions. Table 1 means when the given problem conditions are given as (s w) 
(s u) and (w  ~u), then the right direction for the solution strategy is (~s  w). ~s  w
is the only one that satisfies ‘true’ conditions in the logical expression. Since the solution
direction is given, we can avoid trial-and-errors unlike the ARIZ-85c.
Table 1. Proof Based on a Truth Table for Solution Strategy about the Iron
Plate Problem of the Tank
suw
s→ w
∧
s→u
∧
w∧ ~u
→
~s∧ w
TTT
TTF
TFT
TFF
FTT
FTF
FFT
FFF
T
F
T
F
T
T
T
T
T
F
F
F
T
T
T
T
T
T
F
F
T
T
T
T
F
F
F
F
F
F
T
F
F
F
T
F
F
F
T
F
T
T
T
T
T
T
T
T
F
F
F
F
T
F
T
F
Based on the solution strategy by depicting the Butterfly diagram, one solution for the
tank problem was giving 60 degree of slope in the iron plate of the tank as shown in
Figure 4. Then, the plate has the increasing effect in thickness due to the slope. The
thickness of the plate becomes 90mm by slope when the original thickness is 45mm. Thus,
without the thicker plate, the tank protects shell better than before.
Figure 4. The Iron Plate of the Tank
Another example can be found in a bike problem. The larger front wheels gave higher
speed. At the same time, the large front wheels threaten bike riders’ safety. By having the
saddle set too high, the bike riders have difficulties when getting on and getting off. If
bike has a big front wheel (s), then bike riders can not only run high speed (w) but also be
dangerous to drive (u). Bike riders wanted a fast but safe bike (w∧~u). In order to achieve
the objectives of the bike, it should have a small front wheel (~s). Starley invented the
Copyright ⓒ 2016 SERSC
31
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
first rear-driving bicycle, known as the Rover safety bike, in 1885. He solved the
contradiction by using the pedal and the chain connecting the rear wheel. It guaranteed the
high speed of the bike with safety [10].
3. The Butterfly Algorithm
In this Section, we present the Butterfly algorithm based on the propositional logic and
the logical interpretations of problem types and their solution strategies. The Butterfly
algorithm redefines the Step 1.4 of ARIZ-85c more accurately. It reduces the dependency
on the problem solver’s expertise. Other parts are the same as the ARIZ-85c. In the next
Butterfly algorithm, we firstly describe the difference in step1 from the ARIZ-85c as
follows:
Step 1.1 Without specialized terminology, write down the
conditions of the mini-Problem.
Step 1.2 Select the conflicting pair.
Step 1.3 Formulate system contradictions (technical and
physical) using the conflicting pair from Step 1.2 and
create a Butterfly diagram for the system
contradiction.
Step 1.4 Select the right solution strategy from the two system
contradictions’ relationship (the three relations
between w and s, the three relations between s and u)
classified by propositional logic. There are nine
cases according to sufficient conditions, necessary
conditions, and necessary and sufficient conditions of
functions and states of the system.
The rest of steps are the same as [6] and described as follows:
Step 2 Existing resource analysis
Step 3 Determination of ideal final result and physical
contradiction
Step 4 Utilization and application of modified time, space,
substance and field resources
Step 5 Application of information fund
Step 6 We can skip the step 6 for changing problems
Step 7 Analyzing the quality of the problem solution
Step 8 Application of the problem solution to maximize use of
the applied resources
Step 9 Analysis of solution procedure to increase the creative
potential of humanity
Finally, we compared our algorithm with the ARIZ-85C by representing the previous
example, the iron plate of the tank problem.
Step 1.1 To define the mini-problem.
[The iron plate of a tank], [protecting shells], is
composed of [shells and the iron plate].
32
Copyright ⓒ 2016 SERSC
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
Technical contradiction 1: if [the iron plate is thick],
then [the tank can protect shells well]. However, [the
weight of the tank increases]. Thus, [the agility of
the tank decreases].
Technical contradiction 2: if [the iron plate is thin],
then [the tank can move quickly]. However, [the tank
cannot protect shells well].
At least, we minimally modify [the tank], and then we
get the result such that [the agile tank that has a
thin iron plate protects shells well].
Step 1.2 To define the contradictory factors.
Objects: shells
Tools: the iron plate
Step 1.3 To define the physical contradiction.
At this state two algorithms are the same. However, in the Step 1.4, ARIZ describes the
Step 1.4 as follows:
Step 1.4 To determine the main function of the system.
Thus, according to problem solvers, different technical contradiction can be selected.
Thus, in the later step, trial-and-error can occur. However, in our algorithm, since
sufficient condition and necessary condition can be determined, we can decide the
solution so that (~s  w), where s is the thick iron plate and w is to protect shells well. As
a result, in our algorithm, step 1.4 can be described as follows:
Step 1.4 To determine the technical contradiction as [thin
iron plate and protecting shells well].
In summary, in the above problem, ARIZ-85C proposed that a problem solver should
select one technical contradiction with respect to the main function of the system.
However, it is difficult to determine which function is more important between two
functions ((i) to protect shell and (ii) to have agility). Two functions are required in the
iron plate tank. The Butterfly diagram performs a visual role in analyzing physical
contradictions and technical contradictions easily. By applying the propositional logic, the
Butterfly algorithm derives the right direction efficiently and logically.
4. Conclusions
Simon supposed that when we solve a complex problem, we should define the type of
problems and develop the appropriate representation method for the problem. Symbolic
notations and systematic representations increase the problem solving abilities of problem
solvers. The symbolic logic overcomes the ambiguity of a language, and then figures out
the correct logical structure of a given problem. However, in symbolic logic, contradiction
problems were not considered due to their problems’ complexity [11-12].
Polya indicated that if the type of a problem is classified, then the problem could be
solved easier [12]. It means that when we know the structure of a contradiction problem
and its solution type in advance, we can reduce the problem space so that we can solve the
problem easily. If we figure out the solution strategy according to the problem types with
logical proofs, the problem solving ability can be enhanced due to the efficient search of
the problem space [13].
The Butterfly diagram helps to find out a solution by defining a solution strategy based
on the analysis of the trade-off relation and the contradiction relation hidden in a given
problem. The Butterfly algorithm replaces the brute-force feature of ARIZ with the
Copyright ⓒ 2016 SERSC
33
International Journal of Software Engineering and Its Applications
Vol. 10, No. 1 (2016)
components of the Butterfly diagram, which are represented based on the propositional
logic. In other words, if the relationship between the technical contradiction and the
physical contradiction in TRIZ are analyzed with the propositional logic, then the solution
strategy that resolves the problem can be decided in a right way without trial-and-errors.
When the required functions and the states for the functions are examined from the
sufficient condition point of view, problem solvers can eliminate the ambiguity of the
given problems and can derive the right solution strategy.
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
G. S. Altshuller, “Creativity as an Exact Science: The Theory of the Solution of Inventive Problems”,
CRC Press, (1984).
S. D. Savransky, “Engineering of Creativity: Introduction to TRIZ Methodology of Inventive Problem
Solving”, CRC Press, (2002).
E. Domb, “Contradictions: Air Bag Applications”, The TRIZ Journal, (1997).
R. Langevin, “ARIZ”, Technical Innovation Center, Inc., https://www.triz.org/triz/ariz.
N. Becattini, Y. Borgianni, G. Cascini and F. Rotini, “ARIZ85 and Patent-driven Knowledge Support”.
ARIZ-85C Algorithm for Inventive Problem Solving Structure, http://www.triz.com.tw/isak2/tutorial/
+ARIZ85C_structure_example_WEB_02_22_2012.Pdf.
J. S. Hyun and C. J. Park, “A conflict-based model for problem-oriented software engineering and its
application solved by dimension change and use of intermediary,” in CCIS, vol. 59, (2009), pp. 61-69.
J. S. Hyun and C. J. Park, “The butterfly model for supporting creative problem solving”, Knowledge,
Information, and Creativity Support Systems (KICSS), 2012 Seventh International Conference on IEEE,
(2012), pp. 28-34.
J. S. Hyun and C. J. Park, “Logical interpretation about problem types and solution strategies of the
butterfly model for the automation of contradiction-based problem solving”, Teaching, Assessment and
Learning (TALE), International Conference on. IEEE, (2014), pp. 236-241.
T. Hadland and H.-E. Lessing, “Bicycle design: An illustrated history”, MIT Press, (2014).
H.A. Simon, “The Sciences of the Artificial”, The MIT Press, (1987).
H.A. Simon, “The architecture of complexity,” Proceedings of the American Philosophical Society, vol.
106, no. 6, (1962), pp. 467-482.
G. Polya, “Mathematics and Plausible Reasoning: Induction and Analogy in Mathematics”, vol. 1.
Princeton University Press, (1990).
Authors
Jung Suk Hyun, received Ph.D. at Sogang University, Korea.
Since 2002, he has worked for the Dept. of MIS at Jeju National
University. In 2011, he was a visiting scholar at University of
California, Berkeley. His research interests include behavioral
decision theory and creative problem solving. He received awards of
the Korean Intellectual Property Office (2012), the Best Teacher
Award (2011), the Award of Enhancing University Prestige of Jeju
National University (2008), Best Professor Award of Achievement in
Research of Jeju National University (2007).
Chan Jung Park, received B.S. at Dept. of Computer Science of
Sogang University, Korea. She received M.S. and Ph.D. at KAIST
and Sogang University, respectively. From 1990 to 1994, and also
from 1998 to 1999, she worked for Korea Telecom as a researcher.
Since 1999, she has worked for the Dept. of Computer Education at
Jeju National University. Currently, she is a professor in Jeju
National University. In 2010, he was a visiting scholar at University
of California, Berkeley. Her research interests include creative
problem solving, web app development, and data mining.
34
Copyright ⓒ 2016 SERSC