Разработка нечеткой системы расхождения надводных судов со стационарными объектами

  • Вид работы:
    Практическое задание
  • Предмет:
    Информатика, ВТ, телекоммуникации
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,61 Мб
  • Опубликовано:
    2015-04-18
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка нечеткой системы расхождения надводных судов со стационарными объектами

ФЕДЕРАЛЬНОЕ АГЕНСТВО МОРСКОГО И РЕЧНОГО ТРАНСПОРТА

ФЕДЕРАЛЬНОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

МОРСКОЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

имени адмирала Г.И. Невельского

Морской институт информационных технологий

Кафедра «Автоматических и информационных систем»






По дисциплине: «Системы искусственного интеллекта»

Тема: Разработка нечеткой системы расхождения надводных судов со стационарными объектами


Выполнила: студентка 14.51 группы

Шальнова А.И.






Владивосток 2014

Список обозначений

НЧС - нечеткая система;

ИС - искусственная система;

НЛ - Нечеткая логика;

ЛП - лингвистическая переменная;

ВЛП - входная лингвистическая переменная;

Т - базовое терм-множество;

I - универсальное множество;

M - подмножество;

C - столкновение с препятствием спереди;

ОС - препятствие спереди близко;- до препятствия спереди меньше полпути;- препятствие спереди на полпути;- препятствие спереди близко;- нет препятствий спереди.- столкновение с препятствием спереди;ОС - препятствие слева близко;- до препятствия слева меньше полпути;- препятствие слева на полпути;- препятствие слева близко;- нет препятствий слева.- столкновение с препятствием справа;ОС - препятствие справа близко;- до препятствия справа меньше полпути;- препятствие справа на полпути;- препятствие справа близко;- нет препятствий;- полное лево;- влево;- левее;- прямо;- правее;- вправо;- полное право.

1. Постановка решаемой задачи


Разработать НЧС расхождения надводных судов со стационарными объектами.

В ходе выполнения лабораторной работы предстоит разработать нечёткую систему расхождения надводных судов со стационарными объектами, которая способствует самостоятельному движению судна в надводном пространстве, не сталкиваясь с препятствиями (Рис.1).

Рисунок 1. Схематичное изображение процесса расхождения судна со стационарными объектами (а - судно, б, с - стационарные объекты)

Нечеткая система позволит надводному судну управлять самим собой, избегая препятствий. Этого можно добиться путем выбора соответствующих входов/выходов[4]. Для определения маневра расхождения судна с препятствием требуется знать наличие расстояние до препятствия (близко, далеко, на полпути и т.д.) и положение препятствия относительно судна (слева, справа, спереди). На выходе получаем направление судна [4].

2. Анализ задачи

Направление движения судна зависит от того, с какой стороны и на каком расстоянии находится препятствие. Следуя из этого, для данной НЧС можно вывести три основных принципа определения направления:

.        Чем ближе препятствие справа, тем круче поворот влево (Рис. 2).

.        Чем ближе препятствие слева, тем круче поворот вправо (Рис. 3).

.        Чем ближе препятствие спереди, тем круче поворот влево/вправо.

Рисунок 2. Схематичное изображение принципа «Чем ближе препятствие справа, тем круче поворот влево». (a - само судно, b - стационарный объект в положении «касание препятствия», c - стационарный объект в положении «препятствие близко», d - стационарный объект в положении «препятствие ближе, чем на полпути», e - направление «левее», f - направление «влево», g - направление «полное лево»)

Рисунок 3. Схематичное изображение принципа «Чем ближе препятствие слева, тем круче поворот вправо». (a - само судно, b - стационарный объект в положении «касание препятствия», c - стационарный объект в положении «препятствие близко», d - стационарный объект в положении «препятствие ближе, чем на полпути», e - направление «правее», f - направление «вправо», g - направление «полное право»)

3. Описание входных и выходных ЛП

Для управления транспортным средством требуется знать положение препятствия по отношению к судну. Это положение слева, справа от судна или перед ним. Следующее что требуется знать это расстояние от нашей позиции до объекта. Если объект находится далеко, мы будем продолжать движение, пока он не приблизится, после мы выбираем направление дальнейшего движения в зависимости от того где находится стационарный объект. Это именно та информация, которую будет использовать для нейронной сети.

