Страницы: 1
RSS
Подсчет циклов в PQ или в PP
 
Всем привет!
На входе: Подготовка данных в PQ (500к строк), следом математические расчеты в PP

На выходе куча сводных таблиц на мерах и стандартном функционале.
Столкнулся с нетривиальной задачей(для меня).
Нужно подсчитать маленькие и большие циклы с учетом специфики горных работ. В примере подробно расписал.
Соответственно решение требуется либо в PQ, либо в PP. Для подсчета использовать только атрибут "№АС" (остальные вариативны)

За подсказки буду благодарен!
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Александр, по сути тут какой-то особой сложности нет. Но опишите подробно логику, как цикл определять?
К примеру, любая строка с непустым № АС - это малый цикл, начинаем с 1, Поворот с порожним ковшом с непустым № АС заканчивает малый цикл (это и необходимое, и достаточное условие), любая следующая строка с непустым № АС - начало следующего малого цикла.
Почему строки 35-40 не малые циклы?
Вы понимаете свои данные. А мы должны компу объяснить, как их понять.
Изменено: surkenny - 18.11.2022 10:00:59
 
Цитата
написал:
Вы понимаете свои данные. А мы должны компу объяснить, как их понять.
Абсолютно согласен!
1. Маленький цикл. Два условия
  • Завершен полный цикл ("Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом")
  • Обязательное наличие атрибута "№АС"
  • Исключения. Может быть ситуация, когда цикл "битый". Т.е. будет поворот и разгрузка. Такие циклы не считаем.
