PARAMICS is a traffic microsimulation software developed by Quadstone Paramics. It is also the first traffic simulation software I have used. Instead of a software, PARAMICS is more like a ecosystem. It contains everything from network Editor, Visualizer, DTA, Parallel Platform, Data Analysis, Reporting Auto-generation and Video-capturing.
Basic:
1) Originally established in the early 1990s by the UK Department for Transport.
2) The software is widely used by government agencies, consultancies and universities.
Development Platform:
C++
Excellent Core + Plugin System
Project Target:
One-stop microsimulation software
Platform Design:
1) Modeller: Build and Run a microsimulation.
2) Processor: A tool that allows simulations to be run on any number of networked PCs.
3) Analyser: A toolkit for post simulation data analysis.
4) Estimator: for OD matrix estimation in microsimulation level.
5) Converter: Network data format converter.
6) Monitor: Evaluate the levels of traffic emission pollution.
7) Programming: Enable programmers to control using C++.
8) PPM: Pedestrian Module
9) Designer: 3D Studio
Key Concepts: (Nothing New but Productive & Professional)
1) OD Matrix
2) 3-D
3) Behavior Models: Car-Following & Lane Changing
4) OD Estimation
5) Report Auto-generation
6) Parallel Computing
GUI:
Recent Updates:
1) Support Environment and Emissions
2) Support Pedestrian Movement
Success?
Yes, It is a big success!
Compared to tens of other simulation products, Paramics is extremely successfully.
Future
The core of Paramics is computational intensive and is not suitable for city-scale traffic simulation.
The current Paramics suit does not quite fit in the area of city-scale traffic simulations.
Something should be changed.
Tuesday, 9 September 2014
Monday, 1 September 2014
System Design & Analysis (4) SCATS
SCATS® (Sydney Coordinated Adaptive Traffic System) is an adaptive urban traffic management system that synchronises traffic signals to optimise traffic flow across a whole city, region or corridor.
Basic:
1) developed in Sydney, Australia by former constituents of the Roads and Maritime Services in the 1970s.
2) about 34,350 intersections in over 154 cities in 25 countries use the system. For example:
Singapore: GLIDE
Canberra "CATSS" (Canberra Automated Traffic Signal System)
Melbourne "SCRAM"
Perth "PCATS"
3) SCATS is already a recognised worldwide market leader in intelligent transport systems.
Development Platform:
1) It is a distributed system. Intersections are connected over PAPL, ADSL, PSTN.
2) Data is collected from loop detectors in intersections.
3) Signal time planing depends on real-time collected data. (Adaptive) The process happens in local PCs.
Project Target:
1) Provide an adaptive and comprehensive signal control application.
Key Concepts:
1) Interval
2) Phase
3) Phases (Phase Organization)
4) Signal Planing (Phase Timing)
5) Sub-System (Master Signal & Slave Signal)
6) Priority Vehicles (Dynamic "Phase Organization" or Dynamic "Phase Timing")
GUI:
Since it is a command system, there is no GUI.
AN example control panel:
Recent Updates:
SCATS is recently deployed in New Zealand, Hong Kong, Shanghai, Guangzhou, Amman, Tehran, Dublin, Rzeszów, Gdynia.
Success?
Yes, SCATS is a very successful system.
Designed in 1970s, even older than Windows, SCATS is still widely used in cities.
The success is based in:
1) SCATS succeed to implement its project target.
2) SCATS is extremely stable.
3) No competitors.
System Design & Analysis (3) Waze
2010, in a NUS class "Intelligent Transportation System", I introduced Waze to classmates in an assignment. At that time, it is a startup software, which has <100 users in Singapore.
2013, Google completed the acquisition of Waze for a reported US$1.3 billion. There are only 100 employees.
Basic:
1) community-driven navigation application
2) only on mobility phones
3) real-time information sharing software
4) location-based services, e.g. gas
Development Platform:
Various: iPhone and Android (majorly)
Project Target:
Solve the challenges (high map update cost and information delay) by using communities.
1) Community activeness is the key and the most valuable in this project.
2) Everything (GUI, Function and Fun) is about user activity.
System Design & Key Concepts:
1) Turn-by-turn Navigation
2) User Trajectory&Speed Uploading (updating map)
3) Real-time Road Information Update
4) User Activeness
GUI:
Recent Updates:
*In 2011 Waze Mobile updated the software to display real-time, community-curated points of interest.
*In June 2012 Waze launched an update to provide real-time fuel prices.
*In June 2013, Waze introduced a global localization project that will enable future road closures and real-time traffic updates.
Success?
Yes, it is a very successful project. The success is based in:
1) Its fundamental idea to do it is great (Great Idea) and hard to achieve (Great Leader) and hard to compete (even Google has no confident to beat it).
2) It captures user activeness. (Great Designer)
However, it meet with the monetizing problem, which is everywhere in map apps (even Google Map, Baidu Map, and off course Apple Maps and Microsoft Maps).
Bought by Google, I think it is double-benefits:
For Waze, it can use Google Ad to get incomes (Location-based Ads) from its massive users.
For Google, it can avoid another competitor. (1B is a bit too much)
Future
In my view, Waze has achieved what it planned to do.
Its functions are complete.
The future is to make it world-widely used and making money.
Finally
This post focuses on high-level system design. So, the user activeness attraction is not included.
2013, Google completed the acquisition of Waze for a reported US$1.3 billion. There are only 100 employees.
Basic:
1) community-driven navigation application
2) only on mobility phones
3) real-time information sharing software
4) location-based services, e.g. gas
Development Platform:
Various: iPhone and Android (majorly)
Project Target:
Solve the challenges (high map update cost and information delay) by using communities.
1) Community activeness is the key and the most valuable in this project.
2) Everything (GUI, Function and Fun) is about user activity.
System Design & Key Concepts:
1) Turn-by-turn Navigation
2) User Trajectory&Speed Uploading (updating map)
3) Real-time Road Information Update
4) User Activeness
GUI:
Recent Updates:
*In 2011 Waze Mobile updated the software to display real-time, community-curated points of interest.
*In June 2012 Waze launched an update to provide real-time fuel prices.
*In June 2013, Waze introduced a global localization project that will enable future road closures and real-time traffic updates.
Success?
Yes, it is a very successful project. The success is based in:
1) Its fundamental idea to do it is great (Great Idea) and hard to achieve (Great Leader) and hard to compete (even Google has no confident to beat it).
2) It captures user activeness. (Great Designer)
However, it meet with the monetizing problem, which is everywhere in map apps (even Google Map, Baidu Map, and off course Apple Maps and Microsoft Maps).
Bought by Google, I think it is double-benefits:
For Waze, it can use Google Ad to get incomes (Location-based Ads) from its massive users.
For Google, it can avoid another competitor. (1B is a bit too much)
Future
In my view, Waze has achieved what it planned to do.
Its functions are complete.
The future is to make it world-widely used and making money.
Finally
This post focuses on high-level system design. So, the user activeness attraction is not included.
Friday, 29 August 2014
System Design & Analysis (2) Microsoft Visio
Microsoft Visio 2007 is one of my favorite software. I used it to draw flow charts, diagrams and to build GUI prototypes.
Basic:
1) a drawing software to draw everything in various industry.
2) a commercial software by Microsoft to enrich Office. Thus, Visio is plugin-able in Words, PowerPoint, etc.
3) It is 2-D drawing software.
4) It was first introduced in 1992, made by the Shapeware corporation. It was acquired by Microsoft in 2000.
Development Platform:
1) Programming language: unknown.
System Design:
Using target: create any drawing in 3 basic steps
1) Choose and open a template
2) Drag and connect shapes
3) Add text to shapes
Key Concepts:
1) Stencils and templates: a group of shapes related with a topic.
2) Shapes: the basic unit that is copy-able and edit-able.
3) Data: associate data with shapes. Different shapes might have specific data and data view.
An example of stencils:
Key Product Features:
1) extremely extendable by new stencils, new shapes and new data
2) support programming
3) work with Word, PowerPoint, Access, OneNote, Access, Excel
GUI:
Recent Versions: (still not a default unit in Office)
Basic:
1) a drawing software to draw everything in various industry.
2) a commercial software by Microsoft to enrich Office. Thus, Visio is plugin-able in Words, PowerPoint, etc.
3) It is 2-D drawing software.
4) It was first introduced in 1992, made by the Shapeware corporation. It was acquired by Microsoft in 2000.
Development Platform:
1) Programming language: unknown.
System Design:
Using target: create any drawing in 3 basic steps
1) Choose and open a template
2) Drag and connect shapes
3) Add text to shapes
Key Concepts:
1) Stencils and templates: a group of shapes related with a topic.
2) Shapes: the basic unit that is copy-able and edit-able.
3) Data: associate data with shapes. Different shapes might have specific data and data view.
An example of stencils:
Key Product Features:
1) extremely extendable by new stencils, new shapes and new data
2) support programming
3) work with Word, PowerPoint, Access, OneNote, Access, Excel
GUI:
Recent Versions: (still not a default unit in Office)
- Office Visio 2007 (v12.0; Standard, Professional)
- Visio 2010 (v14.0; Standard, Professional, Premium)
- Visio 2013 (v15.0; Standard, Professional)
Success?
1) From user's point of view, VISIO is professional, powerful and user-friendly.
2) However, it is also expensive, heavy, and looks not easy to use (even through it is not).
3) From product point of view, VISIO does not get that success as Word and Excel.
For two major reasons:
A: VISIO itself is (or feels) heavy, both product and expense.
B: Microsoft did not make VISIO a default unit, and enhanced the draw features of PowerPoint. It makes VISIO not a must for non-professional users. In my view, instead of simplify VISIO for normal users (like: make stencils plugin-able and simplify the GUI), Microsoft decided to borrow VISIO to PowerPoint and leave VISIO to rich professionals and industry users.
Tuesday, 26 August 2014
Professional Research Engineer
I like the role as a "Research Engineer". It feels like the role gives me opportunity to do both research and software engineering. Then, how to behave as a Professional one?
This is the To-Do and Not-Do list. Just for my first Job.
1) To-Do
A: Do what I believe and then Attitude of making it happen.
A: Transparency, openness and genuineness.
B: Save others' time and efforts.
C: Take notes of my promises. That's a BIG mark.
D: Aim to be professional: both in hard skills and soft skills. Professional to teammates, not friendly to teammates.
E: Build trust and respect in career.
F: To open and aware.
G: keeping track of career accomplishments.
H: Learn from teammates.
I: Be easy to work with.
2) Not-Do
A: Multi-tasking too much, or Not-prioritizing
Long-term Targets
Short-term Works, like: meetings, talks and reports.
B: Complaining
Optimistic and Solving
Release angry on things, not on people.
C: Making promises you can’t keep !!!
Be serious! Save my own time !!!
Trust is more important than promises.
D: In charge of others' business.
Think about Dhinesh. Do not do that, please.
E: Afraid of mistakes.
Everyone made mistakes, calm down and avoid the same mistake.
Take the responsibility only if it is my mistake.
F: Over-work
It always (90%) does not solve the problems.
Finally, Rules above all, Be Confident and Positive.
This is the To-Do and Not-Do list. Just for my first Job.
1) To-Do
A: Do what I believe and then Attitude of making it happen.
A: Transparency, openness and genuineness.
B: Save others' time and efforts.
C: Take notes of my promises. That's a BIG mark.
D: Aim to be professional: both in hard skills and soft skills. Professional to teammates, not friendly to teammates.
E: Build trust and respect in career.
F: To open and aware.
G: keeping track of career accomplishments.
H: Learn from teammates.
I: Be easy to work with.
2) Not-Do
A: Multi-tasking too much, or Not-prioritizing
Long-term Targets
Short-term Works, like: meetings, talks and reports.
B: Complaining
Optimistic and Solving
Release angry on things, not on people.
C: Making promises you can’t keep !!!
Be serious! Save my own time !!!
Trust is more important than promises.
D: In charge of others' business.
Think about Dhinesh. Do not do that, please.
E: Afraid of mistakes.
Everyone made mistakes, calm down and avoid the same mistake.
Take the responsibility only if it is my mistake.
F: Over-work
It always (90%) does not solve the problems.
Finally, Rules above all, Be Confident and Positive.
Tuesday, 12 August 2014
职业生涯(1)
即将开始自己的第一份工作,
作为一个PhD,进入CS Industry,
想一下PhD这5年,
费了半天劲才拿到一个PhD 学位,
5年的时光,转瞬就过去了,
翻看一下Linkedin上CS PhD的职业生涯,
也算是一件很有意思的事情,
Startup,Director,Professor,Manager,Analyst,Scientist,
好多眼花缭乱的头衔,
Where is my Passion?
说不清楚,应该是介于Manager和Analyst之间,
我喜欢Software,Numbers,Algorithms, and Communicate with Teammates and Clients.
就我现在的能力而言,
编程能力已经足够自信,
算法能力也足以设计大多数的系统,
沟通能力急需改善,这也是面试Google得到的教训,清晰沟通的能力和编程能力一样重要,为此,我打算在工作前报一个澳洲的口语学习班;尽量面对面的那种;
系统设计能力不足,这是不注意观察和讨论的结果,身边的诸多系统的设计原理,我都比较陌生,诸如:Github, Ubuntu, Eclipse, G++, Qt。 对此,我打算定期学习一些身边的系统,然后写一些博客,有空的时候和朋友沟通,
这应该是我对自我职业生涯现状的认识,
具体的技术如data mining,image processing,high frequency trading,UI,website development, mobile network 等也存在很大的差别,根据最近的面试经历而言,每一个行业都存在一定的行业壁垒,
诸如PR身份的问题也是职业发展的一个重要因素,也应该在考虑范围之内,
对于时间协调,人员协调,矛盾化解,这都是我比较陌生的问题,暂时还没有打算处理这些问题,多多观察身边的事情就是了,
试着站在一个更高的角度上看现在的自己,
我对自己的定位是technical problem observer and solver, 不局限于具体的行业或者技术,发挥自己的积极能动和思考能力,为自己争取机会,
根据过去的情况来看,我犯过的错误包括:
没有二次检查重要试验结果,Less Communication,自我定位,
过去犯过的错误应该避免,我的性格不缺乏士气,但易于冒进
Thursday, 7 August 2014
System Design & Analysis (1) Octave
Octave
http://en.wikipedia.org/wiki/GNU_Octave
Basic:
1) free software under the terms of the GNU General Public License.
2) a high-level programming language.
3) a replacement of MATLAB.
4) primarily intended for numerical computations, like: regression, plot.
Development Platform:
1) written in C++ using the C++ standard library.
2) uses an interpreter to execute the Octave scripting language.
3) works with gnuplot and Grace software to create plots, graphs, and charts, and to save or print them.
4) later include a Graphical User Interface (GUI) in addition to the traditional Command Line Interface (CLI). GUI developed using Qt.
Key Product Features:
1) Support key things a programming language, e.g. variables, functions, comments.
2) Large number of supports on matrices, built-in math functions.
3) Octave treats incompatibility with MATLAB as a bug, interesting.
GUI:
Open Source Update:
2011-2012:
about 90 di erent contributors made 2917 commits, 57 of them made only 1 or 2 changes, the top 5 contributors made 2377 commits.
Incomes:
A few large donations from a small number of benefactors
Many small donations from users
Limitation:
1) Interaction with C++ and Java. In many cases, we want to use Octave code as a small part in a large project.
2) No Object concept. But I do not think it is a big limitation currently.
Success?
From users' point of view, Octave achieves its design goal as a GNL free software to replace the expensive MATLab, it is a success.
However, the developer team do need to find more ways to sell Octave.
http://en.wikipedia.org/wiki/GNU_Octave
Basic:
1) free software under the terms of the GNU General Public License.
2) a high-level programming language.
3) a replacement of MATLAB.
4) primarily intended for numerical computations, like: regression, plot.
Development Platform:
1) written in C++ using the C++ standard library.
2) uses an interpreter to execute the Octave scripting language.
3) works with gnuplot and Grace software to create plots, graphs, and charts, and to save or print them.
4) later include a Graphical User Interface (GUI) in addition to the traditional Command Line Interface (CLI). GUI developed using Qt.
Key Product Features:
1) Support key things a programming language, e.g. variables, functions, comments.
2) Large number of supports on matrices, built-in math functions.
3) Octave treats incompatibility with MATLAB as a bug, interesting.
GUI:
Open Source Update:
2011-2012:
about 90 di erent contributors made 2917 commits, 57 of them made only 1 or 2 changes, the top 5 contributors made 2377 commits.
Incomes:
A few large donations from a small number of benefactors
Many small donations from users
Limitation:
1) Interaction with C++ and Java. In many cases, we want to use Octave code as a small part in a large project.
2) No Object concept. But I do not think it is a big limitation currently.
Success?
From users' point of view, Octave achieves its design goal as a GNL free software to replace the expensive MATLab, it is a success.
However, the developer team do need to find more ways to sell Octave.
Subscribe to:
Posts (Atom)




