Sony Pixel Power calrec Sony

Using Pyon scripts with MaMotion Creating a timetable schedule from an OD matrix

16/04/2015

Introduction MassMotion's timetables are incredibly powerful, but can be time-consuming to pull together by hand. On the other hand, simple programs can do much of the donkey work, converting files such as Origin/Destination Matrices (OD Matrices) or train schedules into a form that MassMotion can read. In this article I will be looking at converting an OD Matrix into a timetable schedule file using a programming language called Python.

Python Python is a free scripting language that is simple to use, powerful, and importantly for us great for working with comma separated value (.csv) files, which are a typical output from Excel.

Python comes in two slightly different versions: Python2x and Python3x. The x refers to the particular build: I am currently using Python3.4.3. You may find a certain amount of controversy online regarding which it is best to use, as Python3x cannot read libraries written in 2x. This is mostly academic now, as over the last few years the majority of libraries have now been updated. My recommendation is that you should use Python3x, and only use Python2x if you have a definite need to work with legacy systems.

You can download the main version of Python from www.python.org, including the IDLE shell, which is a programming environment aimed to help you write and run the programs. There are other Python shells out there out there that might offer some advantages to you, and there will be lots of online discussions extoling the various merits of each. You can even write your scripts in Notepad or Notepad++ and run them with a Windows command line if you wish.

