Расчёт качества обслуживания (34, 61, HP-35s)

Это одна из основных формул теории массового обслуживания - первая формула Эрланга. Пучок приборов (например кассовых аппаратов) конечной ёмкости обслуживает требования от бесконечного количества источников нагрузки (например клиентов). Требования на облуживание соответствуют закону распределения вероятностей Пуассона.

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

           N
          A / N!
E (A) = ----------
 N        N
         ---  i
          \  A 
          / ----
         --- i!
         i=0

N - число линий в пучке, А - поступающая нагрузка в Эрлангах (среднее число занятых линий в час наибольшей нагрузки)

Программа считает по рекуррентной формуле:

                      AE(N-1)(A) 
E0(A) = 1 ; EN(A) = --------------
                    N + AE(N-1)(A)

Текст программы

     0     1     2     3     4     5     6     7     8     9
00   ПП    19    ПП    27    ИП0   -     Fx<0  02    ИП2   ИП4
10   С/П   ПП    19    ПП    27    FL0   13    БП    10    П1
20   XY    П0    0     П4    1     П2    В/О   КИП4  ИП2   ИП1
30   *     ^     ИП4   +     /     П2    В/О

Регистры:
П0 - содержит требуемую вероятность отказа или число приборов в пучке (зависит от задачи)
П1 - содежит поступающую нагрузку на пучёк приборов
П2 - регистр накопления результата
П4 - регистр счётчик приборов в пучке

Программа содержит две подпрограммы: подпрограмму ввода исходных данных (адр. 19..26) и подпрограмму расчета одной итерации формулы Эрланга (адр. 27..36). В первой задаче цикл вычислений (адр. 02..07) выполняется до тех пор пока полученная вероятность не окажется меньше либо равна заданной. Затем подготовка данных к выводу (адр. 08, 09) Во второй задаче количество приборов заранее известно, потому расчёт происходит в явном цикле (адр. 13..16).

После ввода программы БП 11
*******************
Задача: Известна нагрузка и ёмкость пучка приборов. Найти вероятность отказа в обслуживании.

Ввод данных: (Емкость пучка) [^] (нагрузка) [С/П]

Результат: (фактич. вероятность отказа)

Пример: E30(20) = 8.4574979e-3
*******************
Задача:
Известна нагрузка и максимальная вероятность отказа.
Определить необходимое количество приборов в пучке

Ввод данных: [В/О] (требуемая вероятность отказа) [^] (нагрузка) [С/П]

Результат: (емкость пучка) [XY] (фактич. вероятность отказа)

Пример: EN(20)<= 0.02 Результат: N = 28 [XY] E28(20) = 1.87924e-2

Добавим аналогичную программу для HP-35s

        0        1        2        3        4        5        6        7        8        9
000           LBL A    RPN      ERLANG1  PSE      0        STO N    1        STO E    INPUT A
010  INPUT B  1        x<y?     GTO A021 XEQ A029 RCL B    x<y?     GTO A014 VIEW N   VIEW E
020  GTO A001 XEQ A029 RCL N    RCL B    x>y?     GTO A021 VIEW N   VIEW E   GTO A001 RCL A
030  RCL E    *        ENTER    ENTER    RCL N    1        +        STO N    +        /
040  STO E    RTN

Программа сначала запрашивает нагрузку в Эрлангах (A), а затем второй параметр (B). Если второй параметр больше или равен 1, то программа предполагает, что задано количество приборов (ёмкость пучка приборов) и определяет для него вероятность отказа. Если второй параметр меньше 1, то предполагается, что это максимально допустимая вероятность отказа и программа ищет для этой вероятности необходимое количество приборов.
В обоих случаях, в результате расчётов, программа сначала показывает количество приборов в пучке (N), а затем фактическую вероятность отказа (E)

Русский

Комментарии

Можно сравнить программирование на этих двух типах ПМК

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Ну, конечно, на HP35s удобнее писать "на борту". Один сдвиг адресации чего стоит

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Зато я от реализации ISG DSE в шоке. Это же надо было так сморозить задание условия окончания цикла.

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Да, МК61 в этом плане лучше будет :)

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Все одно, время этих калькуляторов с символьно-кодовым языком закончилось еще в 1990-х годах.

Да уж. Вожможности hp-35s всё же слишком скромные. Весьма не дотягивает до возможностей даже fx-5800P.

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Когда я покупал свой кальк, то долго колебался между 5800 и 35s. Последний перевесил из-за RPN и классического дизайна.

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

У меня теперь есть оба, но по возможностям и надёжности клавиатуры 5800 далеко впереди. Поскольку у меня есть теперь оба устройства, могу считать своё мнение приближенно объективным :). Единственная слабость 5800 против 35-го - это откидывающаяся крышка, склонная обломаться. Но если руки не кривые - всегда можно приладить на место.

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Если бы ещё была возможность программы скидывать с 5800 на комп и обратно - цены бы не было кальку.

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Для этого надо сделать две вещи:
- устройство сопряжения с ПК;
- программу связи с ПК по UART.
Протокол можно выяснить с помощью монитора COM порта. В принципе не так уж сложно, но времени на бесплатный труд у меня сейчас нет.

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Я не так давно купил себе эту замечательную штуку. Он прикидывается аутентичным устройством и работает с оригинальным Saleae logic analyser софтом.

Вот засниффил МК-161 SPI:

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Логический анализатор-хорошо, а цифровой осциллограф - ещё лучше.

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Почему-то перестали работать теги нижних индексов при отображении рекуррентной формулы. Это только к меня такая проблема?

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Обратите внимание, для программ надо использовать <pre lang="text"> чтобы внутри можно было бы использовать знаки "больше" и "меньше".