Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛБ-ИИС-2012.doc
Скачиваний:
11
Добавлен:
29.05.2015
Размер:
253.44 Кб
Скачать

Лабораторная работа7 -Ликвидность предприятия

Задача для лабораторной работы: оценка ликвидности предприятия

Для построения ЭС, формирующей оценку ликвидности предприятия на основе данных финансовой отчетности, необходимо иметь:

  1. входные переменные: Х1 (денежные средства и краткосрочные вложения- сумма строк 250, 260 баланса), Х2 (дебиторская задолженность- сумма строк 230, 240 баланса), Х3 (запасы- строка 210 баланса), Х4 (краткосрочные обязательства- строка 690 баланса);

  2. внутренние (рабочие) переменные С1 (коэффициент абсолютной ликвидности), С2 (коэффициент быстрой ликвидности), С3 (коэффициент текущей ликвидности), вычисляемые по формулам:

  3. С1 = X1/X4;

  4. С2 = (X1+X2)/Х4;

  5. С3 = (X1+X2+Х3)/Х4;

  6. квалификатор U1 со значениямиn(низкий),s(средний)v(высокий), вычисляемыми по значениюС1;

  7. квалификатор U2 со значениямиn(низкий),s(средний)v(высокий), вычисляемыми по значениюС2;

  8. квалификатор U3 со значениямиn(недостаточный),d(достаточный), , вычисляемыми по значениюС3;

  9. Список ChoiceListсостоит из интегральных оценок ликвидностиnotenough(недостаточная),n(низкая),s(средняя)v(высокая), выбираемых в зависимости от значений квалификаторовU1 иU2 по правилам, построенным согласно следующей ниже таблице.

v

s

v

v

s

s

s

v

n

n

s

v

n

s

v

Интегральная оценка ликвидности предприятия.

Символы n,s,v соответствуют оценкам "низкая", "средняя", "высокая"

Из таблицы видно, что ликвидность (способность рассчитаться по краткосрочным обязательствам) безусловно высокая (v), если коэффициент абсолютной ликвидности (деньги в кассе и на рассчетном счете) высок. В остальных случаях общая оценка зависит от сочетания двух коэффициентов ликвидности. При этом предполагается, что коэффициент текущей ликвидности имеет значение достаточное (d) В противном случае общая оценка ликвидности выводится как недостаточная (notenough).

(1). Задание параметров системы.Создание ЭС вExsysначинается с Пуск =>ExsysPro16 =>ProDemoи выбора в менюFileопцииNew, в результате чего открывается окно параметров, в котором по умолчанию заданы по большей части приемлемые параметры. В данном случае требуется указать (всюду используйте латинский шрифт) имя будущей системы (например,liquid), предмет экспертизы (например,liqudity), автора системы (например, ваше имя латинскими буквами) иConfidenceMode:Fuzzy(хотя по умолчанию заданоConfidenceMode: 0-10, но нам предстоит использовать нечеткие понятия). В итоге основные параметры создаваемой нами системы будут таковы:

Subject: liquidity

Author: name

Confidence Mode: Fuzzy

DISPLAY THRESHOLD: .1

После подтверждения данных параметров нажатием кнопки ОК откроется окно с предложением сформировать ChoiceList(список возможных вариантов итога экспертизы).

(2).Составление списка Choice List.ВChoiceListможно внести весь список вариантов оценок набораn,s,v,liquiditynotenoughлибо его часть, а затем пополнить в режиме редактирования. Подтвердив введенный список нажатием кнопки ОК, можно приступить к выполнению следующего этапа.

(3).Описание входных и внутренних переменных и констант. В менюRuleвыберите опциюVariableListи в открывшемся окне нажмите кнопкуNewVariable, после чего вы окажетесь в окне описания переменной. Опишем, например, переменную Х1. В разделеName: напишем Х1, а в разделеPromt: расшифруем какmoney. Так как по умолчанию задана числовая переменная, какая нам и нужна, то можно описание этой переменной завершить нажатием кнопки ОК и пристурить к описанию следующей. Точно по этой схеме опишите перменныеX2,X3,X4,C1,C2,C3. Несколько иначе описываются константы, если они используются. Константы описываются как перменные с фиксированными значениями, их значения фиксируются в разделеInitialize. Для переменных полезно установить режимDisplayatend, что позволит наблюдать их значения после завершения консультации. Проделайте эту работу для всех переменных и констант (если они есть).

(4). Описание квалификаторов.

Откроем меню Ruleи выберем опциюQualifierList. Откроется окно для создания и редактирования квалификаторов. Опишем квалификаторU1 со значениямиn,s,v. Последовательность действий при описании каждого квалификатора такова:NewQual.=> Qualifier: U1 => Value: n => Add => s => Add => v => Add => OK. Эту последовательность действий повторим для квалификатораU2 со значениямиn,s,vи для квалификатораU3 со значениямиn,d. После завершения ввода последнего квалификатора подтвердим нажатием кнопки ОК весь список квалификаторов.

Приступим теперь к определению нечетких значений квалификаторов. На следующем ниже рисунке изображены функции принадлежности, описывающие нечеткий смысл вербальных значений квалификаторов U1,U2,U3 (смысл, вообще говоря, зависит от отрасли и вида деятельности предприятия, поэтому вы можете определить его так, как вам он представляется).

В ExsysPro16 функции принадлежности имеют кусочно-линейный вид и описываются, начиная от исходной точки шкалы, отрезками со степенью уверенности (Confidence) или равной 1, или равной 0. Так значения квалификатораU1 со степенью уверенности равной 1 или равной 0, согласно рисунку, будут описаны так:

n: [0 -0.05] - Confidence=1, [0.2 - 5.0] - Confidence=0;

s: [0 - 0.05] - Confidence=0, [0.2 - 0.5] - Confidence=1, [1.0 - 5.0] - Confidence=0;

v: [0 - 0.5] -Confidence=0, [1.0 - 5.0] -Confidence=1.

Откроем в нашей системе QualifierList, выберем в открывшемся окне квалификаторU1 и в правом нижнем углу щелкнем в окошкеFuzzy. Перед вами появится окноFuzzyParameters. Установите в немVariable:C1 иValue:n. Далее, в окнах, расположенных на левом и правом нижних концах дмаграммы, установите слева значение 0, а справа - 5.0. Это позволит наблюдать процесс построения функции принадлежности.

Заполните для описания вербального значения nследующую таблицу, описывающую с помощью отрезков функцию принадлежности вербального значенияn:

H Pos

Conf.

0.0

1

0.05

1

0.2

0

5.0

0

После заполнения таблицы нажатием кнопки Updateподтвердите завершение описания функции принадлежности вербального значенияn.

Далее, не меняя установку Variable:C1, установитеValue:sи заполните для вербального значенияsтаблицу:

H Pos

Conf.

0

0

0.05

0

0.2

1

0.5

1

1.0

0

5.0

0

После заполнения таблицы нажатием кнопки Updateподтвердите завершение описания функции принадлежности вербального значенияs.

Далее, не меняя установку Variable:C1, установитеValue:vи заполните для вербального значенияvтаблицу:

H Pos

Conf.

0

0

0.5

0

1.0

1

5.0

1

После заполнения таблицы нажатием кнопки Updateподтвердите завершение описания функции принадлежности вербального значенияv, а нажатием кнопки ОК завершите описание нечетких значений квалификатораU1. Выполните ту же работу для квалификаторовU2 иU3.

(5). Построение правил.

Создадим первое правило, вычисляющее значения переменных С1,С2,С3. В менюRuleвыберем опциюAddRule.

Для формирования IF-части правилав открывшемся окне нажатием кнопкиVar./Mathоткроем окно с предложением вввести формулу. Чтобы это сделать, надо получить доступ к переменным, что достигается нажатием кнопкиDisplayVariables. Выделим в открывшемся окне переменную Х4, нажмем кнопку ОК. В рельтате этого имя переменной Х4 окажется включенным в будущую формулу. Продолжим задание условия до Х4>0 и завершим нажатием кнопки ОК. Этим будет закончено формрованиеIF-части первого правила.

Для формирования THEN-части правилапереключим режим работы сIFнаTHEN.

Построение формул для С1,С2,С3.Нажатием кнопкиVar./Mathоткроем окно с предложением вввести формулу, нажатием кнопкиDisplayVariablesоткроем список переменных, выделим в нем переменную С1 и нажатием кнопки ОК занесем ее в левую часть будущей формулы. Далее нажатием кнопкиDisplayVariablesбудем открывать список переменных, выделяя в нем переменные Х1, Х4 и связывая их операцией / до получения формулы С1 =X1/X4. После этого нажатием кнопки ОК занесем ее в правую часть будущей формулы. Построение формул для С2 и С3 осуществляется так, как это описано для С1. После этого нажатием кнопки ОК в окне правила завершим его построение.