2. Большой цикл.
  • Начало цикла - появился атрибут "№АС"
  • Окончание цикл - появился атрибут "№АС" следующего цикла. Минус "пустоты", которые разделяют большие циклы, а не маленькие.
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Александр, у меня совсем времени нет:(
Надеюсь, в pq кто-то поможет. Не вижу тут супер сложностей.
Если нет, может, найду пол часика в ближайшую неделю.
Изменено: surkenny - 22.11.2022 22:56:07
 
Александр, у меня результат не совпал с Вашим. Либо у Вас некорректный пример, либо я не понял задачу.
Например, почему это малый цикл, если за малый цикл мы берем "Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом".

Или почему это не малый цикл?

Неаккуратный код
Изменено: whateverlover - 23.11.2022 01:02:17
 
Цитата
написал:
некорректный пример,
Да, моя ошибка - цикл№6 не прописал. Прошу прощение - исправил
Цитата
написал:
либо я не понял задачу
И это присутствует. Обратите внимание на #3, на условия.
Большой цикл - не "выкидываются" минусы
Маленькие циклы - учитываются "битые" циклы  
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Цикл 6 начинается с разгрузки и закончился черпанием? Я думал мал.цикл - это "Черпание - разгрузка". Или мал.цикл - это любые 4 действия? -_-
Что такое "битый"? Какая последовательность поворотов каких ковшей и разгрузок/загрузок считается битой?
 
Не имея какого либо другого признака, кроме АС и тех.операций на забое, нельзя будет выловить битую информацию, в нашем случае это начало малого цикла 4. Если только основная работе не выполняется ВСЕГДА в 4 такта. Если последнее утверждение истина, то тогда можно что-то придумать
 
Цитата
написал:
Цикл 6 начинается с разгрузки и закончился черпанием? Я думал мал.цикл - это "Черпание - разгрузка".
Да, я не обратил внимание, что последовательность нарушена. Это не будет циклом.
Цитата
написал:
Если только основная работе не выполняется ВСЕГДА в 4 такта.
определенно да. Как я писал выше, в таком порядке
Цитата
написал:
Завершен полный цикл ("Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом")
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
И в чем тогда мой изначальный вариант некорректен? С точки зрения малых циклов только, с большими то все понятно.
Это больше вопрос на уточнение для следующих помогающих. Чтобы когда surkenny пол часа выкроит, или кто-то другой, он их потратил на написание запроса, а не на уточнение деталей. Как должен выглядит конечный корректный вариант непонятно никому.
 
whateverlover, Я же выше ответил, у вашего решения:
1. Большие циклы - не выкидывает "пробелы" между большими циклами
2. Учитываются "битые" циклы. Т.е. в расчет должны браться только завершенные циклы  ("Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом")
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
В каком файле ВариантКакНадо правильный?

Маленький цикл на скриншоте правильно заполнен?
 
Цитата
Александр написал:
1. Большие циклы - не выкидывает "пробелы" между большими циклами
Это правится за секунду, я поэтому спрашиваю только про маленькие циклы.
Цитата
Александр написал:
2. Учитываются "битые" циклы. Т.е. в расчет должны браться только завершенные циклы  ("Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом")
Где в моем примере битый цикл обозначился как малый цикл? Конкретные строки. Вот в Вашем примере да, Вы сами себе противоречите, ставя 5-ый малый цикл там где два раза груженный ковш.
Один раз заполните корректно файл-пример с корректным результатом, а то два раза уже "ой это вот не так оказалось, и вот это не так", а это сбивает с толку.
Михаил Л, у Вас тоже 5-ый цикл стоит там, где два раза груженный ковш, а по условиям, он должным быть порожним после разгрузки.
Александу, конечно, виднее, но ведь может же быть, что экскаватор поднял, частично разгрузил, повернулся с груженным ковшом, выгрузил остатки, повернулся с порожним ковшом и это будет циклом. Но тогда в цикле будет 6 операций, а не 4.
Изменено: whateverlover - 24.11.2022 14:53:28
 
Цитата
whateverlover написал:
Михаил Л , у Вас тоже 5-ый цикл стоит там,
Я еще ничего не делал. Только скриншотил диапазон с файла в #6.
Вижу что нет однозначности.
На скриншоте 4 и 5 малые циклы разве правильно отмечены?
Изменено: Михаил Л - 24.11.2022 15:02:41
 
Так. Понял. Давайте еще раз. Взял рабочий пример. Раскидал вручную, как должно быть.
Вариативность событий может быть разной (файлы заполняются вручную) и может быть ошибка заполнения, но алгоритм такой:
1. Маленький цикл:
  • Завершен полный цикл ("Черпание"-"Поворот груж ковшом" - "Разгрузка" - "Поворот порож. ковшом")
  • Обязательное наличие атрибута "№АС"
  • Все остальные варианты - битые.
2. Большой цикл.
  • Начало цикла - появился атрибут "№АС"
  • Окончание цикл - появился атрибут "№АС" следующего цикла. Минус "пустоты", которые разделяют большие циклы, а не маленькие.
  • "Пустоты" между большими циклами - не обозначаются (это простои оборудования)
whateverlover, Спасибо за комментарии. Действительно, с моей стороны были допущены элементарные ошибки. Сейчас (надеюсь) все поправил.  
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Я уж было подумал "ну вот сейчас то я это решу точно"  :D
Прикладываю файл с потугами, но снова столкнулся с противоречием в примере:


Для меня эти малые циклы одинаковые, но одна позиция попала в большой цикл при том что у нее нет номера трактора этого (или что это такое), а в другом случае попала.
В остальном малые циклы вроде все проставились верно. (на большие пока можно не смотреть, потому что не доделал, столкнулся с противоречем описанным выше)
 
У меня большие циклы не полностью. Например, Большой цикл 5
 
whateverlover, Михаил Л, Малые циклы у вас считаются верно. Благодарю за это.
А вот по большим:
Михаил Л, 5 цикл правильно считается. whateverlover, Верно указал на мой промах. Стыдно уже. Но это единственный момент, где не верно.  
whateverlover, Михаил Л, Обратите, пожалуйста внимание, на большой цикл №7. "Пустоты" НЕ считаем только между большими циклами.

Поясню в чем суть. Мб так лучше понять будет.
Речь, тут, идет о циклах погрузки горной массы на разрезе. Экскаватор грузит Белазы
Большой цикл это время погрузки 1 Белаза.
Малый цикл это движение ковша экскаватора.
Кол-во ковшей в 1 Белаз может быть как 2, так и более 15. Тут от объема ковша и объема кузова белаза зависит.
Во время погрузки Белаза могут быть операции вне цикла ковша (малого). А машина еще стоит и грузится - это время мы учитываем.  
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
Страницы: 1
Наверх