Вводим три положения объекта: слева, спереди и справа (Рис. 4). А также расстояния от судна до препятствия[4].

Рисунок 4. Положение объектов по отношению к судну (L - положение слева, F - положение спереди, R - положение справа)

3.1 Входные лингвистические переменные


Спереди «Front» Т = {Т1 - касание, Т2 - близко, Т3 - меньше полпути, Т4 - на полпути, Т5 - далеко, Т6 - нет препятствий}

Для наиболее удобного описания расстояния лучше использовать проценты. Поэтому универсальным множеством является отрезок I = [0; 100], измеряемый в процентах. На нём определены семь функций принадлежности: для значений T1, T2, T3, Т4, Т5, Т6 носителями которых являются подмножества соответственно:

M1 = [0; 6] - C «crash» (с англ. - «столкновение с препятствием»);

M2 = [3; 16] - ОС «obstacle close» (с англ. - «препятствие близко»);

M3 = [13; 26] - OILTH «obstacle is less than halfway» (с англ. - «до препятствия меньше полпути»);

М4 = [23; 56] - HTTO «halfway to the obstacle» (с англ. - «препятствие на полпути»);

М5 = [53; 96] - OF «obstacle far» (с англ. - «препятствие близко»);

М6 = [93; 100] - TANO «there are no obstacles» (с англ. - «нет препятствий»).

Рисунок 5. Входная ЛП «Спереди» в среде FuzzyTECH

Слева «Left» Т = {Т1 - касание, Т2 - близко, Т3 - меньше полпути, Т4 - на полпути, Т5 - далеко, Т6 - нет препятствий}

M1 = [0; 6] - LC «crash» (с англ. - «столкновение с препятствием»);

M2 = [3; 16] - LОС «obstacle close» (с англ. - «препятствие близко»);

M3 = [13; 26] - LOILTH «obstacle is less than halfway» (с англ. - «до препятствия меньше полпути»);

М4 = [23; 56] - LHTTO «halfway to the obstacle» (с англ. - «препятствие на полпути»);

М5 = [53; 96] - LOF «obstacle far» (с англ. - «препятствие близко»);

М6 = [93; 100] - LTANO «there are no obstacles» (с англ. - «нет препятствий»).

Рисунок 6. Входная ЛП «Слева» в среде FuzzyTECH

Справа «Right» Т = {Т1 - касание, Т2 - близко, Т3 - меньше полпути, Т4 - на полпути, Т5 - далеко, Т6 - нет препятствий}

M1 = [0; 6] - RC «crash» (с англ. - «столкновение с препятствием»);

M2 = [3; 16] - RОС «obstacle close» (с англ. - «препятствие близко»);

M3 = [13; 26] - ROILTH «obstacle is less than halfway» (с англ. - «до препятствия меньше полпути»);

М4 = [23; 56] - RHTTO «halfway to the obstacle» (с англ. - «препятствие на полпути»);

М5 = [53; 96] - ROF «obstacle far» (с англ. - «препятствие близко»);

М6 = [93; 100] - RTANO «there are no obstacles» (с англ. - «нет препятствий»).

Рисунок 7. Входная ЛП «Справа» в среде FuzzyTECH

3.2 Выходные лингвистические переменные

Выходной ЛП является направление движения судна.

Направление «Course» Т = {Т1 - полное лево, Т2 - влево, Т3 - левее, Т4 - прямо, Т5 - правее, Т6 - вправо, Т7 - полное право}.

Для написания направления лучше использовать градусы. Поэтому универсальным множеством является отрезок I = [0; 100], измеряемый в градусах. На нём определены семь функций принадлежности: для значений T1, T2, T3, Т4, Т5, Т6, Т7 носителями которых являются подмножества соответственно (Рис. 8):

M1 = [0; 15] - LLL «полное лево»;

M2 = [14; 29] - LL «влево»;

M3 = [28; 43] - L «левее»;

М4 = [42; 57] - F «прямо»;

М5 = [56; 71] - R «правее»;

М6 = [70; 85] - RR «вправо»;

М7 = [84; 100] - RRR «полное право».

Рисунок 8. Схематичное изображение ЛП «Направление»

Рисунок 9. Выходная ЛП «Направление» в среде FuzzyTECH

интеллектуальный нечеткий логика судно

4. Система правил нечетких продукций


