SUMO二次开发 Traci自定义车辆类型

2023-10-16 04:20

本文主要是介绍SUMO二次开发 Traci自定义车辆类型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SUMO二次开发 Traci自定义车辆类型

当我们在使用sumo做微观仿真时,基于文件形式的仿真可以在route文件中直接明了地指定车辆属性、类型和所使用的跟驰模型等。但是如果是基于python/java的二次开发中,大家会发现其中并没有直接提供这些修改参数的接口。本文中分享一种基于Traci接口自定义车类类型的一种方法。

假设Traci自定义车辆类型的需求是更换跟驰模式,sumo的默认跟驰模型为krauss模型,现需将仿真默认的模型换成IDM模型。基于route文件下的仿真,直接在route文件中增加一条车辆类型的定义[type1]即可,然后在route文件中设置车辆和交通流进行仿真:

<routes><vType id="type1" length="100" minGap="2" carFollowModel="IDM" tau="1.0"/>
</routes>

但是在traci二次开发情况下,车辆生成直接使用traci.vehicle.add()接口,不需要route文件,并且没有改变跟驰模型的traci接口。怎么才能实现上述需求呢?

这时候我们看看add()函数的参数列表:
在这里插入图片描述
里面有一个typeID='DEFAUTY_VEHTYPE’参数,是否感到跟route文件自定义车辆类型相似?在traci接口中调用add()函数,修改参数的默认值为route文件里自定义的车辆类型名称:

traci.vehicle.addFull(vehID, routeID, departLane="best", typeID='type1')

仿真对应的图像:
在这里插入图片描述
你会发现出现了类似火车一样的汽车,这就是type1定义的车辆类型!至此,利用traci接口实现自定义车辆类型的任务完美结束!

这篇关于SUMO二次开发 Traci自定义车辆类型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/219013

相关文章

Java实现自定义table宽高的示例代码

《Java实现自定义table宽高的示例代码》在桌面应用、管理系统乃至报表工具中,表格(JTable)作为最常用的数据展示组件,不仅承载对数据的增删改查,还需要配合布局与视觉需求,而JavaSwing... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请

Spring Security自定义身份认证的实现方法

《SpringSecurity自定义身份认证的实现方法》:本文主要介绍SpringSecurity自定义身份认证的实现方法,下面对SpringSecurity的这三种自定义身份认证进行详细讲解,... 目录1.内存身份认证(1)创建配置类(2)验证内存身份认证2.JDBC身份认证(1)数据准备 (2)配置依

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

Pydantic中Optional 和Union类型的使用

《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio