Снижают ли упражнения кровяное давление?
Высоким кровяным давлением, как правило, считается все, что выше 140/90 мм рт.ст., хотя обновленные рекомендации от Американской ассоциации сердца указывают 130/80 мм рт.ст. как нижний прог для диагностики гипертонии. Повышенное систолическое давление является фактором риска развития сердечно-сосудистых заболеваний, инсульта и деменции.
Хотя сильнодействующие препараты, как правило, являются выбором номер один при лечении гипертонии, они связаны с целым рядом проблемных побочных эффектов. Например, исследование, опубликованное в 2017 году показало, что гидрохлортиазид — один из самых популярных препаратов, применяемых во всем мире для лечения высокого кровяного давления — повышает риск развития рака кожи в семь раз.
Диуретики, также обычно прописываемые от высокого кровяного давления, имеют побочный эффект выщелачивания натрия и калия из организма, а поддержание здорового соотношения натрия и калия очень важно для нормализации артериального давления.
Калий также необходим для правильного движения мышц, в том числе сокращений сердца, и если его запас истощается, это может вызвать мышечные судороги и проблемы с сердцем. Итак, что вы можете сделать, кроме ежедневного приема таблеток? Хорошая новость: упражнения крайне полезны для нормализации артериального давления.
Повышение чувствительности к инсулину является первостепенной по значению стратегией лечения высокого кровяного давления
Есть много хорошо задокументированных связей между ожирением и повышенным артериальным давлением. Большинство людей с гипертонией имеют избыточный вес, и при таких обстоятельствах потеря веса связана с понижением кровяного давления.
Так что, если у вас высокое кровяное давление, первостепенная стратегия это восстановление вашей метаболической гибкости и сжигание жира в качестве основного топлива. Это позволит не только уменьшить резистентность к инсулину и оптимизировать вес, но и радикально снизить риск развития болезней сердца, рака и нейродегенеративных заболеваний.
Упражнения являются еще одной мощной терапией для лечения высокого кровяного давления
Отсутствие активности и кровяное давление также тесно связаны — так тесно, что упражнения на самом деле считаются первой линией лечения некоторыми авторитетами в сфере здравоохранения, например, Всемирной организацией здравоохранения.
Исследования показывают, что неактивные люди имеют на 30-50 процентов более высокий риск высокого кровяного давления, чем активные. Как отмечается в обзоре литературы об упражнениях и гипертонии, опубликованном в Australian Family Physician:
«Основанный на доказательствах анализ литературы Американского колледжа спортивной медицины указывает на то, что отдельные тренировки (острый эффект) снижают АД [артериальное давление] в среднем на 5-7 мм рт.ст. … [С]реднее снижение АД при регулярных упражнениях на выносливость для гипертоников без нормализации лекарствами в литературном обзоре составляло 7.4 / 5.8 мм рт.ст. …
В зависимости от степени нормализации АД пациента с помощью лекарственной терапии, регулярные аэробные упражнения значительно снижают АД эквивалентно 1 классу антигипертензивных препаратов (долгосрочный эффект) …
В целом, тренировка сопротивления оказывает благоприятное воздействие на АД в состоянии покоя, но снижение АД меньше, чем от программы аэробных упражнений…
Для большинства пациентов с гипертонией, физические упражнения вполне безопасны. Осторожность необходима после 50 лет, а также людям с сердечно-сосудистыми заболеваниями (ССЗ) (или с их высоким риском), а также этим пациентам рекомендуется пройти консультацию специалиста по лечебной физкультуре».
Попробуйте эти упражнения для снижения вашего кровяного давления
Чтобы повлиять на кровяное давление, нужно быть физически активным, что повышает частоту сердечных сокращений и заставляет ваше сердце биться чаще и увеличивать приток крови. Также это известно как сердечно-сосудистые или аэробные упражнения. Они включают в себя:
Оживленную ходьбу и бег — Исследование, опубликованное в 2013 году, обнаружило, что быстрая ходьба умеренной интенсивности производит сходное снижение артериального давления, как бег энергичной интенсивности. |
Плавание и водная аэробика — В одном исследовании, взрослые в возрасте 50 лет и старше, которые плавали 3-4 раза в неделю в течение 12 недель, улучшили работу сосудов и уменьшили систолическое артериальное давление в среднем на девять мм. |
Велосипед — исследование 2016 года показало, что люди в возрасте от 40 до 60, которые ездят на работу на велосипеде с меньшей вероятностью имеют высокое кровяное давление, высокий уровень холестерина и / или преддиабет. |
Тяжелая атлетика и упражнения на вес тела — исследование 2012 года, которое изучало мужчин среднего возраста с диагнозом высокого кровяного давления, которые ранее тренировались менее двух часов в неделю и не принимали антигипертензивные лекарства, показало, что после тренировки с весом в течение 45-60 минут (три подхода по 12 повторений для каждого из семи упражнений), систолическое артериальное давление снижалось в среднем на 22 мм рт.ст. и диастолическое — в среднем на 8 мм рт. |
Катание на лыжах |
Катание на коньках |
Гребля |
Танцы |
Такие виды спорта, как теннис и футбол |
Изометрическое упражнения для рук снижают кровяное давление у пожилых людей
Изометрические упражнения на руки также оказывают положительное влияние на артериальное давление у пожилых людей. Интересно, что систематический обзор 2013 года показал, что укрепление рук еще более эффективно для снижения систолического артериального давления, чем обычные программы тренировок на выносливость и силу.
Другие исследования также подтвердили преимущества упражнений на руки и ноги для кровяного давления. Как было отмечено в одном из них:
«Изометрические тренировки на сопротивление понижают [систолическое артериальное давление], [диастолическое артериальное давление] и среднее артериальное давление. Эффект более выраженный, чем при ранее отмеченных динамической аэробной или тренировке на сопротивление».
Повышение уровня окиси азота помогает снизить кровяное давление
Другое отличное упражнение это сброс окиси азота. Это и другие упражнения высокой интенсивности помогают нормализовать кровяное давление, вызывая выработку окиси азота в организме.
Оно включает в себя всего четыре движения — приседания, чередующееся поднятие рук, скачки с разведением рук и жим стоя – по 10 повторов, с четырьмя подходами каждого. В общей сложности это занимает всего три-четыре минуты. В идеале, вы можете делать эти упражнения три раза в день с перерывом в несколько часов.
Окись азота это растворимый газ, хранящийся в вашем эндотелии, который выступает в качестве важной сигнальной молекулы по всему телу. Наряду с поддержанием здоровой функции эндотелия, он также поддерживает здоровье сердца, помогая венам и артериям расширяться, что способствует здоровому потоку крови.
Окись азота также защищает здоровье митохондрий, хранилища энергии ваших клеток, ответственное за использование энергии для всех метаболических функций. Даже ваши скелетные мышцы, которые состоят из митохондрий всего на 1-2 процента, полагаются на них для подпитки ваших ежедневных движений.
Когда вы тренируетесь и ваши мышцы болят, это происходит потому, что у вас кончается кислород, что ваше тело компенсирует путем высвобождения оксида азота. Но вот вам малоизвестный секрет: когда вы тренируетесь, окись азота в кровеносных сосудах кончается всего за 90 секунд и начинается процесс ее воссоздания.
Вот почему тренировка основных групп мышц в течение всего 90 секунд может быть настолько эффективна. Вы также можете воспользоваться повышающей окись азота силой растительных нитратов, которые служат в качестве предшественников оксида азота. Руккола одержит наибольшее количество, но порошок ферментированной свеклы может иметь концентрацию нитратов на 500 процентов больше.
Сколько нужно тренироваться, чтобы нормализовать кровяное давление?
В качестве общей рекомендации, стремитесь к активности умеренной интенсивности по 30 минут в день, по крайней мере пять дней в неделю. Чем выше интенсивность тренировки, тем ниже должна быть частота, так что если вы тренируетесь более энергично, вы можете делать это только три дня в неделю.
В дополнение к этому, рекомендуется выполнять укрепляющие мышцы упражнение два раза в неделю. Если у вас высокое кровяное давление, скорее всего, вы недостаточно тренируетесь. Если это так, начните с несложных упражнений и медленно продвигайтесь вперед. Например, начните гулять несколько раз в неделю, и увеличивайте частоту, когда начнете чувствовать себя более уверенно.
С течением времени также усиливайте интенсивность и не забудьте добавить силовую тренировку (особенно если вы инсулинорезистентны), а также изометрическое упражнения на руки.
Я также рекомендую научиться дышать через нос во время тренировок, так как дыхание через рот может повысить частоту сердечных сокращений и кровяное давление, что иногда приводит к усталости и головокружению.
Другие изменения в образе жизни, которые помогут снизить кровяное давление
Помимо физических упражнений, вот несколько дополнительных советов, которые помогут снизить кровяное давление естественным путем.
Оптимизация уровня витамина D — Дефицит витамина D связан с артериальной жесткостью и гипертонией. Для оптимального здоровья, поддерживайте уровень витамина D от 60 до 80 нанограмм на миллилитр круглый год. |
Обратите внимание на соотношение натрия в калия — По словам доктора Лоуренса Аппель, ваша диета в целом, а не сокращение соли, является ключом к контролю гипертонии. По его мнению, большая часть уравнения это баланс минералов. Согласно Аппель, «Высокие уровни калия притупляют эффекты натрия. Если вы не можете уменьшить уровень натрия, добавка калия может помочь. Но лучше делать и то и другое». Действительно, поддержание надлежащего соотношения калия к натрию в вашем рационе очень важно, и гипертония является одним из многих побочных эффектов этого дисбаланса. Рацион из обработанной пищи практически гарантирует вам слишком большое количество натрия по отношению к калию. Переход от переработанных продуктов питания на цельные автоматически улучшит это отношение. |
Прерывистое и частичное голодание — Прерывистое голодание по моему мнению является одним из самых эффективных способов нормализации чувствительности к инсулину / лептину, которая является основной причиной гипертонии. |
Ходите босиком — Заземление также успокаивает симпатическую нервную систему, которая поддерживает вариабельность сердечного ритма. Это в свою очередь способствует гомеостазу, или балансу вегетативной нервной системы. Когда вы улучшаете вариабельность сердечного ритма, вы укрепляете свое тело и все его функции. |
Разберитесь со стрессом — Связь между стрессом и гипертонией хорошо задокументирована, но по-прежнему не получает внимания, которого она заслуживает. На самом деле было показано, что люди с заболеваниями сердца могут снизить риск последующих проблем с сердечно-сосудистой системой более чем на 70 процентов просто научившись управлять стрессом. Хорошей новостью является то, что существуют стратегии быстрой и эффективной трансформации подавленных, отрицательных эмоций и снятия стресса. Мой предпочитаемый метод – техники эмоциональные свободы (ТЭС), которым легко научиться и использовать их для высвобождения отрицательных эмоций. ТЭС сочетает в себе визуализацию со спокойным, расслабленным дыханием и одновременным применением нежного постукивания, которое «перепрограммирует» глубоко засевшие эмоциональные паттерны. |
Эфирные масла — Некоторые эфирные масла также могут быть полезны, в том числе лаванда, иланг-иланг, майоран, бергамот, роза, ладан, розмарин, мелисса и шалфей. В одном исследовании ученые обнаружили, что воздействие эфирного масла в течение одного часа эффективно снижает стресс, что измерялось снижением частоты сердечных сокращений и артериального давления участников. Однако эффект был лишь временным. В другом аналогичном исследовании, вдыхание смеси эфирных масел лаванды, иланг-иланга, нероли и майорана было связано со снижением кровяного давления и секреции кортизола, который часто увеличивается во время стресса. |
Снижают ли водные процедуры детородную функцию?
Несколько лет назад мой друг увлёкся обливанием холодной водой. Но эта закаливающая процедура сыграла с ним и его женой злую шутку. Дело в том, что они хотели иметь детей, но всё никак не получалось. Ему посоветовали хотя бы ненадолго отказаться от закаливающей процедуры. И представьте себе: через некоторое время его жена забеременела. Может ли это как-то быть связано с обливаниями холодной водой? Геннадий, Пятигорск
РАССМОТРИМ всё по порядку. Обливание холодной водой – это, без преувеличения, довольно сильный стресс для нашей кожи, которая очень чутко реагирует на малейшие изменения температуры окружающей среды, особенно на её резкое снижение. При этом надпочечники выбрасывают в кровь такие гормоны, как адреналин, норадреналин, кортизон, которые обладают как стимулирующим, так и угнетающим действием на различные органы и системы человека, в частности на сердечно-сосудистую, нервную, эндокринную. Что касается репродуктивной сферы, то гормоны стресса оказывают на неё скорее угнетающее, чем стимулирующее воздействие. Проявляется это, например, в том, что угнетается сперматогенез (процесс образования мужских половых клеток – сперматозоидов), а также уменьшается выработка мужского полового гормона тестостерона.
Таким образом, описанная в вашем письме история представляется вполне реальной. И хороший, как в сказке, конец её объясняется просто: после отказа от обливаний холодной водой прекратились выбросы в кровь вышеупомянутых гормонов надпочечников, и сперматогенез у мужчины через некоторое время восстановился. Кстати, на репродуктивную систему человека негативно влияет как низкая, так и высокая температура. Это следует взять на заметку мужчинам, которые беспокоятся о своей детородной функции. Установлено, например, что даже однократное посещение сауны может отрицательно сказаться на процессе сперматогенеза.
Поделись с друзьями:
Лечение холестерина чесноком. Снижает ли чеснок уровень холестерина? Исследование добавок чеснока.
Как и с любой комплексной программой для лечения плохого холестерина, изменение рациона питания остается одним из краеугольных камней.
Считалось, что некоторые травы улучшают уровень холестерина, и более того некоторые производители травяных добавок утверждали о пользе своего продукта. Чеснок является одним из наиболее часто потребляемых травяных добавок. Среди многих своих предполагаемых полезных эффектов для здоровья, которые включают в себя снижение артериального давления, предотвращение образования тромбов, антибактериальное и противогрибковое действие, и даже отпугивание кровососущих насекомых ночью, уже давно считают, что чеснок корректирует уровень холестерина. Так ли это на самом деле?
Чеснок (Allium sativum) иначе известный как «вонючая роза» содержит вещество, называемое аллиин. Когда чеснок раздавлен, происходит химическая реакция и аллиин превращается в аллицин. В нескольких лабораторных исследованиях показано, что аллицин препятствует образованию холестерина. Кроме того, более сотни исследований на животных были проведены, в результате которых было показан положительный эффект аллицина на уровень холестерина.
К сожалению, результаты, полученные в лаборатории и на животных, не удалось повторить у людей. Ранее проведенные исследования показали смешанные результаты и произвели больше критики в отношении структуры эксперимента, чем дали ответы на вопросы о пользе чеснока. Много критики сосредоточено на форме употребляемого чеснока (сырой или в виде добавки) и дозы. По этой причине хорошо продуманное и крупное исследование было проведено стэндфордским университетом в прошлом году, чтобы дать ответ на вопрос о связи чеснока с холестерином.
В этом исследовании почти 200 человек с умеренно повышенным холестерином получали 3 формы чеснока: сырой чеснок (в качестве приправы для бутерброда), Garlicin (размолотая в порошок чесночная добавка) и Kyolic-100 (состаренная чесночная добавка). Каждая форма чеснока употреблялась 6 дней в неделю в общей сложности в течение 6 месяцев. Количество аллицина в чесноке в каждой форме была схожим и употребляемая доза была в 2-3 раза выше рекомендуемой производителем.
Кроме жалоб на дурной запах, поступивших от половины участников, не было никакого существенного изменения уровня холестерина ни в одной из 3 групп. Также как и никаких побочных эффектов. Означает ли это что можно опровергнуть связь чеснока с холестерином? Возможно. Критики этого исследования указывают, что в этом исследовании была использована более низкая доза Kyolic-100, в отличие от предыдущих положительных исследований. Кроме того не все формы чеснока были исследованы (например, чесночное масло). Тем не менее, нет даже намека на пользу для холестерина в течение 6 месяцев, а это довольно негативное заключение.
Основываясь на этой информации, я не рекомендую людям начинать принимать чеснок в качестве единственной терапии для лечения высокого содержания холестерина. Здоровый рацион питания, физические упражнения и прием лекарств по-прежнему остаются краеугольными камнями лечения. Если вы все еще хотите принимать чеснока для здоровья сердца, принимайте, все в порядке. Только потому, что не доказана связь чеснока с холестерином, не означает, что чеснок не может быть полезен для сердца. Чеснок имеет несколько других благоприятный эффектов для организма, которые могут снизить риск сердечного приступа вне зависимости от холестерина.
Снижают ли кальций и витамин D риск переломов? Новый мета-анализ говорит, нет
Актуальность
Увеличение частоты переломов, ассоциированных с остеопорозом, является важной социальной и экономической проблемой. Кальций в комбинации с витамином D часто назначается лицам старше 50 лет для профилактики остеопороза. Но споры об эффективности такой терапии не умолкают на протяжении десятилетия.
В декабре в высокорейтинговом журнале были опубликованы результаты мета-анализа, оценивающего влияние добавок витамина D и кальция на частоту переломов.
Методы
Ученые использовали базы данных PubMed, Cochrane library и EMBASE для поиска рандомизированных клинических исследований (РКИ), в которых оценивали влияние добавок витамина D и кальция на частоту переломов у лиц старше 50 лет. Это были исследования, опубликованные с июля 2012 года по июль 2017 года.
В качестве первичной конечной точки рассматривалась частота переломов бедра, вторичными конечными точками являлись: общая частота переломов, частота вертебральных и периферических переломов.
Результаты
В мета-анализ вошли 13 РКИ, в которых сравнивали комбинацию витамина D и кальция с плацебо или отсутствием лечения.
- Анализ показал отсутствие достоверной ассоциации между использованием комбинации витамина D и кальция и частотой перемолов бедра (относительный риск (ОР), 1,09 [95% CI, 0,85-1,39]; ARD, 0,00 [95% CI, −0,00-0,00]), периферических переломов (ОР, 0,88 [95% CI, 0,75-1,03]; ARD, −0,01 [95% CI, −0,02-0,00]), вертебральных переломов (ОР, 0,63 [95% CI, 0,29-1,40]; ARD, −0,00 [95% CI, −0,00-0,00]) или общим риском переломов (ОР, 0,90 [95% CI, 0,78-1,04]; ARD, −0,01 [95% CI, −0,010,00]).
- Анализ по подгруппам не продемонстрировал достоверных различий между пациентами при учете дозы витамина D и кальция, пола, изначальной концентрации 25-ОН-D, количества кальция, получаемого из пищи, наличия переломов в анамнезе.
О влиянии монотерапии кальция и витамина D на риск переломов читайте далее.
Источник: Jia-Guo Zhao, Xian-Tie Zeng, Jia Wang, et al. JAMA. 2017;318(24):2466-2482.
Снижают ли потенцию презервативы?
Первая интимная близость с новой партнершей — это всегда очень волнительно для мужчины. Особая неловкость возникает в момент, когда нужно надеть презерватив. В такой обстановке это может стать причиной слабой эрекции. Не желая испытывать судьбу и показывать слабые стороны, мужчины нередко забывают о безопасности, занимаясь сексом без средств контрацепции, что повышает риск заразиться и заразить ЗППП.
Результаты исследований
Синтия Грэхем, которая является младшим научным сотрудником Института имени Кинси по изучению секса, пола и репродукции в Университете Индианы в США, на основе многочисленных исследований отмечает, что чаще всего мужчины снимают презерватив во время полового акта или полностью отказываются от него в пользу поддержания надежной эрекции. В этот момент они не задумываются над вопросами, которые могут возникнуть в ближайшем будущем: «Как избавиться от ЗППП?», «Что делать с незапланированной беременностью партнерши?», «Как лечить импотенцию?».
Синтия Грэхем проводила исследование, в котором участвовало 278 мужчин. Все они являлись пациентами клиники по лечению половых инфекций. Каждый из них пользовался презервативами минимум три раза за предыдущие три месяца. Участники исследования ответили на вопросы о количестве половых партнеров, сексуальных расстройствах, частоте незащищенных половых актов, проблемах с презервативами, ощущениях при их использовании.
В результате исследования было установлено, что около 27% мужчин ощущали неудобства и проблемы с эрекцией до полового акта при надевании презерватива или уже во время секса. Именно эти представители сильного пола признались, что за исследуемый период у них были чаще незащищенные сексуальные связи (11 раз против 7 раз у мужчин, не испытывающих подобных проблем). Около 40% мужчин, которые признались о наличии проблем с эрекцией, говорили о том, что снимали презерватив до окончания полового акта. Представители сильного пола, которые сменили трех и более сексуальных партнерш за исследуемый период, а также те, кто признался в проблемах с использованием презервативов, вдвое чаще сообщали о проблемах с эрекцией. Возможно, мужчины, которые часто меняют партнерш, чаще испытывают повышенную тревожность, которая и является причиной ослабления мужской силы.
Синтия Грэхем отмечает, что в данном случае крайне важна роль просветительской работы по вопросам использования презервативов, особенно для мужчин, которые стали «постоянными клиентами» клиник по лечению половых инфекций. Эти методы лечения эректильной дисфункции и других серьезных заболеваний, возникающих на фоне ЗППП, достаточно эффективны и не требуют особых усилий от медицинского персонала.
Решение проблемы
Импаза – лекарственный препарат, который помогает устранить причину нарушения потенции (дисфункция эндотелия сосудов). Импаза позволяет восстановить эректильную функцию мужчины в рамках физиологической нормы, в отличие от препаратов, обладающих лишь разовым стимулирующим эффектом.Читайте также
Как влияет напиток на гипертоников
Приобретая к празднику бутылку хорошего коньяка, люди часто думают о нем не только как об алкогольном напитке, но и еще отчасти как о лекарственном средстве.
В народе считается, что коньяк расширяет сосуды, тем самым понижая давление. Действительно ли так чудодейственна сила коньяка? Или это просто миф, своеобразный повод выпить? Рассмотрим действие коньяка на артериальное давление человека.
Коньяк способен как понижать давление, так и делать его выше. Такая его разносторонность объясняется количеством выпитого. Считается, что безопасная доза крепкого спиртного напитка для здорового мужчины – 50 г коньяка, для здоровой женщины – всего 30 г. Причем данное количество напитка желательно пить не залпом, а разделяя на три приема. Дело в том, что малая доза коньяка за счет содержащихся в составе дубильных веществ и танинов расширяет человеческие сосуды, снимает их спазм. Следовательно, давление понижается. Кстати, эти самые вещества коньяк получает благодаря тому, что производят его из виноградного сырья, а потом выдерживают в деревянных бочках. Вот почему, к примеру, водка или самогон не сможет улучшить человеческое состояние, понизив уровень артериального давления.
К сожалению, далеко не каждый ценитель крепкого напитка может ограничить себя такой «несерьезной» дозой, как 50 г. И часто выпивается целая бутылка, а порой и не одна. В таких случаях коньяк начинает обратное действие – от понижения давления к повышению. Дело в том, что коньяк, как и любой алкогольный напиток, заставляет сердце человека биться сильнее, что приводит к усиленному гону крови по сосудам. Соответственно, давление делает скачок, повышается. Причем такой эффект начинается уже после примерно 100 г выпитого коньяка. Естественно, большая доза крепкого напитка в состоянии привести не просто к поднятию давления, но и беде. Особенно страшно, что в сильном опьянении многие люди попросту не ощущают частоту биений своего сердца, да и тонометр наверняка стоит где-то в сторонке. Поэтому воспринимать коньяк в качестве универсального средства для регулировки артериального давления, естественно, не следует.
Итак, мы выяснили, что малые дозы (до 50 г) коньяка действительно давление снижают. Большие дозы (более 100 г), напротив, приводят к скачку артериального давления резко вверх, повышению пульса в 2-2,5 раза. Но есть причины, по которым даже ничтожное количество благородного напитка вообще принимать не стоит.
Напомним, врач дал советы, как снизить давление в домашних условиях.
Снижает ли скорость снижение скорости? / Habr
Не так давно развернулись дискуссии на тему введения денежного штрафа за превышение скорости на более чем 10 км/ч от разрешенной. Традиционно для Интернета они ведутся неконструктивно, поэтому я в целом не поддерживаю ни одну сторону подобных холиваров.
Аргументы автовладельцев в массе сводятся к огрызаниям «мне надо», которые, разумеется, не тождественны. На значительную долю людей, вынужденно ездящих на работу по 50 км ежедневно через локации, не охваченные общественным транспортом, приходится не меньшая доля ездящих на машине «в булочную», что хорошо видно по этим самым машинам, оставленным утром у дома в первый же мало-мальский снег.
Со стороны урбанистов часто слышны довольно однобокая аргументация, заезженные частные примеры европейских стран, население которых иногда целиком сопоставимо с суточным московским автотрафиком, приемы вроде оскорбительных штампов про «быдлоповозки».
А когда наступает такая ситуация, нет ничего лучше, чем отбросить чужие эмоции и призвать двух беспристрастных помощников — матана и Питона.
Слабость позиции автовладельцев – они не выдвигают путей решения своих проблем (на мой взгляд, путем решения была бы отмена стихийной застройки каждого свободного клочка земли в крупных городах и развитие регионов, чтобы людям не приходилось заниматься в родной стране трудовой миграцией в столицу, но кто я такой, чтобы предлагать такие вещи?). У урбанистов всегда есть набор аргументов и готовых решений, подкрепленных данными. Но иногда это исследования серьезных институтов, иногда – не очень внятная статистика без адекватного нормирования. Этими данными в большинстве случаев напирают на идею об общем снижении скорости движения в городах. И самый частый аргумент в ее пользу звучит так:
«все равно из-за светофоров нельзя все время двигаться с максимальной скоростью, ваша средняя скорость будет ниже разрешенной, так почему бы и не снизить немного разрешенную?»
«Хммм», думал я всегда над этим аргументом. Если снизить максимальную разрешенную, средняя тоже немножко упадет. И что это доказывает — что можно ее снова снизить? Что же это за апория такая? Нужно проверить, насколько это правда.
Дальнейшую статью я хотел бы представить вашему вниманию с оговорками, чтобы направить ее критику в комментариях в конструктивное русло:
— Да, я знаю, как некрасиво написан код, но мне важнее, чтобы он работал правильно, сам я не программист, замечания по коду лучше пишите в личку.
— Да, я знаю, что симуляцию можно было бы сделать сложнее, полнее и реалистичнее. Только я приму не упреки, что в ней отсутствует изменение плотности трафика в течение дня, различная динамика различных машин, погодные условия, фазы Луны, мать автора, а дельные замечания, указания на алгоритмические недочеты, модификацию модели для каких-либо не рассмотренных ситуаций. В моем понимании она достаточна, чтобы ответить на простой с точки зрения математики вопрос: учитывая сильную дискретность движения из-за светофоров, значительно ли влияет на время прохождения пути снижение максимальной разрешенной скорости на отдельных участках?
Суть моей модели очень проста. Поскольку светофор — это готовый программный цикл, симуляция построена вокруг отрезка дороги со светофором в конце и его фаз. Следующая итерация — следующий отрезок маршрута со своей длиной, разрешенной скоростью, фазой светофора в конце.
Автомобиль имеет три фазы движения: равноускоренное, движение с максимальной разрешенной для данного участка скоростью, равнозамедленное. Они реализуются в 9 вариантах.
- Если автомобиль двигался до нынешнего отрезка с такой же скоростью, которая разрешена на этом, то он двигается без изменений;
- Если он двигался медленнее (или стоял) — то он сначала разгоняется;
- Варианта «он двигался быстрее» нет, и вот почему: если на следующем отрезке разрешенная скорость меньше, он снижает скорость на этом. Логично?
К этим вариантам добавляются еще условия:
- Автомобиль едет как ехал или замедлялся, и приезжает к концу отрезка на красный. Это значит, что надо остановиться перед светофором. Полагая, что он тормозит всегда с одинаковым ускорением, откладываем от светофора назад путь, необходимый для торможения. Это — расстояние Sкритическое, по аналогии с критической скоростью взлета самолетов. Теперь, если по условиям авто проезжает на красный свет, он должен начать тормозить до нуля, начиная с точки Sкритическое;
- Черт, а может, отрезок такой короткий или авто такой овощной, что он не успеет набрать максимальную скорость до наступления Sкрит? А программа баганет, продолжая его разгонять, хотя ему пора тормозить перед светофором? Если так случится, заставим его не набирать скорость выше достигнутой в точке Sкрит, а далее реализуем один из вариантов. Вот что получается в итоге:
А дальше нужно реализовать это в коде. Вот так я это сделал, снабдив подробными комментариями:образец индуизма
import random
import math
#период красного света:
redlight = ("100",
"10",
"90",
"1", #это своего рода "стоп-кодон" . Машина должна обязательно остановиться в пункте назначения. Этому служит 1 секунда красного света
"1") # и 1 секунда зеленого, превращающаяся в 0. А еще коду нужен последний отрезок и следующий за ним. Поэтому две последние цифры кортежей условны.
#период зеленого света:
greenlight = ("30",
"120",
"30",
"1",
"1")
#расстояние до следующего светофора:
distance = ("400",
"400",
"250",
"500",
"500")
#разрешенная скорость на участке
velocity = ("60",
"60",
"60",
"60",
"40")
#переменные-счетчики для кортежей
r=0
g=0
d=0
v=0
#переменная текущей скорости:
vcurrent=float(0)
#переменная текущего времени проезда отрезка:
t=0
#переменная суммарного времени всего пути:
gtime=0
#примем, что наша машина разгоняется до 100 км/ч за 15 секунд.
#тогда ускорение разгона до разрешенной скорости будет:
accel=float(100/(3.6*15))
#примем, что наша машина тормозит вдвое резче.
#тогда ускорение торможения до разрешенной скорости будет:
decel = float(accel*2)
#пока мы перебираем все элементы кортежей, кроме последнего (и помним, что начинается с 0):
while r<=2:
red=float(redlight[r])
grn=float(greenlight[g])
dis=float(distance[d])
vel=float(float(velocity[v])/3.6)
vnext=float(float(velocity[v+1])/3.6)
#создаем переменную для расчета пути разгона машины с ускорением accel до разрешенной на участке скорости:
#saccel = float(((vcurrent*vel-vcurrent)/accel) + ((vel-vcurrent)*((vel-vcurrent)/(2*accel)
saccel = float((vcurrent*(vel-vcurrent)/accel) + (vel-vcurrent)*(vel-vcurrent)/(2*accel))
#смотрим вдаль: эта переменная определяет точку пути, с которой мы сможем затормозить точно к светофору с ускорением decel:
scrit = float(dis-(vel/decel) - (vel*vel)/(2*decel))
#рандомизируем время, в которое загорается первый красный свет цикла светофора.
#это даст нам некоторое смещение по фазе у каждого светофора:
startingred = random.randint(0, (int(grn)-1))
print ("startingred= ", startingred)
#в самом главном условии сравниваем, если текущая скорость _равна_ разрешенной - то у нас отсутствует фаза разгона:
if vcurrent == vel:
#если на следующем отрезке разрешенная скорость выше или равна текущей, едем как ехали, набирать будем на том участке:
if vnext>= vcurrent:
t = int (dis/vel)
#если красный, тормозим до нуля:
if (t+startingred)%(red+grn)<=red:
t = int (scrit/vel + (vel/decel) + red-((t+startingred)%(red+grn))) ### 2
vcurrent = 0
print ("Скорость равнялась разрешенной и будет такой же или выше, КРАСНЫЙ")
#если зеленый, то проезжаем:
else:
t = int (dis/vel)### 1
vcurrent = vel
print ("Скорость равнялась разрешенной и будет такой же или выше, ЗЕЛЕНЫЙ", " v=", vcurrent)
#если на следующем отрезке разрешенная скорость ниже текущей, снижаем скорость, начиная с scrit:
else:
t = int ((scrit/vel) +
(vcurrent - (vnext)/((vcurrent*(vcurrent - (vnext/(dis-scrit))-
((vcurrent - vnext)*(vcurrent - vnext)/(2*(dis-scrit))))))))
#но если красный, то останавливаемся:
if (t+startingred)%(red+grn)<=red:
t = int (scrit/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 2
vcurrent = 0
print ("Скорость была разрешенной и будет ниже текущей, КРАСНЫЙ")
#а если зеленый - замедляемся до скорости, разрешенной на следующем участке, весь путь от scrit до светофора:
else:
t = int (scrit/vel +
(vcurrent - vnext)/((vcurrent*(vcurrent - (vnext/(dis-scrit))-
((vcurrent - vnext)*(vcurrent - vnext)/(2*(dis-scrit)))))))### 3
vcurrent = float(vnext/3.6)
print ("Скорость была разрешенной и будет ниже текущей, ЗЕЛЕНЫЙ", " v=", vcurrent)
#в самом главном условии сравниваем, если текущая скорость _меньше_ разрешенной - у нас появляется фаза разгона до новой разрешенной:
elif vcurrent < vel:
#вводим переменную скорости, достигнутой в точке scrit:
vcrit=math.sqrt(2*accel*scrit+vcurrent*vcurrent)
#если путь разгона до разрешенной скорости превышает расстояние scrit, то разгоняемся до проезда пункта scrit, запоминаем скорость vcrit и проверяем, надо ли тормозить:
if saccel >= scrit:
#если на следующем участке ограничение скорости такое же или выше - набирать ее будем на том участке, не тормозим
if vnext >= vcrit:
t = int(((vcrit-vcurrent)/ accel) + (dis-scrit)/vcrit)
#если красный, то останавливаемся:
if (t+startingred)%(red+grn)<=red:
t = int(((vcrit-vcurrent)/ accel) + ((dis-scrit)*2/vcrit) + red-((t+startingred)%(red+grn)))### 8
vcurrent = 0
print ("Скорость была меньше разрешенной и будет такой же или выше, неполный разгон, КРАСНЫЙ")
#если зеленый, то едем с достигнутой скоростью:
else:
t = int(((vcrit-vcurrent)/ accel) + (dis-scrit)/vcrit) ### 7
vcurrent = vcrit
print ("Скорость была меньше разрешенной и будет такой же или выше, неполный разгон, ЗЕЛЕНЫЙ", " v=", vcurrent)
#если на следующем участке ограничение скорости ниже - тормозим сразу после разгона
else:
t = int(((vcrit-vcurrent)/ accel) + (vcrit - vnext)/((vcrit*(vcrit - vnext)/(dis-scrit))-
((vcrit - vnext)*(vcrit - vnext)/(2*(dis-scrit)))))
#если красный, то останавливаемся:
if (t+startingred)%(red+grn)<=red:
t = int(((vcrit-vcurrent)/ accel) + ((dis-scrit)*2/vcrit) + red-((t+startingred)%(red+grn)) ) ### 8
vcurrent = 0
print ("Скорость была меньше разрешенной и будет ниже текущей, неполный разгон, КРАСНЫЙ")
#если зеленый - замедляемся до скорости, разрешенной на следующем участке, весь путь от scrit до светофора:
else:
t = int(((vcrit-vcurrent)/ accel) + (vcrit - vnext)/((vcrit*(vcrit - vnext)/(dis-scrit))-
((vcrit - vnext)*(vcrit - vnext)/(2*(dis-scrit))))) ### 9
vcurrent = vnext
print ("Скорость была меньше разрешенной и будет ниже текущей, неполный разгон, ЗЕЛЕНЫЙ", " v=", vcurrent)
#если путь разгона до разрешенной скорости не превышает scrit, разгоняемся до разрешенной, дальше едем с ней:
else:
#если на следующем отрезке разрешенная скорость выше или равна текущей, едем как ехали, набирать будем на том участке:
if vnext>= vel:
t = int(((vel- vcurrent)/accel) + (dis-saccel)/vel)
#если красный, то останавливаемся:
if (t+startingred)%(red+grn)<=red:
t = int (((vel- vcurrent)/accel) + (scrit-saccel)/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 5
vcurrent = 0
print ("Скорость была меньше разрешенной и будет такой же или выше, КРАСНЫЙ")
#если зеленый, то проезжаем:
else:
t = int (((vel- vcurrent)/accel) + (dis-saccel)/vel)### 4
vcurrent = vel
print ("Скорость была меньше разрешенной и будет такой же или выше, ЗЕЛЕНЫЙ", " v=", vcurrent)
else:
#если красный, то останавливаемся:
if (t+startingred)%(red+grn)<=red:
t = int (((vel- vcurrent)/accel) + (scrit-saccel)/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 5
vcurrent = 0
print ("Скорость была меньше разрешенной и будет ниже текущей, КРАСНЫЙ")
#если зеленый - замедляемся до скорости, разрешенной на следующем участке, весь путь от scrit до светофора:
else:
print ("scrit ", scrit)
print ("vcurrent ", vcurrent)
t = int (((vel- vcurrent)/accel) +(scrit-saccel)/vel + (vel - vnext)/((vel*(vel - vnext)/(dis-scrit))-((vel - vnext)*(vel - vnext)/(2*(dis-scrit))))) ### 6
vcurrent = vnext
print ("Скорость была меньше разрешенной и будет ниже текущей, ЗЕЛЕНЫЙ", " v=", vcurrent)
#в самом главном условии сравниваем, если текущая скорость _выше_ разрешенной - так быть не может, мы же тормозим на предыдущем участке:
else:
print ("ERROR: v current > v next")
print (t)
r+=1
g+=1
d+=1
v+=1
gtime+=t
print (gtime)
Здесь нужно несколько уточнений.
Я взял условную динамику разгона автомобиля от 0 до 100 за 15 секунд, и задал торможение вдвое резче. Мне это показалось реалистичным, кто не согласен — код в ваших руках, экспериментируйте с гружеными фурами и ламборджини мурсилеаго.
Да, я пренебрег тем, что пока автомобиль тормозит, красный свет может смениться зеленым. Маловероятно, но такое может быть — равнозамедленное торможение до нуля занимает вдвое больше времени, чем проезд того же расстояния с неизменной скоростью. Значит, речь идет о 3-5 секундах. Ради них я не стал городить еще формул, успокоив себя тем, что это — симуляция машины, стоящей перед нами на светофоре. Кстааааати…
Да, я пренебрег трафиком вообще. Объясняю, почему. Чисто математически трафик будет выглядеть как смещение точки светофора на несколько корпусов машин и соответственно смещенную по фазе линию скорости. Просто оттащите мышкой картинку выше на сантиметр влево — наглядная демонстрация.
Но дело в том, что реальность совсем не такова. Машины не будут стартовать одновременно, как вагоны метро, хотя теоретически могут сделать это, не столкнувшись. Они стартуют последовательно, и повлияет это на наше время прохождения маршрута следующим образом: мы можем не успеть проехать светофор, если их довольно много. В противном случае это — всего лишь смещение по фазе и снижение средней скорости на участке (как будто по всему городу действуют более строгие правила). А значит, симулируется ситуация простым добавлением еще одного цикла светофора, вроде:
t = int (scrit/vel + (vel/decel) + red-((t+startingred)%(red+grn)) <b>+ (red+grn)</b>)
Дает ли это что-то нам? Вряд ли, поскольку это просто слагаемое, просто еще одно свойство светофора, если хотите. Вся игра со временем прохождения маршрута происходит во время движения на отрезках. И тут плотный, мешающий друг другу трафик можно симулировать, зарезав ускорение или/и разрешенную скорость на участке.
Но нас ведь интересует, как лимитируют ситуацию ограничения скорости, а не соседние машины? Вот мы и будем разбирать такой вариант.
Я не стал ничего выдумывать, а взял реальный городской маршрут. Скажем так, знакомый мне ранее. Я не помню точно все фазы светофоров, но я взял его за основу симуляции, потому как на нем есть и длинные, и короткие, и ограниченные по скорости участки.
кликА еще я модифицировал код. Стер все каменты и принты, добавил более глобальный цикл, чтобы прогнать его, например, 10000 раз:клик
import random
import math
n=0
overalltime=0
while n<=10000:
redlight = ("100",
"10",
"90",
"20",
"60",
"20",
"20",
"20",
"20",
"60",
"20",
"20",
"90",
"90",
"100",
"60",
"100",
"80",
"80",
"60",
"90",
"60",
"120",
"60",
"80",
"60",
"1",
"1")
greenlight = ("30",
"120",
"30",
"120",
"40",
"120",
"120",
"120",
"120",
"40",
"120",
"120",
"40",
"15",
"20",
"20",
"20",
"20",
"20",
"40",
"30",
"20",
"40",
"40",
"20",
"40",
"1",
"1")
distance = ("400",
"400",
"250",
"250",
"250",
"450",
"300",
"650",
"1000",
"450",
"500",
"900",
"450",
"400",
"1100",
"900",
"600",
"1000",
"450",
"450",
"400",
"450",
"200",
"500",
"350",
"400",
"500",
"500")
velocity = ("80",
"80",
"80",
"80",
"80",
"80",
"60",
"80",
"80",
"80",
"80",
"80",
"80",
"80",
"80",
"80",
"80",
"60",
"80",
"80",
"80",
"80",
"80",
"60",
"80",
"80",
"80",
"40")
r=0
g=0
d=0
v=0
vcurrent=float(0)
t=0
gtime=0
accel=float(100/(3.6*15))
decel = float(accel*2)
while r<=26:
red=float(redlight[r])
grn=float(greenlight[g])
dis=float(distance[d])
vel=float(float(velocity[v])/3.6)
vnext=float(float(velocity[v+1])/3.6)
saccel = float((vcurrent*(vel-vcurrent)/accel) + (vel-vcurrent)*(vel-vcurrent)/(2*accel))
scrit = float(dis-(vel/decel) - (vel*vel)/(2*decel))
startingred = random.randint(0, (int(grn)-1))
if vcurrent == vel:
if vnext>= vcurrent:
t = int (dis/vel)
if (t+startingred)%(red+grn)<=red:
t = int (scrit/vel + (vel/decel) + red-((t+startingred)%(red+grn))) ### 2
vcurrent = 0
else:
t = int (dis/vel)### 1
vcurrent = vel
else:
t = int ((scrit/vel) +
(vcurrent - (vnext)/((vcurrent*(vcurrent - (vnext/(dis-scrit))-
((vcurrent - vnext)*(vcurrent - vnext)/(2*(dis-scrit))))))))
if (t+startingred)%(red+grn)<=red:
t = int (scrit/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 2
vcurrent = 0
else:
t = int (scrit/vel +
(vcurrent - vnext)/((vcurrent*(vcurrent - (vnext/(dis-scrit))-
((vcurrent - vnext)*(vcurrent - vnext)/(2*(dis-scrit)))))))### 3
vcurrent = float(vnext/3.6)
elif vcurrent < vel:
vcrit=math.sqrt(2*accel*scrit+vcurrent*vcurrent)
if saccel >= scrit:
if vnext >= vcrit:
t = int(((vcrit-vcurrent)/ accel) + (dis-scrit)/vcrit)
if (t+startingred)%(red+grn)<=red:
t = int(((vcrit-vcurrent)/ accel) + ((dis-scrit)*2/vcrit) + red-((t+startingred)%(red+grn)))### 8
vcurrent = 0
else:
t = int(((vcrit-vcurrent)/ accel) + (dis-scrit)/vcrit) ### 7
vcurrent = vcrit
else:
t = int(((vcrit-vcurrent)/ accel) + (vcrit - vnext)/((vcrit*(vcrit - vnext)/(dis-scrit))-
((vcrit - vnext)*(vcrit - vnext)/(2*(dis-scrit)))))
if (t+startingred)%(red+grn)<=red:
t = int(((vcrit-vcurrent)/ accel) + ((dis-scrit)*2/vcrit) + red-((t+startingred)%(red+grn)) ) ### 8
vcurrent = 0
else:
t = int(((vcrit-vcurrent)/ accel) + (vcrit - vnext)/((vcrit*(vcrit - vnext)/(dis-scrit))-
((vcrit - vnext)*(vcrit - vnext)/(2*(dis-scrit))))) ### 9
vcurrent = vnext
else:
if vnext>= vel:
t = int(((vel- vcurrent)/accel) + (dis-saccel)/vel)
if (t+startingred)%(red+grn)<=red:
t = int (((vel- vcurrent)/accel) + (scrit-saccel)/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 5
vcurrent = 0
else:
t = int (((vel- vcurrent)/accel) + (dis-saccel)/vel)### 4
vcurrent = vel
else:
if (t+startingred)%(red+grn)<=red:
t = int (((vel- vcurrent)/accel) + (scrit-saccel)/vel + (vel/decel)+ red-((t+startingred)%(red+grn)))### 5
vcurrent = 0
else:
t = int (((vel- vcurrent)/accel) +(scrit-saccel)/vel + (vel - vnext)/((vel*(vel - vnext)/(dis-scrit))-((vel - vnext)*(vel - vnext)/(2*(dis-scrit))))) ### 6
vcurrent = vnext
else:
print ("ERROR: v current > v next")
#print (t)
r+=1
g+=1
d+=1
v+=1
gtime+=t
dev=(1476-gtime)*(1476-gtime)
#print (gtime)
n+=1
dev+=dev
overalltime+=gtime
print ("mean= ", overalltime/n)
print ("deviation= ", math.sqrt(dev/n))
Представленный вариант отображает «обычную езду» — с максимальным превышением скорости, которое наказывается только устным предупреждением.
А вот теперь занятно будет с помощью симуляции на основе этого маршрута сравнить следующие варианты: введение нештрафуемого интервала в 10 км/ч, сверхзаконопослушную езду точно по ограничениям, педалируемую урбанистами максимальную городскую скорость в 50 км/ч.
Результаты 10 000 симуляций, raw data:
(ограничение, км/ч; время прохождения маршрута, с; стандартное отклонение):
90 1466,6 0,5
80 1475,6 0,4
70 1479,7 0,9
60 1593,7 0,8
50 1701,3 0,5
40 1869,8 0,6
Диаграмма показывает минуты пути в зависимости от глобального ограничения скорости. Да, знаю, что ось Y не с нуля, но так нагляднее.
Результаты показались мне немного неожиданными. Во-первых, планируемое уменьшение нештрафуемого порога на данном маршруте действительно не приведет к значимому увеличению времени в пути. И начиная как раз где-то с 70 км/ч увеличение скорости почти ничего не дает. Во-вторых, снижение разрешенной скорости заметно увеличит время, на 8% даже относительно совсем законопослушных граждан и на 13% от негласно эксплуатируемых скоростей «устного предупреждения». То есть, утверждение, что снижение разрешенной скорости не отразится на средней, строго говоря неверно. Опять же, в рамках данной модели нельзя показать, будет ли «стакаться» замедление на 10% в условиях плотного трафика и усугублять дорожную обстановку.
Пожалуйста, пишите замечания по модели (повторюсь, конструктивные), ну а если вы заложите в модель свои маршруты и принесете в комментарии результат — будет вообще замечательно.