SUMO文档004:安装SUMO及简单操作

1、安装SUMO

Windows版本:分为32位和64位安装包和zip压缩包。区别在于有没有管理员权限。下载链接
如果想通过源码编译,请移步至此。
Linux版本:(略)
MacOS版本:(略)

2、使用SUMO命令行应用

许多SUMO包里的程序应用是命令行工具。只有SUMO-GUI不是。如果你不知道“命令行”是什么,那么建议你阅读基本计算机技巧页面。

以下内容介绍了SUMO匹配程序的一些特点。

2.1从命令行使用SUMO的应用

SUMO应用程序是普通的应用程序。你只要在命令行中输入他们的名称就能运行他们。比如NETGENRATE被调用通过

netgenerate.exe

这样就启动了程序。因为并没有给它任何的参数,因此程序不知道该打印什么,智能输出它自己的信息:

SUMO netgenerate Version 0.27.1
 Copyright (C) 2001-2015 DLR and contributors; http://sumo.dlr.de
 License GPLv3+: GNU GPL Version 3 or later <http://gnu.org/licenses/gpl.html>
 Use --help to get the list of options.

2.2 选项

每个应用程序都有一组选项,该选项定义哪些文件应被处理或生成,或哪些定义了应用程序的行为。通常情况下,一个应用程序需要至少两个参数-一个输入文件和一个输出文件-但几乎总是更多的参数用于细粒度的控制(fine-grained control)。每个应用程序的选项都在应用程序的描述中描述。在下面描述了如何设置选项。

2.3命令行的选项设置

有两种选项:布尔选项,不需要一个参数,如果选项是存在的并设置为真的(但接受通常的布尔值,如“真”和“假”作为参数)和需要一个参数的选项。在命令行上设置一个参数,由两个部分组成:选项名称和选项的值。例如,如果一个人想要模拟加载特定的道路网络,“mynet.net.XML”,以下必须写:

--net mynet.net.xml

“--”在最前面,指示选项的常明诚紧跟其后。空格后是选项的值。也可以用“=”代替空白格。

--net=mynet.net.xml

很多时候可以缩写。比如—net可以缩写为-n,如:

-n mynet.net.xml

这个例子和前面两个例子一样效果(注意缩写后变成一个-)。并且注意并不是所有的缩写具有相同的意义。

2.4选项值类型

SUMO程序知道哪一种类型的值是他们所期待的。比如,NETGENERATE允许设置默认的车道数,当然必须是整数。如果给它一个string类型或者其他的类型数据,程序就会报错。请注意浮点数的小数点是一个点(.)编码的。

一个比较特别的例子就是列表(lists),比如加载进行模拟的附加文件列表。当你给了多个文件,文件之间必须用逗号隔开。这个同样应用于其他的数值类型,比如整数或者浮点数。

3、配置文件

因为选项列表可能会很长,配置文件被引入。您可以设置一个配置文件,其中包含运行应用程序的所有参数。此外,您必须只使用此配置文件启动应用程序

配置文件是一个XML文件,有一个名为“configuration”的根元素。选项被写为元素名称,在属性value中存储值。命令行语句“—net-file test.net.xml”可以改写为<net-filevalue=”test.net.xml”>。对于布尔值,正确的话对应:true、on、yes、1;错误的话对应:false、off、no、0;

举例说明,配置文件(让我们保存为“test.sumocfg”)样式如下:

<configuration>
    <input>
        <net-file value="test.net.xml"/>
        <route-files value="test.rou.xml"/>
        <additional-files value="test.add.xml"/>
    </input>
</configuration>

“input”部分只是文件目的,并没有功能意义。

一个比较简短但是同样功能的配置文件如下:

<configuration>
    <n v="test.net.xml"/>
    <r v="test.rou.xml"/>
    <a v="test.add.xml"/>
</configuration>

由SUMO程序执行调用,应该为:

sumo.exe -c test.sumocfg

使用选项“—configuration-file ”或者“-c”直接运行配置文件,在命令行中也可以直接省去“-c”:

sumo.exe test.sumocfg

 3.1配置文件的命名约定

根据目标应用程序,配置文件有不同的扩展。强烈建议遵守本公约。针对使用SUMO-GUI模拟配置的更是必须遵守,因为SUMO-GUI只能够读取命名为“*.sumocfg”模拟配置文件。

在页面 used file extensions中可以找到所有配置扩展的约定

3.2配置文件vs.命令行参数

除了配置文件,更多的命令行参数能够通过命令行赋值。如果一个参数设置在指定的配置文件中,以及在命令行上,命令行上的值可以使用。如果您想禁用配置文件中启用的布尔选项,您需要显式地在命令行上给出“错误”的值,就像--verbose false

生成配置文件、模板和模式(schemata)

SUMO程序允许你生成配置文件模板。保存一个空的配置文件(配置文件模板)是允许的。可以通过命令:--save-template<FILE>实现。在这种情况下,配置只包含填充了它们的默认值的参数。

还可以保存包含当前设置值的配置文件。一个应用程序可以强制使用选项来做这个 --save-configuration<FILE>

最后但并非最不重要,可以生成一个XML模式(使用选项--save-schema<FILE>)来验证配置文件对。对于SUMO程序来说,这个模式应该和 http://sumo-sim.org/xsd/sumoConfiguration.xsd(分别为其他的可执行文件)上的相等请注意,该模式比SUMO选项解析器更严格,因为它不仅验证了上述详细版。

在任何情况下,如果要进一步的参数的信息,也可以通过选项--save-commented然后,对每个参数产生一些进一步的信息。

4、常用选项

SUMO程序共享几个选项。在下面会详细讲解。

报告选项(reportingoptions)

Option

Description

-v <BOOL>
--verbose <BOOL>

切换到详细的输出。默认值:false

--print-options <BOOL>

在处理前打印选项值;默认值:false

-? <BOOL>
--help <BOOL>

打印到屏幕。默认值:false

-V <BOOL>
--version <BOOL>

打印当前版本;默认值:false

-X <STRING>
--xml-validation <STRING>

设置XML输入的模式验证方案(“never”、“auto”或“always”);默认值:auto

--xml-validation.net <STRING>

设置SUMO网络输入的模式验证方案(“never”、“auto”或“always”);默认值:never

-W <BOOL>
--no-warnings <BOOL>

不输出警告;默认值:false

-l <FILE>
--log <FILE>

将所有信息写入文件(意味着冗长)

--message-log <FILE>

将所有非错误信息写入文件(意味着冗长)

--error-log <FILE>

将所有错误信息写入文件

 --log 和 --message-log选项能够详细的输出但是只能输出到给定的文件(除非 –verbose也被使用)。错误信息总是打印到控制台(除了一个可能的log文件)

XML validation 选项能使 XMLschema processingXML分析器中运行。这进行了一个基本的输入验证,并强烈推荐,特别是对初学者,因为它很容易发现在输入中的拼写错误,否则可能会默默地忽略。如果在输入文件中声明XML模式,则只执行验证。只有当XML-schema在输入文件中明确时验证才会有作用。

4.1随机数值选项

这些选项配置了随机数字生成器的种子是如何生成的。相同的种子导致相同的序列产生的随机数。

默认情况下,种子是硬编码固定值( a hard-coded fixed value)。因此,只要配置选项设置为相同,那么重复的输出总会相同。为了改变这种状况,可是已使用如下选项:

Option

Description

--seed <INT>

为随机数发生器设置一个特定的种子。通过使用不同的值,你可以有不同的,但仍然是可重复的模拟运行。

--random

让SUMO选择一个随机数种子。如果可利用,种子将基于/dev/urandom否则种子将根据系统时间进行衍生。这个选项的优先级高于--seed


5生成和读取文件

几乎每个来自SUMO生成或者读取的文件都是用XML写的。在开始SUMO之前,你应该熟悉XML使用。SUMO允许你导入不同来源的文件不仅仅是SUMO本地文件(road network descriptions, route and/or demand descriptions,infrastructure descriptions, etc)。XML文件能够通过一般的文本编辑器进行编辑。然而,其他几个工具存在,并可以重复使用。

针对SUMO使用的几种文件类型,sxd(XML Schema Definition)文件存在。关于文件类型的问题请阅读页面(file extensions )。

5.1使用XML的提示

在win系统上默认的XML阅读器是IE浏览器。它可用于验证你的XML文件。如果IE全部加载完成,那XML的语法应该是正确的。

Eclipse 允许书写XML文件作为一个给定的xsd (XML Schema Definition)

5.2写文件

有几个选项期望写入文件名称作为参数值。当在命令行中,给定的路径被假定为相对于当前工作目录。当在配置文件中时,文件路径被假定为相对于配置文件的路径。绝对路径当然也是可以的。

通常,同名的现有文件被覆盖没有警告。输出文件的目录必须存在。

除了写文件,进一步:

1、写进空设备(不输出):使用“NUL”或“/dev/null”为文件名(包括符号工作平台无关)

2、写入一个套接字socket:使用“<HOST><POST>”文件名

3、写stdout(命令行打印):使用“stdout”或“-”为文件名

4、写stderr:使用“stderr”作为文件名

5、将文件名中的“TIME”替换为程序的启动时间。

At themoment it is not possible to read input from sockets or from stdin.

目前,从socket或者stdin中读取输入是不可能的。

NOTE:多样数据源允许有相同的输出文件。

6、从命令行使用Python工具

很多SUMO工具类程序(在安装包/tools文件夹中)是由python编程语言编写。为了使用它们,python2.7必须安装到你的电脑上。

然后确保SUMO环境变量设置正确。最简单的方法是直接打开命令行工具,通过start-command-line.bat.

然后,你需要确保电脑知道去哪里寻找python tools,当然最简单的方法就是直接使用全路径,但是比较玛法。你也可以把工具包加入到path路径。(环境变量设置)

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值