Построение второго правиланесколько отличается от первого. Снова в менюRuleвыберем опциюAddRule.Для формирования IF-части правилав открывшемся окне нажатием кнопкиQualifierполучим доступ к специальному окну для выбора квалификатора и его значения. Выделим квалификаторU3, его значениеnи нажатием кнопки ОК включим вIF-часть формируемой продукции.

Для формирования THEN-части продукциипереключим режим работы сIFнаTHENи нажатием кнопкиChoiceоткроем окно для формирования рекомендации. Выделив оценкуliquiditynotenoughи выбрав степень уверенности, нажатием кнопки ОК включим его вTHEN-часть продукции. Подтвердим завершение формированияTHEN-части продукции и правила нажатием кнопок ОК. Сформированное нами правило (его можно просмотреть или отредактировать в режимеRule=>EditRule) будет иметь следующий вид:

IF:

U3 n

THEN:

liquidity not enough Confidence=1

Построение третьего правила. Снова в менюRule выберем опцию Add Rule. Для формирования IF-части правилав открывшемся окне нажатием кнопкиQualifierполучим доступ к окну выбора квалификатора и его значения. Выделим квалификаторU3, его значениеdи нажатием кнопки ОК включим вIF-часть формируемой продукции. Повторим то же самое для квалификаторовU1 со значениемnиU2 со значениемn.Так как такой набор значенийU1 иU2, согласно таблице, оценивается какn(низкий), то при обращении кChoiceпри формированииTHEN-части выберем значение общей оценки ликвидностиn. Степень уверенностиConfidenceследует устанавливать согласно своим представлениям.

Правила для остальных ситуаций таблицысоздаются аналогично третьему правилу.

Убедиться в том, что у вас все получается, можно уже после создания второго правила. Для этого выберите в менюOptionsопциюRunи задайте по запросам системы значения входных перменных, соответствующие именно тем условиям, для которых создано второе правило.

(6) Завершение работы:

а)после создания всех правил проверьте работу системы при различных входных данных, обеспечивающих срабатывание каждого из правил;

б)предъявите работу преподавателю;

в)удалите созданную вами систему (если вы ее сохранили), для чего открыть папкуC: \Exsys16 \Proи удалить в ней все файлы с именем вашей системы (т.е.liquid.* ).

Возврат

Лабораторная работа №8. Освоение средств дизайна интерфейса ЭС.

Интерфейс, предлагаемый приложением ProDemo, позволяет проверить работоспособность построенной ЭС, но не отличается удобством и эстетическим оформлением. ПриложениеExDesign, входящее в составExsysPro16, работает на основе принципов объектного проектирования и позволяет создавать удобный и эстетично оформленный интерфейс. Используем для освоения этого инструментария ЭСchoice1, созданную при выполнении лабораторной работы №5 (см. на сервере).

Итак, запустим это приложение: Пуск => ExsysPro16 =>ExDesign. В менюFileвыберем опциюNew. В открывшемся окне введем имя файлаchoice1.scr, в котором будут описаны все экраны, используемые системойchoice1 (важно, чтобы имя файла экранов совпадало с именем системы, иначе они друг друга не "найдут").

После подтверждения введенного имени файла нажатием кнопки ОК ExDesignпотребует ввести идентификатор первого из создаваемых экранов. Если вы предполагаете создать экран для квалификатора, то следует иметь в виду, что квалификаторы в спискеQulifierListпронумерованы. Поэтому для первого квалификатора следует ввести ~Q1 в качестве идентификатора его экрана. Для переменной следует ввести ~[name] в качестве идентификатора ее экрана, гдеname- имя переменной, записанное вVariableList.

После подтверждения введенного идентификатора нажатием кнопки ОК появится пустой экран. На первом шаге целесообразно определиться с цветом самого экрана. Откройте меню Windows, выберите опциюChangeAttbutesи в открывшемся окне выберите нужный вам цвет.