Количество правил определяется как произведение термов всех входных лингвистических переменных:

* 6 * 6 = 216

Так как в этом проекте нет исключительных ситуаций, то в создании СИИ участвуют все 216 правил.

.1 Правила в виде таблицы

Таблица 1

Входные данные

Выходные данные


ВЛП «Слева»

ВЛП «Прямо»

ВЛП «Справа»

ВЛП «Направление»

1

Нет препятствий

Нет препятствий

Нет препятствий

Прямо

2

Нет препятствий

Нет препятствий

Далеко

Прямо

3

Нет препятствий

Нет препятствий

На полпути

Прямо

4

Нет препятствий

Нет препятствий

Меньше полпути

Левее

5

Нет препятствий

Нет препятствий

Близко

Влево

6

Нет препятствий

Нет препятствий

Касание

Полное лево

7

Нет препятствий

Далеко

Нет препятствий

Прямо

8

Нет препятствий

Далеко

Далеко

Прямо

9

Нет препятствий

Далеко

На полпути

Прямо

10

Нет препятствий

Далеко

Меньше полпути

Левее

11

Нет препятствий

Далеко

Близко

Влево

12

Нет препятствий

Далеко

Касание

Полное лево

13

Нет препятствий

На полпути

Нет препятствий

Прямо

14

Нет препятствий

На полпути

Далеко

Прямо

15

Нет препятствий

На полпути

На полпути

Прямо

16

Нет препятствий

На полпути

Меньше полпути

Левее

17

Нет препятствий

На полпути

Близко

Влево

18

Нет препятствий

На полпути

Касание

Полное лево

19

Нет препятствий

Меньше полпути

Нет препятствий

Левее

20

Нет препятствий

Меньше полпути

Далеко

Левее

21

Нет препятствий

Меньше полпути

На полпути

Левее

22

Нет препятствий

Меньше полпути

Меньше полпути

Левее

23

Нет препятствий

Меньше полпути

Близко

Влево

24

Нет препятствий

Меньше полпути

Касание

Полное лево

25

Нет препятствий

Близко

Нет препятствий

Влево

26

Нет препятствий

Близко

Далеко

Влево

27

Нет препятствий

Близко

На полпути

Влево

28

Нет препятствий

Близко

Меньше полпути

Влево

29

Нет препятствий

Близко

Близко

Влево

30

Нет препятствий

Близко

Касание

Полное лево

31

Нет препятствий

Касание

Нет препятствий

Полное лево

32

Нет препятствий

Касание

Далеко

Полное лево

33

Нет препятствий

Касание

На полпути

Полное лево

34

Нет препятствий

Касание

Меньше полпути

Полное лево

35

Нет препятствий

Касание

Близко

Полное лево

36

Нет препятствий

Касание

Касание

Полное лево

37

Далеко

Нет препятствий

Нет препятствий

Прямо

38

Далеко

Нет препятствий

Далеко

Прямо

39

Далеко

Нет препятствий

На полпути

Прямо

40

Далеко

Нет препятствий

Меньше полпути

Левее

41

Далеко

Нет препятствий

Близко

Влево

42

Далеко

Нет препятствий

Касание

Полное лево

43

Далеко

Далеко

Нет препятствий

Прямо

44

Далеко

Далеко

Далеко

Прямо

45

Далеко

Далеко

На полпути

Прямо

46

Далеко

Далеко

Меньше полпути

Левее

47

Далеко

Далеко

Близко

Влево

48

Далеко

Далеко

Касание

Полное лево

49

Далеко

На полпути

Нет препятствий

Прямо

50

Далеко

На полпути

Далеко

Прямо

51

Далеко

На полпути

Прямо

52

Далеко

На полпути

Меньше полпути

Левее

53

Далеко

На полпути

Близко

Влево

54

Далеко

На полпути

Касание

Полное лево

55

Далеко

Меньше полпути

Нет препятствий

Левее

56

Далеко

Меньше полпути

Далеко

Левее

57

Далеко

Меньше полпути

На полпути

Левее

58

Далеко

Меньше полпути

Меньше полпути

Левее

59

Далеко

Меньше полпути

Близко

Влево

60

Далеко

Меньше полпути

Касание

Полное лево

61

Далеко

Близко

Нет препятствий

Влево

62

Далеко