Coding with Python There is lots of guidance available on how to write Python programs, including much which is free on the web (https://docs.python.org/3/tutorial/ is a good place to start). Here I will go through a few key points, but I do recommend that you do one of the many excellent courses or books that are out there.

If you are used to programming in other languages, you may note that a main difference between it and other languages is that loops and other relationships are shown by indenting. For example, a FOR/NEXT loop does not include a NEXT, but instead looks something like this:

for row in input_file: input_rows.append(row) Comments always start with a #, so Python will ignore anything you write after one.

Rather than creating Arrays, Python uses Lists, and allows an item in a List to also be a List. In the script below I create a List, where each item is a line from the OD matrix csv. As items in a List are separated by commas, each line becomes its own list, allowing me to pluck individual values out. For example, to retrieve the value from the second column in the third row of the csv I might ask for (as Python always has the first item as zero):

row[2][1] While Python has many commands that you can use, there are modules and libraries available to make your life easier. In our case, we will import the csv module, which enables us to read and write such files without having to do so much coding. We do this with:

import csv Commands using this module start with csv. , such as csv.reader and csv.writer.

Note that for a general program you might want to add in browse dialogs to grab the files and locations, but for something like this I suggest that you just edit the names directly into the script and save the script into the same folder as the files you want to work on.

The Data For this exercise I have created a very simple OD matrix, but the program will work with one of any size:

OD Matrix ExitPortal1 ExitPortal2 ExitPortal3 ExitPortal4 ExitPortal5 ExitPortal6 ExitPortal7

EntryPortal1 0 80 51 0 19 81 7

EntryPortal2 51 10 70 40 110 0 12

EntryPortal3 99 26 20 47 58 39 3

EntryPortal4 39 16 119 0 5 4 75

EntryPortal5 11 44 0 35 10 108 0

EntryPortal6 0 1 115 77 0 21 47

And the end result will look like this:

From To Population Time offset Curve Avatar Profile Init Action Give Tokens

EntryPortal1 ExitPortal2 80 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1

EntryPortal1 ExitPortal3 51 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1

EntryPortal1 ExitPortal5 19 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1

EntryPortal1 ExitPortal6 81 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1

EntryPortal1 ExitPortal7 7 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1

EntryPortal2 ExitPortal1 51 00:00:00 Arrival_curve Orange_LowPoly DefaultProfile Action1 Token1



I have only shown the first few lines, just enough to show how it works. The end result has one line per non-zero value in the OD matrix plus the headers. Some items are optional, so for example you might leave the Action column blank if you are not applying any to the agents when they spawn.

As these are csv files the OD matrix (OD_matrix.csv) actually looks like this:

OD Matrix,ExitPortal1,ExitPortal2,ExitPortal3,ExitPortal4,ExitPortal5,ExitPortal6,ExitPortal7 EntryPortal1,0,80,51,0,19,81,7 EntryPortal2,51,10,70,40,110,0,12 EntryPortal3,99,26,20,47,58,39,3 EntryPortal4,39,16,119,0,5,4,75 EntryPortal5,11,44,0,35,10,108,0 EntryPortal6,0,1,115,77,0,21,47 And the results look similar.

The program As you will see, the resultant Python script (OD-schedule.py) is not long and hopefully easy to follow.

# OD matrix to MassMotion Timetable # read OD matrix csv and write Schedule csv import csv # enable the use of csv commands # set up standard values - adjust to suit: offset = 00:00:00 # from start of simulation for start of arrivals (optional) curve = Arrival_curve # defined in Timetable_curve.csv (optional) avatar = Orange_LowPoly # defaul
LINK: http://www.oasys-software.com/blog/2015/04/using-python-scripts-with-m...
See more stories from oasys

Most recent headlines

04/09/2025

Monumental Sports & Entertainment and Dalet Win Prestigious 2025 NAB Show Project of the Year Award

Monumental Sports & Entertainment (MSE), in collaboration with Dalet, has been a...

01/05/2025

Fired CPB Board Members Sue Trump Administration

WASHINGTON The Corporation for Public Broadcasting has filed a lawsuit to stop the Trump administration from firing three of its board members, claiming the pre...

01/05/2025

Riedel Opens Hong Kong Office

HONG KONG Riedel Communications today said it has opened a new office in Hong Kong, enhancing its presence in the Asia-Pacific region....

01/05/2025

NextGen TV: Sinclair Applauds New ATSC 3.0 D2M Phones

MUMBAI, India & BALTIMORE In a development that could advance efforts to bring NextGen TV to cellphones, FreeStream Technologies, Lava International and HMD hav...

01/05/2025

Screen Australia empowers 100+ distinctive Australian narratives

01 05 2025 - Media release Screen Australia empowers 100 distinctive Australian narratives All The Boys Are Here writer/director Goran Stolevski and It s All...

01/05/2025

How PFX Delivered 750 VFX Shots in Just Four Months For Anthony Hopkins Thriller Locked

How PFX Delivered 750 VFX Shots in Just Four Months For Anthony Hopkins Thriller...

01/05/2025

Careline's New Wave Makeup Commercial Shot With URSA Cine 12K LF

Careline's New Wave Makeup Commercial Shot With URSA Cine 12K LF Brie Clayton May 1, 2025 0 Comments CAD Studios relies on large format, full fram...

30/04/2025

Inside the Archives: Preserving and Saving At-Risk Films Takes a Village

Film elements held at the Deluxe warehouse in March of 2015. Photo by Luis Silva...

30/04/2025

Spotify and EA SPORTS Team Up To Pilot a New Kind of Audio Experience

EA SPORTS FC 25 fans in Australia and Saudi Arabia, get ready to immerse yourselves in the beautiful game like never before. Spotify is excited to announce a n...

30/04/2025

Tucker Wetmore Celebrates His Debut Album Release With an Intimate Performance for Fans

The past year has been nothing short of a whirlwind for Tucker Wetmore. After th...

30/04/2025

Spotify Celebrates Mexico's Booming Podcast Scene With First-Ever Podcast Awards

Mexico's love for podcasts is no longer a trend-it's a lifestyle. With m...

30/04/2025

Slam poet Huda the Goddess wins 2025 Les Murray Award

Slam poet Huda the Goddess wins 2025 Les Murray Award 30 April, 2025 Media releases Australia for UNHCR and SBS are proud to announce that Huda Fadlelmawla...

30/04/2025

SBS, NITV and NIDA partner to empower the next generation of screen creatives

SBS, NITV and NIDA partner to empower the next generation of screen creatives 30 April, 2025 Media releases SBS, National Indigenous Television (NITV) and ...

30/04/2025

Why Now is the Perfect Time to Join HPA

By Joyce JC Cataldo The media and entertainment industry is evolving faster than ever. Technology is shifting the way we create, distribute, and experience c...

30/04/2025

On-Demand Imagery: Enhancing Monitoring and Analysis with Advanced Streaming Platforms

An image of Valencia, Spain, in the OneAtlas Living Library...

30/04/2025

WPSD-TV Taps Bitcentral To Modernize Playout

NEWPORT BEACH, Calif. WPSD-TV, the NBC affiliate in Paducah, Ky., has selected Bitcentral's Central Control playout system to upgrade the station's mast...

30/04/2025

Baris Zavaroglu Appointed CEO of Zero Density

AMSTERDAM Zero Density, a global provider of virtual studio productions and on-air graphics, has appointed Baris Zavaroglu as its new CEO. Zavaroglu succeeds Of...

30/04/2025

The Avit Group Elevates Audio-visual Experiences with Mar...

The Avit Group, a forward-thinking audio-visual technology company, is bringing over 50 years of combined experience in delivering audio-visual design and insta...

30/04/2025

NXTGENbps brings portable, sustainable battery solutions...

NXTGENbps will be showcasing its latest sustainable battery power solutions at this year's Media Production & Technology Show (MPTS), appearing alongside pa...

30/04/2025

Van Dyke Scores Hit with Hockey Comedy Shoresy Shot on Ze...

Van Dyke skates and operates on Shoresy | photo by Dave Ferguson Toronto-based Cinematographer Brett Van Dyke (Heartland, Jann, Carter) stepped into the rink...

30/04/2025

PlayBox Neo presents Next-Generation Smart Media Solution...

Leading provider of media playout solutions PlayBox Neo will exhibit a vast array of significant upgrades to its range of smart media innovations at CABSAT from...

30/04/2025

QuickLink StudioEdge Transforms Remote Contributions for...

ITV Studios is renowned for its award-winning productions, including the reality TV phenomenon I'm a Celebrity Get Me Out of Here! Produced by Lifted Ente...

30/04/2025

UK Pavilion exhibitors continue to impact at CABSAT and S...

The UK's presence at this year's CABSAT brings together 20 innovative companies under the GREAT Britain and Northern Ireland banner. From advanced infra...

30/04/2025

Lightware Reinforces ESG Commitment with Participation in...

Lightware continues to strengthen its Environmental, Social, and Governance (ESG) initiatives by fostering diversity, inclusion, and community engagement within...

30/04/2025

LiveU to Demonstrate LiveU IQ in UK For The First Time at...

LiveU is demonstrating for the first time in the UK, its revolutionary technological breakthrough in IP-video transport, LiveU IQ (LIQ ) and bringing its expand...

30/04/2025

Calrec MPTS 2025 Preview

Stand: A40 Calrec has been putting sound in the picture for more than six decades and is still pushing the boundaries of audio broadcasting with a full range o...

30/04/2025

Buckinghamshire New University opens advanced virtual pro...

Buckinghamshire New University (BNU) has opened its new virtual production studio, designed and integrated by CJP Broadcast. The installation equips students wi...

30/04/2025

Collective Newsroom chooses nxtedition for seamless workf...

Independent news producer in India focuses on delivering stories nxtedition has supplied a complete newsroom system to Collective Newsroom, based in New Delhi,...

30/04/2025

FOR-A Showcases Next-Generation Broadcast Solutions at CA...

Connecting the present, building the future FOR-A, a cutting-edge video broadcast technology company backed by more than 50 years experience, will showcase it...

30/04/2025

DAD by NTP Technology Highlights Upcoming Expansion Optio...

DAD by NTP Technology reports a successful NAB Show in Las Vegas where the company focused on upcoming expansion options in development for its Thunder | Core a...

30/04/2025

CVP and Canon unveil 2025 Canon Stories in Motion Young F...

CVP and Canon UK & Ireland are proud to announce the winning projects from the third annual Stories in Motion Young Filmmakers Awards, which took place on the e...

30/04/2025

beIN scores world first with new beIN STREAM using Syname...

Leading video software provider, Synamedia, today announced that beIN MEDIA GROUP ( beIN'), one of the foremost global sports and entertainment broadcasters...

30/04/2025

The Canadian Premier League launches new digital experien...

The Canadian Premier League (CPL) today launched a new-look website and app, offering supporters of Canada's men's domestic professional soccer league a...

30/04/2025

FCC's Carr Says Regulator Wants to Empower Local Broadcasters'

WASHINGTON In a wide-ranging press conference, Federal Communications Commission Chair Brendan Carr had both good and bad news for broadcasters, stressing that ...

30/04/2025

Filipino Sports Streamer Leverages Quickplay Shorts for Video Prep

TORONTO Cignal TV is relying on Quickplay's Shorts tool for its recently launched Pilipinas Live Shorts service, available to millions of users of Pilipinas...

30/04/2025

TVB President and CEO Steve Lanzano to Retire

NEW YORK Steve Lanzano will retire as president and CEO of the Television Bureau of Advertising at year-end, the group said....

30/04/2025

Collective Newsroom Deploys Nxteditions Newsroom System

The news production tech provider nxtedition is reporting that it supplied a complete newsroom system to Collective Newsroom, an independent news producer based...

30/04/2025

IAB Double-Clicks on AI Efforts

NEW YORK As part of a major push to advance the role that artificial intelligence (AI) plays in the advertising industry, the Interactive Advertising Bureau has...

30/04/2025

SES Open Orbits Selected by Two National Carriers to Equip their Fleets with Truly Seamless Connectivity Services

Uzbekistan Airways is the latest airline to choose SES's network, while Thai...

30/04/2025

Loaded Uses Blackmagic Design for shroud Subathon Live Streams

Loaded Uses Blackmagic Design for shroud Subathon Live Streams Brie Clayton April 29, 2025 0 Comments Blackmagic Studio Cameras and Micro Studio Camer...

30/04/2025

Help shape the future of video creator tools with MIDiA

Help shape the future of video creator tools with MIDiA Brie Clayton April 29, 2025 0 Comments After a successful debut in 2024, MIDiA is calling once...

30/04/2025

Tania Len and Kelli O'Hara to be Honored at Boston Conservatory at Berklee's Commencement Ceremony

Tania Le n and Kelli O'Hara to be Honored at Boston Conservatory at Berklee&...

30/04/2025

Andr 3000 and Sara Bareilles to Receive Honorary Doctorates at Berklee College of Music 2025 Commencement

Andr 3000 and Sara Bareilles to Receive Honorary Doctorates at Berklee College ...

30/04/2025

Re-imagined series of Bergerac set to return to U and U&DRAMA in 2026

Damien Molony will head back to Jersey for a second series of Bergerac, written by Toby Whithouse alongside Ashley Sanders, Emilie Robson and Faebian Averies D...

30/04/2025

Advancing multi-domain EW operations: Rohde & Schwarz unveils latest innovations at AOC Europe

Advancing multi-domain EW operations: Rohde & Schwarz unveils latest innovations...

30/04/2025

Rohde & Schwarz pioneers the future of automotive Ethernet using Analog Devices' 10BASE-T1S solutions

Rohde & Schwarz pioneers the future of automotive Ethernet using Analog Devices&...

30/04/2025

Riedel Communications Expands Asia-Pacific Presence with New Office in Hong Kong

Wuppertal April 30, 2025 Riedel Communications Expands Asia-Pacific Presence with New Office in Hong KongRiedel Communications, a global leader in real-time v...

30/04/2025

Mad Unicorn' Trailer Reveals a Riveting Rags-to-Riches Saga Inspired by Thailand's First Unicorn Startup

Back to All News Mad Unicorn' Trailer Reveals a Riveting Rags-to-Riches Sa...

30/04/2025

Get Ready to Get Wild: Netflix Announces 'Mating Season', a New Adult Animated Rom-Com from the Horny Minds of 'Big Mouth'

Back to All News Get Ready to Get Wild: Netflix Announces Mating Season, a New ...

30/04/2025

Flamingo TV Bonaire B.V. Takes a Bold Step Forward in Network Transformation with Harmonic

SAN JOSE, Calif. - April 30, 2025 - Harmonic (NASDAQ: HLIT) today announced that...