
Тверской Государственный Технический Университет
Кафедра автоматизации технологических процессов и производств
Лабораторная работа № 1
Исследование методов анализа технических решений на основе их меры сходства, меры включения и меры различия
Выполнил: студент 5-го курса
группы АТПП-0702 Клюев И.В.
Проверил: Трибухин А. Г.
г. Тверь 2011
Задание на лабораторную работу
-
Изучить понятия: техническое решение, мера сходства, мера включения и мера различия.
-
Для исследуемых технических решений определить:
- меру сходства с использованием различных формул;
- меру включения;
- меру различия;
-
Задаться пороговым значением сходства, различия и включения.
-
Выбрать оригинальные технические решения.
Теоретическая часть
Техническое решение (ТР) – под ним понимается любой результат полученный на отдельном этапе проектирования (схема СУ, модель СУ, документация на датчики, измерительные устройства). Основной задачей при рассмотрении множества ТР является выбор наилучшего решения. Оценки, необходимые для сравнения ТР, формируются по набору показателей, характеристик ТР. В морфологических методах анализа каждый объект (ТР) представляется в виде вектора включающего значения всех характеристик:
С математической точки зрения это значит, что каждое ТР – это точка в многомерном пространстве признаков (характеристик).
При большой размерности f достаточно сложно выбрать наилучшее решение, поэтому прибегают к различным методам оценки расстояния между решениями в пространстве f.
Мера сходства отражает степень сходства одного ТР1 со вторым ТР2.
Мера включения отражает различную степень включения одного ТР1 в другое ТР2.
Мера различия отражает степень различия одного ТР1 со вторым ТР2.
Расчетные соотношения для определения мер сходства, включения и различия:
Мера
сходства Чекановского-Серенсена:
Мера
сходства Сокала_Снита:
Мера
сходства Андреева:
Мера
сходства Кульчинского:
Мера
включения:
Мера
различия:
Практическая часть
Исходные данные: матрица ТР-f:
1 1 0 1 1 0 1 1 0 0 1 0 1 0
0 0 0 1 0 1 0 1 1 0 0 1 1 1
0 1 1 0 1 0 1 0 0 1 1 0 0 0
1 1 1 0 0 1 0 0 1 1 0 0 1 1
T = 1 0 0 1 0 1 0 0 0 0 1 1 1 1
0 1 1 1 0 0 1 1 1 0 0 1 0 0
1 1 0 1 0 0 1 0 1 0 1 0 0 0
0 0 1 0 1 1 0 1 1 1 0 0 1 1
1 1 0 0 0 1 0 1 0 1 1 0 1 1
1 0 1 1 0 1 0 0 0 1 1 0 0 1
Зададимся
Приведем исходный код программы по расчету мер сходства, различия и включения, а также определения оригинального решения:
clc;
clear;
close all;
T= [1 1 0 1 1 0 1 1 0 0 1 0 1 0;
0 0 0 1 0 1 0 1 1 0 0 1 1 1;
0 1 1 0 1 0 1 0 0 1 1 0 0 0;
1 1 1 0 0 1 0 0 1 1 0 0 1 1;
1 0 0 1 0 1 0 0 0 0 1 1 1 1;
0 1 1 1 0 0 1 1 1 0 0 1 0 0;
1 1 0 1 0 0 1 0 1 0 1 0 0 0;
0 0 1 0 1 1 0 1 1 1 0 0 1 1;
1 1 0 0 0 1 0 1 0 1 1 0 1 1;
1 0 1 1 0 1 0 0 0 1 1 0 0 1]
C=[];
deltaC=0.6
for(i=1:1:14)
for(j=1:1:14)
mtt=0;
mt1=0;
mt2=0;
for(k=1:1:10)
mtt=mtt+T(k,i)*T(k,j);
mt1=mt1+T(k,i);
mt2=mt2+T(k,j);
end
%Мера включения
C(1,i,j)=mtt/mt2;
if(C(1,i,j)>=deltaC)
C(1,i,j)=1;
else
C(1,i,j)=0;
end
%Мера сходства Чекановского-Серенсена
temp_mtt=mtt*2;
C(2,i,j)=temp_mtt/(mt1+mt2);
if(C(2,i,j)>=deltaC)
C(2,i,j)=1;
else
C(2,i,j)=0;
end
%Мера сходства Сокала-Снита
C(3,i,j)=4*mtt/(mt1+mt2+2*mtt);
if(C(3,i,j)>=deltaC)
C(3,i,j)=1;
else
C(3,i,j)=0;
end
%Мера сходства Андреева
C(4,i,j)=mtt/(2*mt1+2*mt2-3*mtt);
if(C(4,i,j)>=deltaC)
C(4,i,j)=1;
else
C(4,i,j)=0;
end
%Мера сходства Кульчинского
C(5,i,j)=0.5*mtt*(1/mt1+1/mt2);
if(C(5,i,j)>=deltaC)
C(5,i,j)=1;
else
C(5,i,j)=0;
end
%Мера различия
C(6,i,j)=mt1+mt2-2*mtt;
if(C(6,i,j)>=deltaC)
C(6,i,j)=1;
else
C(6,i,j)=0;
end
end
end
S=char('Мера включения','Мера сходства Чеконовского-Серенсена :','Мера сходства Сокала-Снита :','Мера сходства Андреева :','Мера сходства Кульчинского :','Мера различия :');
for(z=1:1:6)
K=[0 0 0 0 0 0 0 0 0 0 0 0 0 0];
disp(S(z,:));
for(i=1:1:14)
for(j=1:1:14)
H(i,j)=C(z,i,j);
end
end
disp(H);
MAX=0;
for(i=1:1:14)
for(j=1:1:14)
K(i)=K(i)+H(i,j);
end
if(MAX<K(i))
MAX=K(i);
end
end
disp('K=');disp(K);
disp('Оригинальные решения : ')
for(i=1:1:14)
if(MAX==K(i))
disp(i);
end
end
end