Близко

Далеко

Влево

63

Далеко

Близко

На полпути

Влево

64

Далеко

Близко

Меньше полпути

Влево

65

Далеко

Близко

Близко

Влево

66

Далеко

Близко

Касание

Полное лево

67

Далеко

Касание

Нет препятствий

Полное лево

68

Далеко

Касание

Далеко

Полное лево

69

Далеко

Касание

На полпути

Полное лево

70

Далеко

Касание

Меньше полпути

Полное лево

71

Далеко

Касание

Близко

Полное лево

72

Далеко

Касание

Касание

Полное лево

73

На полпути

Нет препятствий

Нет препятствий

Прямо

74

На полпути

Нет препятствий

Далеко

Прямо

75

На полпути

Нет препятствий

На полпути

Прямо

76

На полпути

Нет препятствий

Меньше полпути

Левее

77

На полпути

Нет препятствий

Близко

Влево

78

На полпути

Нет препятствий

Касание

Полное лево

79

На полпути

Далеко

Нет препятствий

Прямо

80

На полпути

Далеко

Далеко

Прямо

81

На полпути

Далеко

На полпути

Прямо

82

На полпути

Далеко

Меньше полпути

Левее

83

На полпути

Далеко

Близко

Влево

84

На полпути

Далеко

Касание

Полное лево

85

На полпути

На полпути

Нет препятствий

Прямо

86

На полпути

На полпути

Далеко

Прямо

87

На полпути

На полпути

На полпути

Прямо

88

На полпути

На полпути

Меньше полпути

Левее

89

На полпути

На полпути

Близко

Влево

90

На полпути

На полпути

Касание

Полное лево

91

На полпути

Меньше полпути

Нет препятствий

Левее

92

На полпути

Меньше полпути

Далеко

Левее

93

На полпути

Меньше полпути

На полпути

Левее

94

На полпути

Меньше полпути

Меньше полпути

Левее

95

На полпути

Меньше полпути

Близко

Влево

96

На полпути

Меньше полпути

Касание

Полное лево

97

На полпути

Близко

Нет препятствий

Влево

98

На полпути

Близко

Далеко

Влево

99

На полпути

Близко

На полпути

Влево

100

На полпути

Близко

Меньше полпути

Влево

101

На полпути

Близко

Близко

Влево

102

На полпути

Близко

Касание

Полное лево

103

На полпути

Касание

Нет препятствий

Полное лево

104

На полпути

Касание

Далеко

Полное лево

105

На полпути

Касание

На полпути

Полное лево

106

На полпути

Касание

Меньше полпути

Полное лево

107

На полпути

Касание

Близко

Полное лево

108

На полпути

Касание

Касание

Полное лево

109

Меньше полпути

Нет препятствий

Нет препятствий

Правее

110

Меньше полпути

Нет препятствий

Далеко

Правее

111

Меньше полпути

Нет препятствий

На полпути

Правее

112

Меньше полпути

Нет препятствий

Меньше полпути

Прямо

113

Меньше полпути

Нет препятствий

Близко

Влево

114

Меньше полпути

Нет препятствий

Касание

Полное лево

115

Меньше полпути

Далеко

Нет препятствий

Правее

116

Меньше полпути

Далеко

Далеко

Правее

117

Меньше полпути

Далеко

На полпути

Правее

118

Меньше полпути

Далеко

Меньше полпути

Прямо

119

Меньше полпути

Далеко

Близко

Влево

120

Меньше полпути

Далеко

Касание

Полное лево

121

Меньше полпути

На полпути

Правее

122

Меньше полпути

На полпути

Далеко

Правее

123

Меньше полпути

На полпути

На полпути

Правее

124

Меньше полпути

На полпути

Меньше полпути

Прямо

125

Меньше полпути

На полпути

Близко

Влево

126

Меньше полпути

На полпути

Касание

Полное лево

127

Меньше полпути

Меньше полпути

Нет препятствий

Правее

128

Меньше полпути

Меньше полпути

Далеко

Правее

129

Меньше полпути

Меньше полпути

На полпути

Правее

130

Меньше полпути

Меньше полпути

Меньше полпути

Левее

131

Меньше полпути

Меньше полпути

Близко

Влево

132

Меньше полпути

Меньше полпути

Касание

Полное лево

133

Меньше полпути

Близко

Нет препятствий

Вправо

134

Меньше полпути

Близко

Далеко

Вправо

135

Меньше полпути

Близко

На полпути

Вправо

136

Меньше полпути

Близко

Меньше полпути

Вправо

137

Меньше полпути

Близко

Близко

Влево

138

Меньше полпути

Близко

Касание

Полное лево

139

Меньше полпути

Касание

Нет препятствий

Полное право

140

Меньше полпути

Касание

Далеко

Полное право

141

Меньше полпути

Касание

На полпути

Полное право

142

Меньше полпути

Касание

Меньше полпути

Полное право

143

Меньше полпути

Касание

Близко

Полное лево

144

Меньше полпути

Касание

Касание

Полное лево

145

Близко

Нет препятствий

Нет препятствий

Вправо

146

Близко

Нет препятствий

Далеко

Вправо

147

Близко

Нет препятствий

На полпути

Вправо

148

Близко

Нет препятствий

Меньше полпути

Вправо

149

Близко

Нет препятствий

Близко

Прямо

150

Близко

Нет препятствий

Касание

Полное лево

151

Близко

Далеко

Нет препятствий

Вправо

152

Близко

Далеко

Далеко

Вправо

153

Близко

Далеко

На полпути

Вправо

154

Близко

Далеко

Меньше полпути

Вправо

155

Близко

Далеко

Близко

Прямо

156

Близко

Далеко

Касание

Полное лево

157

Близко

На полпути

Нет препятствий

Вправо

158

Близко

На полпути

Далеко

Вправо

159

Близко

На полпути

На полпути

Вправо

160

Близко

На полпути

Меньше полпути

Вправо

161

Близко

На полпути

Близко

Прямо

162

Близко

На полпути

Касание

Полное лево

163

Близко

Меньше полпути

Нет препятствий

Вправо

164

Близко

Меньше полпути

Далеко

Вправо

165

Близко

Меньше полпути

На полпути

Вправо

166

Близко

Меньше полпути

Меньше полпути

Вправо

167

Близко

Меньше полпути

Близко

Прямо

168

Близко

Меньше полпути

Касание

Полное лево

169

Близко

Близко

Нет препятствий

Вправо

170

Близко

Близко

Далеко

Вправо

171

Близко

Близко

На полпути

Вправо

172

Близко

Близко

Меньше полпути

Вправо

173

Близко

Близко

Близко

Вправо

174

Близко

Близко

Касание

Полное лево

175

Близко

Касание

Нет препятствий

Полное право

176

Близко

Касание

Далеко

Полное право

177

Близко

Касание

На полпути

Полное право

178

Близко

Касание

Меньше полпути

Полное право

179

Близко

Касание

Близко

Полное право

180

Близко

Касание

Касание

Полное лево

181

Касание

Нет препятствий

Нет препятствий

Полное право

182

Касание

Нет препятствий

Далеко

Полное право

183

Касание

Нет препятствий

На полпути

Полное право

184

Касание

Нет препятствий

Меньше полпути

Полное право

185

Касание

Нет препятствий

Близко

Полное право

186

Касание

Нет препятствий

Касание

Прямо

187

Касание

Далеко

Нет препятствий

Полное право

188

Касание

Далеко

Далеко

Полное право

189

Касание

Далеко

На полпути

Полное право

190

Касание

Далеко

Меньше полпути

Полное право

191

Касание

Далеко

Близко

192

Касание

Далеко

Касание

Прямо

193

Касание

На полпути

Нет препятствий

Полное право

194

Касание

На полпути

Далеко

Полное право

195

Касание

На полпути

На полпути

Полное право

196

Касание

На полпути

Меньше полпути

Полное право

197

Касание

На полпути

Близко

Полное право

198

Касание

На полпути

Касание

Прямо

199

Касание

Меньше полпути

Нет препятствий

Полное право

200

Касание

Меньше полпути

Далеко

Полное право

201

Касание

Меньше полпути

На полпути

Полное право

202

Касание

Меньше полпути

Меньше полпути

Полное право

203

Касание

Меньше полпути

Близко

Полное право

204

Касание

Меньше полпути

Касание

Прямо

205

Касание

Близко

Нет препятствий

Полное право

206

Касание

Близко

Далеко

Полное право

207

Касание

Близко

На полпути

Полное право

208

Касание

Близко

Меньше полпути

Полное право

209

Касание

Близко

Близко

Полное право

210

Касание

Близко

Касание

Прямо

211

Касание

Касание

Нет препятствий

Полное право

212

Касание

Касание

Далеко

Полное право

213

Касание

Касание

На полпути

Полное право

214

Касание

Касание

Меньше полпути

Полное право

215

Касание

Касание

Близко

Полное право

216

Касание

Касание

Касание

Полное право


4.2 Правила в виде списка

 

1.      ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «препятствие справа ближе чем на полпути» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «нет препятствий справа» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «препятствие справа далеко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «нет препятствий слева» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное лево»;

.        ЕСЛИ «нет препятствий слева» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «нет препятствий справа» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «препятствие справа далеко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева далеко» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное лево»;

.        ЕСЛИ «препятствие слева далеко» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «нет препятствий справа» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «препятствие справа далеко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева на полпути» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное лево»;

.        ЕСЛИ «препятствие слева на полпути» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «нет препятствий справа» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «препятствие справа далеко» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «препятствие справа ближе, чем на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «нет препятствий справа» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «прямо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «правее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «левее»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «препятствие справа близко» ТО «влево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное лево»;

.        ЕСЛИ «препятствие слева ближе, чем на полпути» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа ближе, чем на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа близко» ТО «прямо»;

.        ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «препятствие справа близко» ТО «прямо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «прямо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «прямо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «нет препятствий справа» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «препятствие справа далеко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «препятствие справа близко» ТО «вправо»;

.        ЕСЛИ «препятствие слева близко» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «препятствие слева близко» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное лево»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «нет препятствий спереди» И «столкновение с препятствием справа» ТО «прямо»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди далеко» И «столкновение с препятствием справа» ТО «прямо»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди на полпути» И «столкновение с препятствием справа» ТО «прямо»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди ближе, чем на полпути» И «столкновение с препятствием справа» ТО «прямо»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «препятствие спереди близко» И «столкновение с препятствием справа» ТО «прямо»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «нет препятствий справа» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «препятствие справа далеко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «препятствие справа на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «препятствие справа ближе, чем на полпути» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «препятствие справа близко» ТО «полное право»;

.        ЕСЛИ «столкновение с препятствием слева» И «столкновение с препятствием спереди» И «столкновение с препятствием справа» ТО «полное право»;

. Описание разработки интеллектуальной системы

Для разработки интеллектуальной системы на базе нечеткой логики воспользуемся программным продуктом FuzzTECH 5.54d. Так как программа FuzzyTECH не имеет ввода на русском языке, то все подписи будут делаться с использованием букв английского языка. Так как условные обозначения ЛП нечеткой системы изначально были на английском, в середе FuzzTECH они будут обозначаться также. Ниже приведены обозначения лингвистических переменных (Рис.10-Рис.13):

.        Спереди препятствие - Front

.        Слева препятствие - Left

.        Справа препятствие - Right

.        Направление, для расхождения с препятствием - Course

Все входные и выходная лингвистические переменные, а также блок правил были объединены в блок схему(Рис.14)[3].

Рисунок 10. Входная ЛП «Front» в среде FuzzyTECH

Рисунок 11. Входная ЛП «Left» в среде FuzzyTECH

Рисунок 12. Входная ЛП «Right» в среде FuzzyTECH

Рисунок 13. Выходная ЛП «Course» в среде FuzzyTECH

Рисунок 14. Схематичное определение направления движения судна в среде FuzzyTECH

Далее представлены сформированные в базе нечёткие правила (Рис.15).

Рисунок 15. База нечетких правил в среде FuzzyTECH

6. Тестирование НЧС

 

Тест 1

Тестирование системы с данными, подходящими под правило: ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «левее».

Допустим, что движется судно, у которого на пути встречаются препятствия: слева, спереди и справа. Препятствие слева находится на полпути до судна. Препятствие спереди находится далеко от судна. Препятствие справа находится на расстоянии меньше, чем полпути.

Рисунок 16. правило: ЕСЛИ «препятствие слева на полпути» И «препятствие спереди далеко» И «препятствие справа ближе, чем на полпути» ТО «левее» (a - судно, b - «препятствие слева на полпути», c - «препятствие спереди далеко» , d - «препятствие справа ближе, чем на полпути», e - направление «левее»).

Данная ситуация соответствует маневру «левее». Вносим в систему следующие данные:

Front = 75.0000

Left = 40.0000

Right = 20.0000

Рисунок 17. Ввод данных

Рисунок 18. Значение ВЛП «Спереди»

Рисунок 19. Значение ВЛП «Слева»

Рисунок 20. Значение ВЛП «Справа»

Рисунок 21. Значение входной ЛП «Направление»

Рисунок 22. Правило выполняется

Рисунок 23. Зависимость от ВЛП «Спереди» и «Слева»

Рисунок 24. Зависимость от ВЛП «Спереди» и «Справа»

Рисунок 25. Зависимость от ВЛП «Справа» и «Слева»

Из Рис.21-Рис.22 следует, что НЧС сделала выбор в пользу маневра «Левее», т.е. выдала предполагаемый правильный результат.

Тест 2

Тестирование системы с данными, подходящими под правило: ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «вправо».

Допустим, что движется судно, у которого на пути встречаются препятствия: слева и справа. Препятствие слева находится близко к судна. Препятствий спереди нет. Препятствие справа находится на полпути.

Рисунок 26. Правило ЕСЛИ «препятствие слева близко» И «нет препятствий спереди» И «препятствие справа на полпути» ТО «вправо». (a - судно, b - «препятствие слева близко», d - «препятствие справа на полпути», c - направление «вправо»).

Данная ситуация соответствует маневру «вправо». Вносим в систему следующие данные:

Front = 99.0000

Left = 10.0000

Right = 40.0000

Рисунок 27. Ввод данных

Рисунок 28. Значение ВЛП «Спереди»

Рисунок 29. Значение ВЛП «Слева»

Рисунок 30. Значение ВЛП «Справа»

Рисунок 31. Значение входной ЛП «Направление»

Рисунок 32. Правило выполняется

Рисунок 33. Зависимость от ВЛП «Спереди» и «Слева»

Рисунок 34. Зависимость от ВЛП «Спереди» и «Справа»

Рисунок 35. Зависимость от ВЛП «Справа» и «Слева»

Из Рис.31-Рис.32 следует, что НЧС сделала выбор в пользу маневра «Влево», т.е. выдала предполагаемый правильный результат.

Тест 3

Тестирование системы с данными, подходящими под правило: ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «прямо».

Допустим, что движется судно, у которого на пути встречаются препятствия: слева, спереди и справа. Препятствие слева находится близко к судну. Препятствие спереди находится на полпути. Препятствие справа находится близко к судну.

Рисунок 36. Правило ЕСЛИ «препятствие слева близко» И «препятствие спереди на полпути» И «препятствие справа близко» ТО «прямо» (a - судно, b - «препятствие слева близко», c - «препятствие спереди на полпути» , d - «препятствие справа близко», e - направление «прямо»).

Данная ситуация соответствует маневру «прямо». Вносим в систему следующие данные:

Front = 40.0000

Left = 10.0000

Right = 10.0000

Рисунок 37. Ввод данных

Рисунок 38. Значение ВЛП «Спереди»

Рисунок 39. Значение ВЛП «Слева»

Рисунок 40. Значение ВЛП «Справа»

Рисунок 41. Значение входной ЛП «Направление»

Рисунок 42. Правило выполняется

Рисунок 43. Зависимость от ВЛП «Спереди» и «Слева»

Рисунок 44. Зависимость от ВЛП «Спереди» и «Справа»

Рисунок 45. Зависимость от ВЛП «Справа» и «Слева»

Из Рис.38-Рис.39 следует, что НЧС сделала выбор в пользу маневра «Прямо», т.е. выдала предполагаемый правильный результат.

Список литературы


1.   Седова Н.А., Разработка ИС базе НЛ в FuzzyTech - Владивосток: МГУ им. адм. Невельского,2012г. - 56с.

2.      Седова Н.А., Курс лекций по СИИ.

.        Березкин П.С., Отчёт по лабораторной работе №1 - Владивосток: МГУ им. адм. Невельского, 2013г. - 37с.

.        Управление транспортным средством с помощью нейронной сети

Похожие работы на - Разработка нечеткой системы расхождения надводных судов со стационарными объектами

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!