Предположим теперь, что мы создаем экран ~Q1 для (единственного в нашей системе) квалификатораum("наличие ума"), имеющего три значенияv("важно"),g("желательно"),n("несущественно"). Откроем менюObject? выберем объектtextи разместим его в надлащем месте экрана (например, в верхней части). Двойным щечком откроем окно настройки этого объекта. В нем вы можете задать сам текст (например,nalichieumavagno?), размер и цвет шрифта, цвет фона (текстового поля). После подтверждения настройки нажетием кнопки ОК можно заняться следующим объектом.

Следующими объектами в нашем примере являются кнопки для выбора ответа значения квалификатора um. Откроем менюObjectи выберем объектpushbutton. Разместив его в надлежащем месте, двойным щечком откроем окно настройки этого объекта. В окошке :Thebutton'slabelзаменим надписьokнаv(либо наvagen). В окошке :ThereturnstringнапишемQ1 1 (первый символ указывает на то, что речь идет о квалификаторах, второй - номер квалификатора, третий - номер значения в том порядке, как они заданы в описании квалификатора; каждый очередной символ должен быть отделен от предыдущего пробелом). В окошкеReturnImmediatelyотметим, что реакция на нажатие кнопки должна быть немедленной. Нажатием кнопки ОК подтвердим завершение настройки объекта. Аналогичным образом создадим кнопки для выбора остальных двух значений нашего квалификатора, т.е. для значенийg(в этом случае в окошке :ThereturnstringнапишемQ1 2) иn(в этом случае в окошке :ThereturnstringнапишемQ1 3). После завершения создания всех объектов экрана его надо сохранить. Для этого достаточно нажать (на экране!) кнопку Х а затем кнопкуSave(нажатие кнопкиCancelбудет означать отказ от закрытия экрана, а нажатие кнопкиDiscardбудет означать отказ от самого экрана:discardозначает "выбросить"). Если теперь запустить ЭСchoice1.rul, то вы сможете убедиться в правильности сделанного (интерфейс переменных при этом останется прежним).

Приступим далее к созданию экрана для входной переменной minrost. В менюFileExDesignвыберем опциюOpenи откроем файлchoice1.scr. В открывшемся окне выделим **ADDNEWSCREEN** и нажмем кнопку ОК. В открывшемся в результате этого окне введем индентификатор ~[MINROST] для нового экрана. После подтверждения введенного идентификатора нажатием кнопки ОК нам будет предъявлен пустой экран белого цвета. Настройте цвет экрана и создайте текстовое поле с обращением к пользователю, как было описано выше для квалификатора. Для задания значения входной переменной создадим скроллер. Откроем менюObject, выберем объектslidebarи двойным щелчком откроем окно настройки. По умолчанию объект расположен вертикально. Переключите на горизонтальный, если вам нужен такой. При этом потребуется сжать его по высоте и растянуть по ширине. Далее, в окошке :Thereturnprefixнапишите [MINROST]. В окошкахStartValueиEndValueукажите наименьшее возможное и наибольшее возможное значение переменнойminrost(например, 150 и 190). В окошкеInitThumbPositionукажите исходное положение "движка" (например, 170). В окошкахDisplayValue, помеченныхXиY, укажите координатыXиYокошка, в котором будет показываться значение переменной, соответствующее текущему положению "движка". КоординатыXиYопределяются (Х - вправо,Y- вниз) от левого верхнего угла экрана. Сложность здесь в том, чтобы выбрать координатыXиYокошка так, чтобы оно не оказалось под каким-либо другим объектом экрана, иначе оно не будет видно. Сложность также состоит в том, что оно становится видно лишь в работе. Ориентиром при выборе координатXиYмогут служить координатыslidebar, указываемые в левой части окна настройки. Завершение настройки объектаslidebarподтвердите нажатием кнопки ОК. Для подтверждения выбранного положения "движка" вам понадобится кнопка ОК (pushbutton, настройка которой сводится к установке откликаReturnImmidiately). Используя текстовые объекты, вы также можете вынести на экран значения, соответствующие левому и правому крайним положениям "движка".

Задание.Создайте экраны для остальных переменных. Изучите возможности других объектов в менюObjectsи примените (путем редактирования), если сочтете более удобным или интересным. Изучите также возможности менюaCtionиAlignпо редактированию и совершенствованию созданных экранов. Изучите меню и содержаниеHelp.

Возврат

18

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]