Практический пример применения нелинейного метода

Практический пример применения нелинейного метода

Практический пример применения нелинейного метода начисления амортизации

Ст. 259 НК РФ предлагает 2 варианта определения износа. Выбор того или иного варианта требуется прописать в учетной политике компании. Рассматриваемый в этой статье вариант характеризуется вычислением износа по сформированной на основании срока полезного использования группе, а не по каждому инвентарному номеру.

При этом его нельзя применять к объектам из 8, 9 и 10-й групп по:

  • зданиям;
  • НМА;
  • сооружениям;
  • передаточным устройствам;
  • объектам, используемым при поиске углеводородного сырья на новом морском месторождении.

Принадлежность к той или иной категории определяется на основании п. 3 ст. 258 НК РФ и Постановления Правительства РФ от 01.01.2002 № 1 «О Классификации основных средств, включаемых в амортизационные группы».

Этот вариант вычисления износа также позволяет использовать амортизационную премию для минимизации первоначальной стоимости.

Основные формулы, необходимые для расчета амортизации

  • Износ за 1 месяц = Суммарный баланс по амортизационной группе * норму амортизации (п. 4 ст. 259.2 НК РФ). Суммарный баланс (далее СБ) — остаточная стоимость, имеет тенденцию:
    • Возрастать — при постановке на учет новых объектов; при модернизации, достройке и дооборудовании (п. 3 ст. 259.2 НК РФ).
    • Стремиться к нулю — при выбытии объекта (п. 10 ст. 259.2 НК РФ); уменьшении первоначальной стоимости (п. 3 ст. 259.2 НК РФ); при начислении амортизации (п. 4 ст. 259.2 НК РФ).

    Остаточная стоимость = Первоначальная (восстановленная) стоимость * (1-0,01 * на норму амортизации)ª, где a — это количество полных месяцев начисления износа по основному средству (п. 1 ст. 257 НК РФ).

    Норму амортизации определяйте по амортизационной группе :

    ВАЖНО! Амортизацию ОС можно начислять с учетом повышающего коэффициента. В этом случае срок полезного использования актива уменьшается. Одновременно к норме амортизации можно применять только один повышающий коэффициент.

    Если у вас есть доступ к КонсультантПлюс, проверьте правильно ли вы рассчитали амортизацию при нелинейном методе. Если доступа нет, получите пробный онлайн-доступ к правовой системе бесплатно.

    Пример применения нелинейного метода

    1. Компания закупила 13 марта 2 транспортных средства (далее ТС).

    Период эксплуатации ТС — 60 месяцев.

    Первоначальная стоимость (далее ПС) автомобиля — 450 000 за одно ТС.

    Алгоритм действий для расчета за апрель:

    • Смотрим амортизационную группу ТС: это группа 3.
    • Норма амортизации по ней: 5,6. СБ по 3-й группе на 1 апреля: 450 000 + 450 000 = 900 000.
    • Износ по 3-й группе за апрель: 900 000 * 5,6/100 = 50 400.
    1. Компания приобрела 15 апреля 3 компьютера.

    Период эксплуатации компьютеров — 36 месяцев.

    ПС компьютеров — 55 000 рублей за каждый

    Алгоритм действий для расчета за май:

    • Смотрим амортизационную группу компьютеров: это группа 2.
    • Норма амортизации компьютеров: 8,8.
    • СБ по 2-й группе на 1 мая: 55 000 + 55 000 + 55 000 = 165 000.
    • СБ по 3-й группе на 1 мая: 900 000 – 50 400 = 849 600.
    • Износ по 2-й группе за май: 165 000 * 8,8/100 = 14 520.
    • Износ по 3-й группе за май: 849 600 * 5,6/100 = 47 578.
    1. В мае компания стала собственником небольшого помещения складского типа, находящегося в туристско-рекреационной зоне. Кроме того, 30 мая одно из ТС было снято с учета в ГИБДД.

    Период эксплуатации здания — 240 месяцев.

    ПС здания — 1 500 000.

    По учетной политике компании повышающий коэффициент — 1,5 (подп. 3 п. 1 ст. 259.3 НК РФ).

    Алгоритм действий для расчета за июнь:

    • Смотрим амортизационную группу здания: 7-я группа.
    • Норму амортизации здания: 1,95 (норма по НК РФ 1,3, увеличенная на повышающий коэффициент 1,5).
    • СБ по 2-й группе на 1 июня: (55 000 + 55 000 + 55 000) – 14 520= 150 480;
    • Остаточная стоимость выбывшего ТС 3-й амортизационной группы: 450 000 * (1-0,01 * 5,6)¹ = 424 800.
    • СБ по 3-й группе на 1 июня: 849 600 – 47 578 – 424 800 = 377 222.
    • СБ по 7-й группе на 1 июня: 1 500 000.
    • Износ по 2-й группе за июнь: 150 480 * 8,8/100 = 13 242.
    • Износ по 3-й группе за июнь: 424 800 * 5,6/100 = 23 789.
    • Износ по 7-й группе за июнь: 1 500 000 * 1,95/100 = 29 250.
    1. В июне произведена модернизация здания — 120 000, приобретено одно ТС стоимостью 550 000, продан один компьютер.

    Алгоритм действий для расчета за июль:

    • Остаточная стоимость выбывшего компьютера 2-й группы: 55 000 * (1-0,01 * 8,8)² = 45 746.
    • СБ по 2-й группе: 150 480 – 13 242 – 45 746 = 91 492.
    • СБ по 3-й группе: 377 222 – 23 789 + 550 000 = 903 433.
    • СБ по 7-й группе с учетом модернизации: 1 500 000 – 29 250 + 120 000 = 1 590 750.
    • Износ за июль по 2-й группе: 91 492 * 8,8/100 = 8 051.
    • Износ за июль по 3-й группе: 903 433 *5,6 /100 = 50 592.
    • Износ за июль по 7-й группе: 1 590 750 * 1,5 * 1,3/100 = 31 020.

    Как отразить амотризацию в декларации по налогу на прибыль, разъяснили эксперты КонсультантПлюс. Получите пробный доступ и переходите к Готовому решению бесплатно.

    Итоги

    Нелинейный метод начисления амортизации носит более упрощенный характер расчета, т.к. износ рассчитывается по группе объектов, а не отдельно по каждому основному средству. Однако есть случаи, когда нелинейный метод применить невозможно.

    Практический пример применения нелинейного метода

    Нелинейными называются цепи, в состав которых входит хотя бы один нелинейный элемент.

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

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

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

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

    В зависимости от вида характеристик различают нелинейные элементы с симметричными и несимметричными характеристиками. Симметричной называется характеристика, не зависящая от направления определяющих ее величин, т.е. имеющая симметрию относительно начала системы координат: . Для несимметричной характеристики это условие не выполняется, т.е. . Наличие у нелинейного элемента симметричной характеристики позволяет в целом ряде случаев упростить анализ схемы, осуществляя его в пределах одного квадранта.

    По типу характеристики можно также разделить все нелинейные элементы на элементы с однозначной и неоднозначной характеристиками. Однозначной называется характеристика , у которой каждому значению х соответствует единственное значение y и наоборот. В случае неоднозначной характеристики каким-то значениям х может соответствовать два или более значения y или наоборот. У нелинейных резисторов неоднозначность характеристики обычно связана с наличием падающего участка, для которого , а у нелинейных индуктивных и емкостных элементов – с гистерезисом.

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

    Нелинейные электрические цепи постоянного тока

    Нелинейные свойства таких цепей определяет наличие в них нелинейных резисторов.

    В связи с отсутствием у нелинейных резисторов прямой пропорциональности между напряжением и током их нельзя охарактеризовать одним параметром (одним значением ). Соотношение между этими величинами в общем случае зависит не только от их мгновенных значений, но и от производных и интегралов по времени.

    Параметры нелинейных резисторов

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

    Если нелинейный элемент является безынерционным, то он характеризуется первыми двумя из перечисленных параметров.

    Статическое сопротивление равно отношению напряжения на резистивном элементе к протекающему через него току. В частности для точки 1 ВАХ на рис. 1

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

    Следует отметить, что у неуправляемого нелинейного резистора всегда, а может принимать и отрицательные значения (участок 2-3 ВАХ на рис. 1).

    В случае инерционного нелинейного резистора вводится понятие динамического сопротивления

    определяемого по динамической ВАХ. В зависимости от скорости изменения переменной, например тока, может меняться не только величина, но и знак .

    Методы расчета нелинейных электрических цепей постоянного тока

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

    Общих методов расчета нелинейных цепей не существует. Известные приемы и способы имеют различные возможности и области применения. В общем случае при анализе нелинейной цепи описывающая ее система нелинейных уравнений может быть решена следующими методами:

    • графическими;
    • аналитическими;
    • графо-аналитическими;
    • итерационными.

    Графические методы расчета

    При использовании этих методов задача решается путем графических построений на плоскости. При этом характеристики всех ветвей цепи следует записать в функции одного общего аргумента. Благодаря этому система уравнений сводится к одному нелинейному уравнению с одним неизвестным. Формально при расчете различают цепи с последовательным, параллельным и смешанным соединениями.

    а) Цепи с последовательным соединением резистивных элементов.

    При последовательном соединении нелинейных резисторов в качестве общего аргумента принимается ток, протекающий через последовательно соединенные элементы. Расчет проводится в следующей последовательности. По заданным ВАХ отдельных резисторов в системе декартовых координат строится результирующая зависимость . Затем на оси напряжений откладывается точка, соответствующая в выбранном масштабе заданной величине напряжения на входе цепи, из которой восстанавливается перпендикуляр до пересечения с зависимостью . Из точки пересечения перпендикуляра с кривой опускается ортогональ на ось токов – полученная точка соответствует искомому току в цепи, по найденному значению которого с использованием зависимостей определяются напряжения на отдельных резистивных элементах.

    Применение указанной методики иллюстрируют графические построения на рис. 2,б, соответствующие цепи на рис. 2,а.

    Графическое решение для последовательной нелинейной цепи с двумя резистивными элементами может быть проведено и другим методом – методом пересечений. В этом случае один из нелинейных резисторов, например, с ВАХ на рис.2,а, считается внутренним сопротивлением источника с ЭДС Е, а другой – нагрузкой. Тогда на основании соотношения точка а (см. рис. 3) пересечения кривых и определяет режим работы цепи. Кривая строится путем вычитания абсцисс ВАХ из ЭДС Е для различных значений тока.

    Использование данного метода наиболее рационально при последовательном соединении линейного и нелинейного резисторов. В этом случае линейный резистор принимается за внутреннее сопротивление источника, и линейная ВАХ последнего строится по двум точкам.

    б) Цепи с параллельным соединением резистивных элементов.

    При параллельном соединении нелинейных резисторов в качестве общего аргумента принимается напряжение, приложенное к параллельно соединенным элементам. Расчет проводится в следующей последовательности. По заданным ВАХ отдельных резисторов в системе декартовых координат строится результирующая зависимость . Затем на оси токов откладывается точка, соответствующая в выбранном масштабе заданной величине тока источника на входе цепи (при наличии на входе цепи источника напряжения задача решается сразу путем восстановления перпендикуляра из точки, соответствующей заданному напряжению источника, до пересечения с ВАХ ), из которой восстанавливается перпендикуляр до пересечения с зависимостью . Из точки пересечения перпендикуляра с кривой опускается ортогональ на ось напряжений – полученная точка соответствует напряжению на нелинейных резисторах, по найденному значению которого с использованием зависимостей определяются токи в ветвях с отдельными резистивными элементами.

    Использование данной методики иллюстрируют графические построения на рис. 4,б, соответствующие цепи на рис. 4,а.

    в) Цепи с последовательно-параллельным (смешанным) соединением резистивных элементов.

    1. Расчет таких цепей производится в следующей последовательности:

    Исходная схема сводится к цепи с последовательным соединением резисторов, для чего строится результирующая ВАХ параллельно соединенных элементов, как это показано в пункте б).

    2. Проводится расчет полученной схемы с последовательным соединением резистивных элементов (см. пункт а), на основании которого затем определяются токи в исходных параллельных ветвях.

    Метод двух узлов

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

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

    Определяется, в какой точке графически реализуется первый закон Кирхгофа . Соответствующие данной точке токи являются решением задачи.

    Метод двух узлов может быть реализован и в другом варианте, отличающемся от изложенного выше меньшим числом графических построений.

    В качестве примера рассмотрим цепь на рис. 5. Для нее выражаем напряжения на резистивных элементах в функции :

    ;(1)
    ;(2)
    .(3)

    Далее задаемся током, протекающим через один из резисторов, например во второй ветви , и рассчитываем , а затем по с использованием (1) и (3) находим и и по зависимостям и — соответствующие им токи и и т.д. Результаты вычислений сводим в табл. 1, в последней колонке которой определяем сумму токов

    Таблица 1. Таблица результатов расчета методом двух узлов

    Алгебраическая сумма токов в соответствии с первым законом Кирхгофа должна равнять нулю, поэтому получающаяся в последней колонке табл. 1 величина указывает, каким значением следует задаваться на следующем шаге.

    В осях строим кривую зависимости и по точке ее пересечения с осью напряжений определяем напряжение между точками m и n. Для найденного значения по (1)…(3) рассчитываем напряжения на резисторах, после чего по заданным зависимостям определяем токи в ветвях схемы.

    1. Основы теории цепей: Учеб. для вузов /Г.В.Зевеке, П.А.Ионкин, А.В.Нетушил, С.В.Страхов. –5-е изд., перераб. –М.: Энергоатомиздат, 1989. -528с.
    2. Бессонов Л.А. Теоретические основы электротехники: Электрические цепи. Учеб. для студентов электротехнических, энергетических и приборостроительных специальностей вузов. –7-е изд., перераб. и доп. –М.: Высш. шк., 1978. –528с.
    3. Теоретические основы электротехники. Учеб. для вузов. В трех т. Под общ. ред. К.М.Поливанова. Т.2. Жуховицкий Б.Я., Негневицкий И.Б. Линейные электрические цепи (продолжение). Нелинейные цепи. –М.: Энергия- 1972. –200с.

    Контрольные вопросы и задачи

    1. Почему метод наложения неприменим к нелинейным цепям?
    2. Какие параметры характеризуют нелинейный резистор?
    3. Почему статическое сопротивление всегда больше нуля, а дифференциальное и динамическое могут иметь любой знак?
    4. Какие методы используют для анализа нелинейных резистивных цепей постоянного тока?
    5. Какая последовательность расчета графическим методом нелинейной цепи с последовательным соединением резисторов?
    6. Какая последовательность расчета графическим методом нелинейной цепи с параллельным соединением резисторов?
    7. Какой алгоритм анализа цепи со смешанным соединением нелинейных резисторов?
    8. В чем сущность метода двух узлов?
    9. В цепи на рис. 2,а ВАХ нелинейных резисторов и , где напряжение – в вольтах, а ток – в амперах; . Графическим методом определить напряжения на резисторах.

    Применение стратегии нелинейного способа обучения в общеобразовательном учреждении на примере обучения английскому языку

    «Современная профориентация педагогов
    и родителей, перспективы рынка труда
    и особенности личности подростка»

    Свидетельство и скидка на обучение каждому участнику

    ПРИМЕНЕНИЕ СТРАТЕГИИ НЕЛИНЕЙНОГО СПОСОБА ОБУЧЕНИЯ

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

    (из опыта обучения английскому языку)

    Эффективен не тот, кто просто знает, а тот,

    у кого сформированы навыки приобретения и применения знаний

    Образование это объём систематизированных знаний, умений, навыков, способов мышления, которыми овладел обучаемый. Главный критерий образованности — системность знаний и системность мышления, проявляющиеся в том, что человек способен самостоятельно восстанавливать недостающие звенья в системе знаний с помощью логических рассуждений. В моей методике обучения, это реализуется через дидактическое проектирование совместной педагогической деятельности учителя и ученика. Цель этой деятельности — развитие мышления и формирование интеллекта учащихся в процессе развивающего обучения. Акцент, при этом, смещается со знания отдельных фактов (которое бывает фиктивным и временным) на понимание, умение думать и рассуждать, анализировать и синтезировать, на развитие личностных качеств обучаемого — его памяти, внимания, воображения, мышления, речи и т.д. Под интеллектом в данной статье подразумевается способность и умение человека профессионально, нестандартно, эффективно мыслить и действовать.

    Школа жизни — лучшая школа и воспитания и обучения. Считаю, что целесообразно применять в практике обучения витагенную педагогику, базирующуюся на использовании жизненного опыта учащихся, т.к. она способствует развитию мыслительных способностей и интеллекта. Начинать обучение иностранному языку рационально с тех понятий, какие уже знакомы учащимся по другим учебным дисциплинам, а учебный процесс строить на ситуативной, игровой основе, заполнять деятельностью, имитирующей реальную действительность и тем самым вписать учебный процесс в контекст жизнедеятельности учащихся. Мышление, в процессе такого обучения, развивается от эмоционально-образного к абстрактно-логическому. Целью обучения иностранному языку является достижение учащимися минимального уровня коммуникативной компетенции, т.е. овладение обучаемыми способностью осуществлять непосредственное общение с носителями языка в наиболее распространённых ситуациях повседневного общения.

    В современной педагогике выделяют 2 стратегии обучения. Первая — объём информации следует один за другим, прибавляясь к развивающейся структуре — линейный способ. Вторая – выделение основных смысловых пунктов — основных (понятийных) узлов информации, которые будут обсуждаться. Далее общий обзор, затем детальные обзоры и, наконец, подача детальных подструктур, — т.е. стратегия нелинейного способа обучения [3, 9] . На первый взгляд, второй способ обучения кажется сложным, однако освоение концепции академика В.М. Монахова, изучение опыта применения её на практике в общеобразовательных учреждениях и ВУЗах, позволяет приблизиться к данной стратегии обучения. А втор технологии предлагает вместо тематического планирования научиться проектировать технологическую карту (ТК) и разрабатывать информационные карты урока (ИКУ).

    ИКУ подробно описывает содержание урока. Однако, в современных учебно-методических комплектах (УМК), например, «Книга для учителя» в УМК по английскому языку, методистами детально описаны сценарии каждого урока и календарно-тематическое поурочное планирование. Разрабатывать ИКУ, при применении таких информативных УМК, полагаю не рациональным. Достаточно составить развёрнутый план-проект занятий (уроков) на всю учебную тему с разделами, определёнными пед.технологией автора. При этом, подготовка к одному конкретному уроку фактически не существует, имеет место подготовка к преподаванию учебной темы в целом. В плане-проекте занятий формулировать «темы урока» не целесообразно. Каждое занятие (урок) посвящено достижению определённых задач, а под словом «тема» понимается учебная тема, общая для всех занятий (уроков).

    1.Организация проведения урока (занятия). В предлагаемой мною методике урок представляет собой «ступеньку познания» — усвоение одного учебного материала и базу для изучения другого. Тем самым урок всегда является частью системы уроков сначала в теме, затем цикле (разделе), курсе, программе. В конечном счёте – это «миг», в процессе изучения учебного цикла. Поэтому важно при планировании изучения цикла или раздела определять их сквозные идеи и место каждого урока в раскрытии этих идей. При проектировании целостного восприятия учебных тем дидактический стандарт является основополагающим.

    В своей работе использую стратегию нелинейного способа обучения. Введение микроцелей напоминает «плетение паутины» и регулируется учителем по мере пошагового усвоения учебного материала учащимися по каждой микроцели. Учащиеся чётко видят главную цель цикла через призму микроцелей, и пути её достижения (см. ТК и ИКУ). Эти пути «выверяются» учителем, ориентируясь на контингент обучаемых, объективные и субъективные условия обучения.

    hello_html_m4e0024b5.png

    Отбор содержания учебного материала определяется с учётом возможностей, потребностей, мотивов и интересов учащихся составляющих данный класс, его отдельные группы. Обучаемым предлагается осознать и понять, усвоить и запомнить научные знания и представления, личностно-значимые и нравственные ценности. Желательно, чтобы ученик не только «глотал», но и «разжёвывал» информацию. Познавая мир, учащийся создаёт в своём сознании смысловые структуры. Знание языка подразумевает наличие в сознании «схемы» соответствия его слов элементам уже имеющегося опыта. После этого происходит переход к пониманию познанного. Если произошло осознание, понятие языка, то в сознании обучаемого происходит усвоение и запоминание слов, смысловых значений, которые может создать изучаемый иностранный язык. Восприятие – не механический, а творческий процесс – это ассоциации, аналогии, извлекаемые из памяти. Чтобы запомнить, ученику всегда нужна зацепка, «узелок на память» и я стараюсь эти узелки завязать. На мой взгляд, искусство учителя проявляется в умении учить на занятиях (уроках).

    2. Изложение содержания учебного материала. Язык — средство общения и изучать его лучше общаясь. Обучаясь иностранному языку, учащиеся не должны бояться делать ошибки, в последующем они их исправят. На занятии (уроке) учащиеся знакомятся с новым материалом с конкретными явлениями и понятийными узлами. После общего обзора учебного цикла (темы), изложение учебного материала происходит в виде детальных подструктур (смыслов). В результате детальные подструктуры (смыслы) запоминаются, усваиваются учащимися, в ходе их неоднократных повторений — вырабатывается навык. Смысловое значение понятийного узла закрепляется после каждого занятия (урока) и «умножается», совершенствуется в ходе освоения (изучения) учебной темы (цикла). Составляющие последующего понятийного узла внедряются, базируясь на уже усвоенных смысловых структурах. Происходит осмысление и усвоение учебного материала, обобщение и систематизация изученного, способствующее развитию интеллекта.

    В ходе занятия (урока) практикуется изменение деятельности учащихся в процессе изучения английского языка.

    ОРИЕНТИРОВОЧНОЕ РАСПРЕДЕЛЕНИЕ ВРЕМЕНИ ЗАНЯТИЯ (УРОКА) ПО ВИДАМ ДЕЯТЕЛЬНОСТИ

    Прикладное применение задачи нелинейного программирования

    Доброго времени суток, Хабр! В свое время, будучи студентом младших курсов, я начал заниматься научно-исследовательской работой в области теории оптимизации и синтеза оптимальных нелинейных динамических систем. Примерно в то же время появилось желание популяризировать данную область, делиться своими наработками и мыслями с людьми. Подтверждением этому служит пара-тройка моих детских незрелых статей на Хабре. Тем не менее, на тот момент эта идея оказалась для меня непосильной. Возможно ввиду моей занятости, неопытности, неумения работать с критикой и советами или чего-то еще. Можно до бесконечности пытаться найти причину, но ситуацию это не изменит: я забросил эту идею на полку, где она благополучно лежала и пылилась до этого момента.

    Закончив специалитет и готовясь к защите кандидатской диссертации, я задался вполне логичным вопросом: «а что же дальше?» Имея за плечами опыт как обычной работы, так и исследовательской, я вновь вернулся к той самой идее, которая, казалось бы, должна была утонуть под толщей пыли. Но вернулся я к этой идее в более осознанной форме.

    Я решил заняться разработкой программного обеспечения, связанного с той отраслью, которой занимаюсь уже на протяжении 8 лет, и моими личными академическими пристрастиями, которые включают в себя методы оптимизации и машинное обучение.

    Ну что ж, всем заинтересовавшимся:

    Занимаясь реализацией программного обеспечения для своего диплома (и впоследствии диссертации), я подходил к этому вопросу «в лоб»: меня не волновало, насколько создаваемая система будет гибкой, как легко она будет модифицируема. Желание получить результат здесь и сейчас вкупе с неопытностью приводили к тому, что код постоянно приходилось переписывать, что, конечно же, не влияло положительно на профессиональное развитие. Уже сейчас я понимаю, что, как бы ни хотелось, нельзя сломя голову бросаться решать задачу. Надо вникнуть в ее суть, оценить имеющиеся знания, понять, чего недостает, сопоставить понятия предметной области классам, интерфейсам и абстракциям. Словом, нужно осознать имеющиеся резервы и грамотно подойти к проектированию архитектуры программного приложения.

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

    Определение подхода к разработке и формулировка основной задачи

    На Хабре есть большое количество статей, посвященных методологиям разработки ПО. Например, в этой достаточно понятно описаны основные подходы. Остановимся подробнее на каждом из них:

    1. «Waterfall Model» — не подходит по причине как минимум того, что четко определенных требований у меня нет, есть лишь набор идей, между которыми придется впоследствии наладить взаимодействие,
    2. «V-Model» — не подходит по той же причине,
    3. «Incremental Model» — более подходящая по сравнению с предыдущими модель, однако тут так же требуется подробная формализация
    4. «RAD Model» — модель, которая больше подходит команде опытных специалистов,
    5. «Agile Model» — отлично подходит по критерию отсутствия необходимости конкретизации требований, а также по гибкости в процессе разработки,
    6. «Iterative Model» — несмотря на то что в работе указана необходимость четкого определения целей, идейно такая модель кажется близкой (учитывая слова «Основная задача должна быть определена, но детали реализации могут эволюционировать с течением времени»),
    7. «Spiral Model» — направлена для реализации больших проектов, к которым вряд ли можно отнести предполагаемое ПО.

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

    Итак, в этой работе я расскажу:

    1. О задаче оптимизации и причинах ее выбора в качестве основополагающего объекта изучения,
    2. Об основных абстракциях и их реализациях, которые позволят использовать подход, основывающийся на решении прикладных задач путем сведения к задаче оптимизации,
    3. Об алгоритме K-Means, простейшем алгоритме Random Search и как заставить их дружить и работать на благо единой цели.

    Оптимизация

    Вследствие того что большую часть своей исследовательской практики я посвятил решениям задачи оптимизации, мне будет удобней оперировать именно с этой точки зрения.

    Обычно под решением задачи оптимизации, как бы это банально и косноязычно ни звучало, понимается поиск некоторого «оптимального» (с точки зрения условий задачи) объекта. Понятия «оптимальности» варьируются от одной предметной области к другой. Например, в задаче поиска минимума функции требуется найти точку, которой соответствует наименьшее значение целевой функции, в задача мета-оптимизации требуется определить параметры алгоритма, при которых он дает наиболее точный результат/наиболее быстро отрабатывает/дает наиболее стабильный результат, в задаче синтеза оптимального управления требуется синтезировать контроллер, позволяющий перевести объект в терминальное состояние за наименьшее время и т.д. Уверен, что каждый специалист сможет продолжить это список задачами, связанными с его профессиональной сферой.

    В математике, особое внимание уделяется задаче нелинейного программирования, к которой можно свести большое количество других прикладных задач. В общем случае, для постановки задачи нелинейного программирования требуется задать:

    • произвольную функцию (она выполняет роль некоторого критерия качества: для задач минимизации требуется найти вектор, которому соответствует наименьшее значение, для максимизации — наоборот),
    • набор ограничений, которые по сути определяют область допустимых значений аргумента оптимизируемой функции.

    Существует огромное количество алгоритмов решения этой задачи. Условно их можно разделить на две группы:

      аналитические алгоритмы:

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

    Используемые абстракции

    На основе приведенных ранее рассуждений мне кажется, что проще всего работать с двумя понятиями: преобразование и алгоритм. На них и остановимся подробнее.

    Преобразования (Transformations)

    Вследствие того что почти любую процедуру/функцию/алгоритм можно рассматривать как некоторое преобразование, будем оперировать с этим объектом как с одним из базовых.

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

    Остановимся на элементах поподробнее:

    • Неоднородное преобразование (Inhomogeneous Transformation) — самый общий вид преобразования, когда классы входного и выходного объекта могут быть различными,
    • Однородное преобразование (Homogeneous Transformation) — частный вид неоднородного преобразования, когда классы входного и выходного объекта одинаковые,
    • Векторная функция (Vector Function) — преобразование, которой трансформирует вектор, состоящий из элементов множества A, в другой вектор, состоящий из элементов того же множества,
    • Функция (Function) — аналогична векторной функции (за исключением того, что выходной элемент теперь является скаляром),
    • Метрика (Metric) — некоторое оценивающее преобразование, ставящее в соответствие объекту числовое значение.

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

    Алгоритм

    Я думаю, что естественным будет определить алгоритм как набор трех операций: инициализация, итеративная часть и терминация. На вход алгоритма подается некоторое задание (Task). В ходе инициализации происходит генерация начального состояния (State) алгоритма, которое модифицируется в ходе повторения итеративной части. В конце с помощью процедуры терминации из последнего состояния алгоритма создается объект, соответствующий типу R выходного параметра алгоритма.

    Таким образом, для создания конкретного алгоритма, необходимо будет переопределить три описанные ранее процедуры.

    K-Means VS. Random Search

    Что ж, первые два пункта обещанной программы освещены, пора переходить к третьему.

    Оба алгоритма хорошо описаны в различных источниках, поэтому я думаю, что у читателей не составит труда разобраться с ними. Вместо этого я проведу параллели к описанным ранее абстракциям.

    Кластеризатор, построенный с помощью алгоритма K-Means однозначно определяется своими центроидами. Сам алгоритм K-Means представляет собой постоянную замену текущих центроид новыми центроидами, рассчитанными как среднее значение всех векторов в отдельно взятых кластерах. Таким образом, в любой момент времени состояние алгоритма K-Means можно представить как набор векторов.

    Таким образом, кластеризатор может быть построен либо напрямую с помощью алгоритма K-Means, либо с помощью решения задачи поиска оптимального кластеризатора, обеспечивающего минимум суммарного расстояния точек кластеров от соответствующих центроид.

    Сгенерируем несколько синтетических наборов данных размерности 2, 3 и 5.

    И «прогоним» их через оба алгоритма построение кластеризатора. Полученные результаты сведем в таблицу:

    2D3D5D
    Clusterization Quality (via K-Means):90.3031885779647996.489471323055971761.3743823022821
    Clusterization Quality (via Optimization):87.4237002152841996.45524867682931760.993575500699

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

    Вместо послесловия

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

    Читайте также  Прописка на ЗОНЕ. Вхождение в «хату» . Зона.
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Adblock
detector