Code Monkey home page Code Monkey logo

serpentine-env's Introduction

Serpentine Environment

The serpentine environment is a VANET simulation using Veins-Gym to combine Veins with Reinforcement Learning. It was used for the publication "How to Train your ITS: Integrating Machine Learning with Vehicular Network Simulation", published at the 2020 IEEE Vehicular Networking Conference.

For an example on how to use this environment, please refer to the jupyter notebook in the examples directory.

For further notes on how this scenario works, please check out the guide on how to set up your own Veins-Gym environment.

License

This project is licensed under the terms of the GNU General Public License 2.0.

serpentine-env's People

Contributors

dbuse avatar mightycelu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

serpentine-env's Issues

The Message Types

Dear all,
In Serpentine Env, what kind of messages are used in Serpentine scenario? Beacon messages, CAM, etc. ?
Regards,

Cannot resolve module type Error

Dear developers and experts,

I am trying to add new modules in serpentine.scenario
As far as I understand, "add reference to the project" does not working. I need to import project under the lib file.
In order to do that, I changed snakemake file and run "snakemake -jall".
After running without any error, I thought that I could ad my submodules.
However I got an error as:

Screenshot from 2022-09-26 00-42-46

What am I doing wrong? What do you advice me?
Regards,

ZmQ error

I am getting this error;

terminate called after throwing an instance of 'zmq::error_t'
what(): Socket operation on non-socket

The communication between simulator was fine before.
I got the mean reward.
But I could not start again.

What should I do?

pip install veins_gym snakemake

I am trying to install veins_gym

veins:~% pip install veins_gym snakemake
Collecting veins_gym
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f7c44fb3c50>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/veins-gym/

Is there anything i am missing. I am using instant veins. I am working behind a proxy

Thanks

Is it possible to increase followers and leaders?

Hi,
In serpentine-env, there is just one follower and one leader.
Is it possible to increase their numbers?
For example: 5 leaders-5 followers or 1 leader-5 followers.

If so, can it be done just changing on serpentine.rou.xml?

Regards,

snakemake -jall not working on macOS

Hello, when I try to run the snakemake -jall command, I get this error env: illegal option -- C.

I tried to solve it by modifying the Snakefile rules where the env -C /desired/path/ ... command is required by replacing it with (cd /desired/path/ && ...). In this way the configure rules are working but I get an error from the build rules:

Building DAG of jobs...
Using shell: /bin/bash
Provided cores: 4
Rules claiming more threads will be scaled down.
Job stats:
job                count
---------------  -------
all                    1
build                  2
build_veins            2
build_veins_vlc        2
total                  7

Select jobs to execute...

[Mon Nov 20 11:16:38 2023]
rule build_veins:
    input: lib/veins/src/Makefile
    output: lib/veins/src/libveins.so
    jobid: 9
    reason: Missing output files: lib/veins/src/libveins.so
    wildcards: dbg=
    threads: 4
    resources: tmpdir=/var/folders/qx/8mj8c3js6zdfblrg8s_5rqtr0000gn/T

[Mon Nov 20 11:16:38 2023]
Error in rule build_veins:
    jobid: 9
    input: lib/veins/src/Makefile
    output: lib/veins/src/libveins.so
    shell:
        make -j4 -C lib/veins/src MODE=release
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2023-11-20T111637.880905.snakemake.log

If I try to run the rule of build_veins by running make -j4 -C lib/veins/src MODE=release I get:

make: *** No rule to make target ../out/clang-release/src/veins/base/connectionManager/BaseConnectionManager.o', needed by ../out/clang-release/src/libveins.dylib'.  Stop.

Can anyone help me?

Problem while runing 'snamke -jall' for installing

`~/Desktop/serpentine-env$ snakemake -jall

Building DAG of jobs...
Using shell: /usr/bin/bash
Provided cores: 4
Rules claiming more threads will be scaled down.
Job stats:
job count min threads max threads


all 1 1 1
build 2 4 4
build_veins 1 4 4
build_veins_vlc 2 4 4
total 6 1 4

Select jobs to execute...

[Wed Sep 21 10:25:07 2022]
rule build_veins_vlc:
input: lib/veins/src/libveins.so, lib/veins-vlc/src/Makefile
output: lib/veins-vlc/src/libveins-vlc.so
jobid: 10
reason: Missing output files: lib/veins-vlc/src/libveins-vlc.so
wildcards: dbg=
threads: 4
resources: tmpdir=/tmp

make: Entering directory '/home/anjie/Desktop/serpentine-env/lib/veins-vlc/src'
MSGC: veins-vlc/messages/AirFrameVlc.msg
MSGC: veins-vlc/messages/VlcMessage.msg
veins-vlc/messages/VlcMessage.msg:25: Error: Type declarations are not needed with imports, try invoking the message compiler in legacy (4.x) mode using the --msg4 option
veins-vlc/messages/VlcMessage.msg:27: Error: 'VlcMessage': unknown base class 'veins::BaseFrame1609_4'
veins-vlc/messages/VlcMessage.msg:27: Error: VlcMessage: base class is not a message (must be derived from omnetpp::cMessage)
opp_msgtool: error in 1 file(s)
veins-vlc/messages/AirFrameVlc.msg:28: Error: Type declarations are not needed with imports, try invoking the message compiler in legacy (4.x) mode using the --msg4 option
veins-vlc/messages/AirFrameVlc.msg:30: Error: 'AirFrameVlc': unknown base class 'AirFrame'
veins-vlc/messages/AirFrameVlc.msg:30: Error: AirFrameVlc: base class is not a message (must be derived from omnetpp::cMessage)
make: *** [Makefile:146: veins-vlc/messages/VlcMessage_m.h] Error 1
make: *** Waiting for unfinished jobs....
opp_msgtool: error in 1 file(s)
make: *** [Makefile:146: veins-vlc/messages/AirFrameVlc_m.h] Error 1
make: Leaving directory '/home/anjie/Desktop/serpentine-env/lib/veins-vlc/src'
[Wed Sep 21 10:25:07 2022]
Error in rule build_veins_vlc:
jobid: 10
output: lib/veins-vlc/src/libveins-vlc.so
shell:
make -j4 -C lib/veins-vlc/src MODE=release
(one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2022-09-21T102507.149167.snakemake.log
`

After snakemake -jall, there are a lot of errors,

/usr/include/google/protobuf/wire_format_lite_inl.h:138:3: error: ‘uint32’ was not declared in this scope; did you mean ‘uint128’?
138 | uint32 temp;
| ^~~~~~
| uint128
/usr/include/google/protobuf/wire_format_lite_inl.h:139:35: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
139 | if (!input->ReadLittleEndian32(&temp)) return false;
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h:140:24: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
140 | value = DecodeFloat(temp);
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h: In static member function ‘static bool google::protobuf::internal::WireFormatLite::ReadPrimitive(google::protobuf::io::CodedInputStream
, CType*) [with CType = double; google::protobuf::internal::WireFormatLite::FieldType DeclaredType = google::protobuf::internal::WireFormatLite::TYPE_DOUBLE]’:
/usr/include/google/protobuf/wire_format_lite_inl.h:147:3: error: ‘uint64’ was not declared in this scope; did you mean ‘uint’?
147 | uint64 temp;
| ^~~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:148:35: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
148 | if (!input->ReadLittleEndian64(&temp)) return false;
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h:149:25: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
149 | value = DecodeDouble(temp);
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h: In static member function ‘static bool google::protobuf::internal::WireFormatLite::ReadPrimitive(google::protobuf::io::CodedInputStream
, CType*) [with CType = bool; google::protobuf::internal::WireFormatLite::FieldType DeclaredType = google::protobuf::internal::WireFormatLite::TYPE_BOOL]’:
/usr/include/google/protobuf/wire_format_lite_inl.h:156:3: error: ‘uint64’ was not declared in this scope; did you mean ‘uint’?
156 | uint64 temp;
| ^~~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:157:29: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
157 | if (!input->ReadVarint64(&temp)) return false;
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h:158:12: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
158 | value = temp != 0;
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h: In static member function ‘static bool google::protobuf::internal::WireFormatLite::ReadPrimitive(google::protobuf::io::CodedInputStream
, CType*) [with CType = int; google::protobuf::internal::WireFormatLite::FieldType DeclaredType = google::protobuf::internal::WireFormatLite::TYPE_ENUM]’:
/usr/include/google/protobuf/wire_format_lite_inl.h:165:3: error: ‘uint32’ was not declared in this scope; did you mean ‘uint128’?
165 | uint32 temp;
| ^~~~~~
| uint128
/usr/include/google/protobuf/wire_format_lite_inl.h:166:29: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
166 | if (!input->ReadVarint32(&temp)) return false;
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h:167:29: error: ‘temp’ was not declared in this scope; did you mean ‘tm’?
167 | value = static_cast(temp);
| ^~~~
| tm
/usr/include/google/protobuf/wire_format_lite_inl.h: At global scope:
/usr/include/google/protobuf/wire_format_lite_inl.h:172:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
172 | inline const uint8
WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:179:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
179 | inline const uint8* WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:186:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
186 | inline const uint8* WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:196:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
196 | inline const uint8* WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:206:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
206 | inline const uint8* WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:216:14: error: ‘uint8’ does not name a type; did you mean ‘uint’?
216 | inline const uint8* WireFormatLite::ReadPrimitiveFromArray<
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:229:5: error: ‘uint32’ has not been declared
229 | uint32 tag,
| ^~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:247:5: error: ‘uint32’ has not been declared
247 | uint32 tag,
| ^~~~~~
In file included from /usr/include/google/protobuf/stubs/common.h:51,
from ./protobuf/veinsgym.pb.h:9,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite_inl.h: In static member function ‘static bool google::protobuf::internal::WireFormatLite::ReadRepeatedFixedSizePrimitive(int, int, google::protobuf::io::CodedInputStream*, google::protobuf::RepeatedField)’:
/usr/include/google/protobuf/wire_format_lite_inl.h:250:3: error: there are no arguments to ‘UInt32Size’ that depend on a template parameter, so a declaration of ‘UInt32Size’ must be available [-fpermissive]
250 | GOOGLE_DCHECK_EQ(UInt32Size(tag), static_cast<size_t>(tag_size));
| ^~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:250:3: error: ‘size_t’ does not name a type
250 | GOOGLE_DCHECK_EQ(UInt32Size(tag), static_cast<size_t>(tag_size));
| ^~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite_inl.h:46:1: note: ‘size_t’ is defined in header ‘’; did you forget to ‘#include ’?
45 | #include <google/protobuf/wire_format_lite.h>
+++ |+#include
46 | #include <google/protobuf/io/coded_stream.h>
/usr/include/google/protobuf/wire_format_lite_inl.h:269:11: error: ‘uint8’ does not name a type; did you mean ‘uint’?
269 | const uint8
buffer = reinterpret_cast<const uint8*>(void_pointer);
| ^~~~~
| uint
/usr/include/google/protobuf/wire_format_lite_inl.h:278:13: error: ‘buffer’ was not declared in this scope; did you mean ‘zmq::buffer’?
278 | (buffer = io::CodedInputStream::ExpectTagFromArray(
| ^~~~~~
| zmq::buffer
In file included from ./serpentine/GymConnection.h:25,
from serpentine/GymConnection.cc:23:
../lib/zmq/src/zmq/zmq.hpp:1082:14: note: ‘zmq::buffer’ declared here
1082 | const_buffer buffer(const std::basic_string<T, Traits, Allocator> &data,
| ^~~~~~
In file included from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite_inl.h:278:44: error: ‘ExpectTagFromArray’ is not a member of ‘google::protobuf::io::CodedInputStream’
278 | (buffer = io::CodedInputStream::ExpectTagFromArray(
| ^~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:280:16: error: ‘ReadPrimitiveFromArray’ was not declared in this scope
280 | buffer = ReadPrimitiveFromArray<CType, DeclaredType>(buffer, &value);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:280:44: error: expected primary-expression before ‘,’ token
280 | buffer = ReadPrimitiveFromArray<CType, DeclaredType>(buffer, &value);
| ^
/usr/include/google/protobuf/wire_format_lite_inl.h: At global scope:
/usr/include/google/protobuf/wire_format_lite_inl.h:307:1: error: ‘uint32’ was not declared in this scope; did you mean ‘uint128’?
307 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint32, TYPE_FIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:307:1: error: ‘uint32’ has not been declared
307 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint32, TYPE_FIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:307:1: error: ‘uint32’ was not declared in this scope; did you mean ‘uint128’?
307 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint32, TYPE_FIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:307:1: error: template argument 1 is invalid
307 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint32, TYPE_FIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:307:1: error: template-id ‘ReadRepeatedPrimitive<, google::protobuf::internal::WireFormatLite::TYPE_FIXED32>’ for ‘bool google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive(int, int, google::protobuf::io::CodedInputStream*, int*)’ does not match any template declaration
307 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint32, TYPE_FIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/wire_format_lite_inl.h:45,
from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite.h:283:19: note: candidate is: ‘template<class CType, google::protobuf::internal::WireFormatLite::FieldType DeclaredType> static bool google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive(int, int, google::protobuf::io::CodedInputStream*, google::protobuf::RepeatedField)’
283 | INL static bool ReadRepeatedPrimitive(int tag_size, uint32 tag,
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite_inl.h:308:1: error: ‘uint64’ was not declared in this scope; did you mean ‘uint’?
308 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint64, TYPE_FIXED64)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:308:1: error: ‘uint32’ has not been declared
308 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint64, TYPE_FIXED64)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:308:1: error: ‘uint64’ was not declared in this scope; did you mean ‘uint’?
308 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint64, TYPE_FIXED64)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:308:1: error: template argument 1 is invalid
308 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint64, TYPE_FIXED64)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:308:1: error: template-id ‘ReadRepeatedPrimitive<, google::protobuf::internal::WireFormatLite::TYPE_FIXED64>’ for ‘bool google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive(int, int, google::protobuf::io::CodedInputStream
, int*)’ does not match any template declaration
308 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(uint64, TYPE_FIXED64)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/wire_format_lite_inl.h:45,
from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite.h:283:19: note: candidate is: ‘template<class CType, google::protobuf::internal::WireFormatLite::FieldType DeclaredType> static bool google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive(int, int, google::protobuf::io::CodedInputStream*, google::protobuf::RepeatedField)’
283 | INL static bool ReadRepeatedPrimitive(int tag_size, uint32 tag,
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/map_type_handler.h:35,
from /usr/include/google/protobuf/map.h:49,
from /usr/include/google/protobuf/generated_message_table_driven.h:34,
from ./protobuf/veinsgym.pb.h:25,
from ./serpentine/GymConnection.h:27,
from serpentine/GymConnection.cc:23:
/usr/include/google/protobuf/wire_format_lite_inl.h:309:1: error: ‘int32’ was not declared in this scope; did you mean ‘rintf32’?
309 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(int32, TYPE_SFIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:309:1: error: ‘uint32’ has not been declared
309 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(int32, TYPE_SFIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:309:1: error: ‘int32’ was not declared in this scope; did you mean ‘rintf32’?
309 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(int32, TYPE_SFIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:309:1: error: template argument 1 is invalid
309 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(int32, TYPE_SFIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/wire_format_lite_inl.h:309:1: error: template-id ‘ReadRepeatedPrimitive<, google::protobuf::internal::WireFormatLite::TYPE_SFIXED32>’ for ‘bool google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive(int, int, google::protobuf::io::CodedInputStream
, int*)’ does not match any template declaration
309 | READ_REPEATED_FIXED_SIZE_PRIMITIVE(int32, TYPE_SFIXED32)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/google/protobuf/wire_format_lite_inl.h:45,
from /usr/include/google/protobuf/map_type_handler.h:35,

About the changes in omnetpp.ini file

Hello,

I am changing ini file to see the changes.
But whatever I do, the serpentine scenario runs as if default mode.

What am I doing wrong?
For example I change .node[].applType = "SerpentineApp" to some other AppFile, nothing changes.
Or I change the network= SerpentineScenario, nothing changes too.

I would be very appreciate if you show me the way.

Regards

Error while runing "snakemake -j4"

Hi,

I got the following errors while I run the snakemake -j4 command. I guess it is something wrong with the Abseil?

Building DAG of jobs...
Using shell: /usr/bin/bash
Provided cores: 4
Rules claiming more threads will be scaled down.
Job stats:
job      count    min threads    max threads
-----  -------  -------------  -------------
all          1              1              1
build        2              4              4
total        3              1              4

Select jobs to execute...

[Thu Nov 17 15:26:17 2022]
rule build:
    input: lib/veins/src/libveins_dbg.so, lib/veins-vlc/src/libveins-vlc_dbg.so, src/Makefile
    output: src/experiment_dbg
    jobid: 1
    reason: Missing output files: src/experiment_dbg
    wildcards: dbg=_dbg
    threads: 4
    resources: tmpdir=/tmp

make: Entering directory '/home/anjie/Desktop/serpentine-env/src'
protobuf/veinsgym.pb.cc
serpentine/GymConnection.cc
serpentine/GymSplitter.cc
In file included from serpentine/GymConnection.cc:23:
In file included from ./serpentine/GymConnection.h:25:
../lib/zmq/src/zmq/zmq.hpp:1205:16: warning: 'send' is deprecated: from 4.3.1, use send taking message_t and send_flags [-Wdeprecated-declarations]
        return send(msg, flags_);
               ^
../lib/zmq/src/zmq/zmq.hpp:1189:5: note: 'send' has been explicitly marked deprecated here
    ZMQ_DEPRECATED("from 4.3.1, use send taking message_t and send_flags")
    ^
../lib/zmq/src/zmq/zmq.hpp:41:31: note: expanded from macro 'ZMQ_DEPRECATED'
#define ZMQ_DEPRECATED(msg) [[deprecated(msg)]]
                              ^
In file included from protobuf/veinsgym.pb.cc:4:
protobuf/veinsgym.pb.h:244:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:245:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [23]'
    return "veinsgym.proto.Request";
           ^~~~~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:472:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:473:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Reply";
           ^~~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:693:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:694:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Init";
           ^~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:862:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:863:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [24]'
    return "veinsgym.proto.Shutdown";
           ^~~~~~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:994:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:995:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Step";
           ^~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:1180:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:1181:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Space";
           ^~~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:1453:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:1454:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [19]'
    return "veinsgym.proto.Box";
           ^~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:1613:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:1614:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [25]'
    return "veinsgym.proto.Dict.Item";
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:1785:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
protobuf/veinsgym.pb.h:1786:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Dict";
           ^~~~~~~~~~~~~~~~~~~~~
protobuf/veinsgym.pb.h:1943:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Makefile:107: out/clang-debug//protobuf/veinsgym.pb.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from serpentine/GymSplitter.cc:19:
In file included from serpentine/GymSplitter.h:22:
In file included from ./serpentine/GymConnection.h:25:
../lib/zmq/src/zmq/zmq.hpp:1205:16: warning: 'send' is deprecated: from 4.3.1, use send taking message_t and send_flags [-Wdeprecated-declarations]
        return send(msg, flags_);
               ^
../lib/zmq/src/zmq/zmq.hpp:1189:5: note: 'send' has been explicitly marked deprecated here
    ZMQ_DEPRECATED("from 4.3.1, use send taking message_t and send_flags")
    ^
../lib/zmq/src/zmq/zmq.hpp:41:31: note: expanded from macro 'ZMQ_DEPRECATED'
#define ZMQ_DEPRECATED(msg) [[deprecated(msg)]]
                              ^
In file included from serpentine/GymConnection.cc:23:
In file included from ./serpentine/GymConnection.h:27:
./protobuf/veinsgym.pb.h:244:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:245:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [23]'
    return "veinsgym.proto.Request";
           ^~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:472:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:473:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Reply";
           ^~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:693:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:694:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Init";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:862:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:863:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [24]'
    return "veinsgym.proto.Shutdown";
           ^~~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:994:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:995:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Step";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1180:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1181:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Space";
           ^~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1453:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1454:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [19]'
    return "veinsgym.proto.Box";
           ^~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1613:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1614:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [25]'
    return "veinsgym.proto.Dict.Item";
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1785:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1786:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Dict";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1943:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [Makefile:107: out/clang-debug//serpentine/GymConnection.o] Error 1
In file included from serpentine/GymSplitter.cc:19:
In file included from serpentine/GymSplitter.h:22:
In file included from ./serpentine/GymConnection.h:27:
./protobuf/veinsgym.pb.h:244:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:245:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [23]'
    return "veinsgym.proto.Request";
           ^~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:472:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:473:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Reply";
           ^~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:693:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:694:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Init";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:862:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:863:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [24]'
    return "veinsgym.proto.Shutdown";
           ^~~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:994:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:995:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Step";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1180:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1181:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [21]'
    return "veinsgym.proto.Space";
           ^~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1453:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1454:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [19]'
    return "veinsgym.proto.Box";
           ^~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1613:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1614:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [25]'
    return "veinsgym.proto.Dict.Item";
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1785:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
./protobuf/veinsgym.pb.h:1786:12: error: cannot initialize return object of type 'int' with an lvalue of type 'const char [20]'
    return "veinsgym.proto.Dict";
           ^~~~~~~~~~~~~~~~~~~~~
./protobuf/veinsgym.pb.h:1943:12: error: no member named 'absl' in the global namespace
  static ::absl::string_view FullMessageName() {
         ~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [Makefile:107: out/clang-debug//serpentine/GymSplitter.o] Error 1
make: Leaving directory '/home/anjie/Desktop/serpentine-env/src'
[Thu Nov 17 15:26:19 2022]
Error in rule build:
    jobid: 1
    input: lib/veins/src/libveins_dbg.so, lib/veins-vlc/src/libveins-vlc_dbg.so, src/Makefile
    output: src/experiment_dbg
    shell:
        make -j4 -C src MODE=debug
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2022-11-17T152617.777940.snakemake.log

Error while runing 'snamke -jall' for installing

z@z-System-Product-Name:~/Desktop/serpentine-env$ snakemake -jall
Building DAG of jobs...
Using shell: /bin/bash
Provided cores: 8
Rules claiming more threads will be scaled down.
Job stats:
job count min threads max threads


all 1 1 1
build 2 8 8
build_veins 1 8 8
build_veins_vlc 1 8 8
total 5 1 8

Select jobs to execute...

[Mon Dec 12 16:53:02 2022]
rule build:
input: lib/veins/src/libveins_dbg.so, lib/veins-vlc/src/libveins-vlc_dbg.so, src/Makefile
output: src/experiment_dbg
jobid: 1
reason: Missing output files: src/experiment_dbg
wildcards: dbg=_dbg
threads: 8
resources: tmpdir=/tmp

make: Entering directory '/home/z/Desktop/serpentine-env/src'
serpentine/GymConnection.cc
serpentine/GymSplitter.cc
In file included from ./serpentine/GymConnection.h:25:0,
from serpentine/GymConnection.cc:23:
../lib/zmq/src/zmq/zmq.hpp:70:10: fatal error: zmq.h: No such file or directory
#include <zmq.h>
^~~~~~~
compilation terminated.
Makefile:105: recipe for target 'out/gcc-debug//serpentine/GymConnection.o' failed
make: *** [out/gcc-debug//serpentine/GymConnection.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from ./serpentine/GymConnection.h:25:0,
from serpentine/GymSplitter.h:22,
from serpentine/GymSplitter.cc:19:
../lib/zmq/src/zmq/zmq.hpp:70:10: fatal error: zmq.h: No such file or directory
#include <zmq.h>
^~~~~~~
compilation terminated.
Makefile:105: recipe for target 'out/gcc-debug//serpentine/GymSplitter.o' failed
make: *** [out/gcc-debug//serpentine/GymSplitter.o] Error 1
make: Leaving directory '/home/z/Desktop/serpentine-env/src'
[Mon Dec 12 16:53:02 2022]
Error in rule build:
jobid: 1
input: lib/veins/src/libveins_dbg.so, lib/veins-vlc/src/libveins-vlc_dbg.so, src/Makefile
output: src/experiment_dbg
shell:
make -j8 -C src MODE=debug
(one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2022-12-12T165301.797820.snakemake.log

snakemake -jall produces an error

Hello,
I was trying to follow the tutorial you presented here and the in first line where I want to compile the cloned env, it produces this error in the console
Please let me know what I need to do.
Thank you in advance
Error output:
Error in rule build_veins:
jobid: 2
output: lib/veins/src/libveins_dbg.so
shell:
make -j24 -C lib/veins/src MODE=debug
(one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
The input used to generate one or several output files has changed:
To inspect which output files have changes, run 'snakemake --list-input-changes'.
To trigger a re-run, use 'snakemake -R $(snakemake --list-input-changes)'.
Complete log: /home/dlsystem/serpentine-env/.snakemake/log/2022-03-09T022605.762192.snakemake.log

Full output:
Building DAG of jobs...
The input used to generate one or several output files has changed:
To inspect which output files have changes, run 'snakemake --list-input-changes'.
To trigger a re-run, use 'snakemake -R $(snakemake --list-input-changes)'.
Using shell: /usr/bin/bash
Provided cores: 24
Rules claiming more threads will be scaled down.
Job stats:
job count min threads max threads


all 1 1 1
build 2 24 24
build_veins 2 24 24
build_veins_vlc 2 24 24
configure_veins 1 1 1
total 8 1 24

Select jobs to execute...

[Wed Mar 9 02:26:05 2022]
rule configure_veins:
input: lib/veins/src/veins/base/messages/MacPkt.msg, lib/veins/src/veins/base/messages/AirFrame.msg, lib/veins/src/veins/base/messages/BorderMsg.msg, lib/veins/src/veins/modules/messages/PhyControlMessage.msg, lib/veins/src/veins/modules/messages/DemoSafetyMessage.msg, lib/veins/src/veins/modules/messages/Mac80211Pkt.msg, lib/veins/src/veins/modules/messages/TraCITrafficLightMessage.msg, lib/veins/src/veins/modules/messages/Mac80211Ack.msg, lib/veins/src/veins/modules/messages/AckTimeOutMessage.msg, lib/veins/src/veins/modules/messages/BaseFrame1609_4.msg, lib/veins/src/veins/modules/messages/DemoServiceAdvertisement.msg, lib/veins/src/veins/modules/messages/AirFrame11p.msg, lib/veins/src/veins/modules/application/traci/TraCIDemo11pMessage.msg, lib/veins/src/veins/base/utils/NetwToMacControlInfo.cc, lib/veins/src/veins/base/utils/Heading.cc, lib/veins/src/veins/base/utils/SimpleAddress.cc, lib/veins/src/veins/base/utils/winsupport.cc, lib/veins/src/veins/base/utils/Coord.cc, lib/veins/src/veins/base/messages/MacPkt_m.cc, lib/veins/src/veins/base/messages/BorderMsg_m.cc, lib/veins/src/veins/base/messages/AirFrame_m.cc, lib/veins/src/veins/base/connectionManager/NicEntryDebug.cc, lib/veins/src/veins/base/connectionManager/NicEntryDirect.cc, lib/veins/src/veins/base/connectionManager/ChannelAccess.cc, lib/veins/src/veins/base/connectionManager/BaseConnectionManager.cc, lib/veins/src/veins/base/connectionManager/ConnectionManager.cc, lib/veins/src/veins/base/toolbox/SignalUtils.cc, lib/veins/src/veins/base/toolbox/Signal.cc, lib/veins/src/veins/base/toolbox/Spectrum.cc, lib/veins/src/veins/base/modules/BaseMacLayer.cc, lib/veins/src/veins/base/modules/BatteryAccess.cc, lib/veins/src/veins/base/modules/BaseWorldUtility.cc, lib/veins/src/veins/base/modules/BaseApplLayer.cc, lib/veins/src/veins/base/modules/BaseLayer.cc, lib/veins/src/veins/base/modules/BaseModule.cc, lib/veins/src/veins/base/modules/BaseMobility.cc, lib/veins/src/veins/base/modules/BaseBattery.cc, lib/veins/src/veins/base/phyLayer/PhyUtils.cc, lib/veins/src/veins/base/phyLayer/Decider.cc, lib/veins/src/veins/base/phyLayer/BasePhyLayer.cc, lib/veins/src/veins/base/phyLayer/Antenna.cc, lib/veins/src/veins/base/phyLayer/BaseDecider.cc, lib/veins/src/veins/base/phyLayer/ChannelInfo.cc, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightProgram.cc, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightInterface.cc, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightAbstractLogic.cc, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightSimpleLogic.cc, lib/veins/src/veins/modules/world/annotations/AnnotationManager.cc, lib/veins/src/veins/modules/world/annotations/AnnotationDummy.cc, lib/veins/src/veins/modules/mac/ieee80211p/Mac1609_4.cc, lib/veins/src/veins/modules/obstacle/MobileHostObstacle.cc, lib/veins/src/veins/modules/obstacle/ObstacleControl.cc, lib/veins/src/veins/modules/obstacle/Obstacle.cc, lib/veins/src/veins/modules/obstacle/VehicleObstacleControl.cc, lib/veins/src/veins/modules/utility/BBoxLookup.cc, lib/veins/src/veins/modules/utility/TimerManager.cc, lib/veins/src/veins/modules/utility/HasLogProxy.cc, lib/veins/src/veins/modules/phy/Decider80211p.cc, lib/veins/src/veins/modules/phy/SampledAntenna1D.cc, lib/veins/src/veins/modules/phy/NistErrorRate.cc, lib/veins/src/veins/modules/phy/PhyLayer80211p.cc, lib/veins/src/veins/modules/messages/BaseFrame1609_4_m.cc, lib/veins/src/veins/modules/messages/PhyControlMessage_m.cc, lib/veins/src/veins/modules/messages/AckTimeOutMessage_m.cc, lib/veins/src/veins/modules/messages/Mac80211Ack_m.cc, lib/veins/src/veins/modules/messages/AirFrame11p_m.cc, lib/veins/src/veins/modules/messages/DemoSafetyMessage_m.cc, lib/veins/src/veins/modules/messages/Mac80211Pkt_m.cc, lib/veins/src/veins/modules/messages/DemoServiceAdvertisement_m.cc, lib/veins/src/veins/modules/messages/TraCITrafficLightMessage_m.cc, lib/veins/src/veins/modules/application/traci/TraCIDemoRSU11p.cc, lib/veins/src/veins/modules/application/traci/TraCIDemo11pMessage_m.cc, lib/veins/src/veins/modules/application/traci/TraCIDemo11p.cc, lib/veins/src/veins/modules/application/traci/MyVeinsApp.cc, lib/veins/src/veins/modules/application/ieee80211p/DemoBaseApplLayer.cc, lib/veins/src/veins/modules/analogueModel/NakagamiFading.cc, lib/veins/src/veins/modules/analogueModel/VehicleObstacleShadowing.cc, lib/veins/src/veins/modules/analogueModel/SimplePathlossModel.cc, lib/veins/src/veins/modules/analogueModel/TwoRayInterferenceModel.cc, lib/veins/src/veins/modules/analogueModel/SimpleObstacleShadowing.cc, lib/veins/src/veins/modules/analogueModel/PERModel.cc, lib/veins/src/veins/modules/analogueModel/BreakpointPathlossModel.cc, lib/veins/src/veins/modules/mobility/LinearMobility.cc, lib/veins/src/veins/modules/mobility/traci/TraCIBuffer.cc, lib/veins/src/veins/modules/mobility/traci/TraCICoordinateTransformation.cc, lib/veins/src/veins/modules/mobility/traci/TraCILauncher.cc, lib/veins/src/veins/modules/mobility/traci/TraCIRegionOfInterest.cc, lib/veins/src/veins/modules/mobility/traci/TraCIMobility.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScreenRecorder.cc, lib/veins/src/veins/modules/mobility/traci/TraCIVehicleInserter.cc, lib/veins/src/veins/modules/mobility/traci/TraCIColor.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerForker.cc, lib/veins/src/veins/modules/mobility/traci/TraCICommandInterface.cc, lib/veins/src/veins/modules/mobility/traci/TraCIConnection.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManager.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerLaunchd.cc, lib/veins/src/veins/veins.h, lib/veins/src/veins/base/utils/HostState.h, lib/veins/src/veins/base/utils/PassedMessage.h, lib/veins/src/veins/base/utils/NetwToMacControlInfo.h, lib/veins/src/veins/base/utils/Coord.h, lib/veins/src/veins/base/utils/MacToNetwControlInfo.h, lib/veins/src/veins/base/utils/EnumBitset.h, lib/veins/src/veins/base/utils/SimpleAddress.h, lib/veins/src/veins/base/utils/AntennaPosition.h, lib/veins/src/veins/base/utils/POA.h, lib/veins/src/veins/base/utils/FindModule.h, lib/veins/src/veins/base/utils/Heading.h, lib/veins/src/veins/base/utils/Move.h, lib/veins/src/veins/base/utils/winsupport.h, lib/veins/src/veins/base/utils/FWMath.h, lib/veins/src/veins/base/messages/BorderMsg_m.h, lib/veins/src/veins/base/messages/MacPkt_m.h, lib/veins/src/veins/base/messages/AirFrame_m.h, lib/veins/src/veins/base/connectionManager/NicEntry.h, lib/veins/src/veins/base/connectionManager/ConnectionManager.h, lib/veins/src/veins/base/connectionManager/BaseConnectionManager.h, lib/veins/src/veins/base/connectionManager/ChannelAccess.h, lib/veins/src/veins/base/connectionManager/NicEntryDebug.h, lib/veins/src/veins/base/connectionManager/NicEntryDirect.h, lib/veins/src/veins/base/toolbox/SignalUtils.h, lib/veins/src/veins/base/toolbox/Signal.h, lib/veins/src/veins/base/toolbox/Spectrum.h, lib/veins/src/veins/base/modules/AddressingInterface.h, lib/veins/src/veins/base/modules/BaseBattery.h, lib/veins/src/veins/base/modules/BaseMacLayer.h, lib/veins/src/veins/base/modules/BaseWorldUtility.h, lib/veins/src/veins/base/modules/BatteryAccess.h, lib/veins/src/veins/base/modules/BaseApplLayer.h, lib/veins/src/veins/base/modules/BaseLayer.h, lib/veins/src/veins/base/modules/BaseModule.h, lib/veins/src/veins/base/modules/BaseMobility.h, lib/veins/src/veins/base/phyLayer/BaseDecider.h, lib/veins/src/veins/base/phyLayer/BasePhyLayer.h, lib/veins/src/veins/base/phyLayer/AnalogueModel.h, lib/veins/src/veins/base/phyLayer/Decider.h, lib/veins/src/veins/base/phyLayer/PhyToMacControlInfo.h, lib/veins/src/veins/base/phyLayer/DeciderToPhyInterface.h, lib/veins/src/veins/base/phyLayer/Antenna.h, lib/veins/src/veins/base/phyLayer/PhyUtils.h, lib/veins/src/veins/base/phyLayer/ChannelInfo.h, lib/veins/src/veins/base/phyLayer/MacToPhyInterface.h, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightInterface.h, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightProgram.h, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightSimpleLogic.h, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightAbstractLogic.h, lib/veins/src/veins/modules/world/annotations/AnnotationDummy.h, lib/veins/src/veins/modules/world/annotations/AnnotationManager.h, lib/veins/src/veins/modules/mac/ieee80211p/Mac80211pToPhy11pInterface.h, lib/veins/src/veins/modules/mac/ieee80211p/Mac1609_4.h, lib/veins/src/veins/modules/mac/ieee80211p/DemoBaseApplLayerToMac1609_4Interface.h, lib/veins/src/veins/modules/obstacle/MobileHostObstacle.h, lib/veins/src/veins/modules/obstacle/ObstacleControl.h, lib/veins/src/veins/modules/obstacle/Obstacle.h, lib/veins/src/veins/modules/obstacle/VehicleObstacleControl.h, lib/veins/src/veins/modules/utility/Consts80211p.h, lib/veins/src/veins/modules/utility/MacToPhyControlInfo11p.h, lib/veins/src/veins/modules/utility/BBoxLookup.h, lib/veins/src/veins/modules/utility/HasLogProxy.h, lib/veins/src/veins/modules/utility/TimerManager.h, lib/veins/src/veins/modules/utility/ConstsPhy.h, lib/veins/src/veins/modules/utility/SignalManager.h, lib/veins/src/veins/modules/phy/DeciderResult80211.h, lib/veins/src/veins/modules/phy/Decider80211pToPhy80211pInterface.h, lib/veins/src/veins/modules/phy/SampledAntenna1D.h, lib/veins/src/veins/modules/phy/PhyLayer80211p.h, lib/veins/src/veins/modules/phy/Decider80211p.h, lib/veins/src/veins/modules/phy/NistErrorRate.h, lib/veins/src/veins/modules/messages/Mac80211Pkt_m.h, lib/veins/src/veins/modules/messages/TraCITrafficLightMessage_m.h, lib/veins/src/veins/modules/messages/Mac80211Ack_m.h, lib/veins/src/veins/modules/messages/AckTimeOutMessage_m.h, lib/veins/src/veins/modules/messages/DemoSafetyMessage_m.h, lib/veins/src/veins/modules/messages/BaseFrame1609_4_m.h, lib/veins/src/veins/modules/messages/AirFrame11p_m.h, lib/veins/src/veins/modules/messages/PhyControlMessage_m.h, lib/veins/src/veins/modules/messages/DemoServiceAdvertisement_m.h, lib/veins/src/veins/modules/application/traci/TraCIDemo11pMessage_m.h, lib/veins/src/veins/modules/application/traci/TraCIDemo11p.h, lib/veins/src/veins/modules/application/traci/MyVeinsApp.h, lib/veins/src/veins/modules/application/traci/TraCIDemoRSU11p.h, lib/veins/src/veins/modules/application/ieee80211p/DemoBaseApplLayer.h, lib/veins/src/veins/modules/analogueModel/PERModel.h, lib/veins/src/veins/modules/analogueModel/TwoRayInterferenceModel.h, lib/veins/src/veins/modules/analogueModel/VehicleObstacleShadowing.h, lib/veins/src/veins/modules/analogueModel/NakagamiFading.h, lib/veins/src/veins/modules/analogueModel/SimplePathlossModel.h, lib/veins/src/veins/modules/analogueModel/SimpleObstacleShadowing.h, lib/veins/src/veins/modules/analogueModel/BreakpointPathlossModel.h, lib/veins/src/veins/modules/mobility/LinearMobility.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerForker.h, lib/veins/src/veins/modules/mobility/traci/TraCIMobility.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManager.h, lib/veins/src/veins/modules/mobility/traci/TraCIVehicleInserter.h, lib/veins/src/veins/modules/mobility/traci/TraCIConstants.h, lib/veins/src/veins/modules/mobility/traci/TraCIRegionOfInterest.h, lib/veins/src/veins/modules/mobility/traci/TraCILauncher.h, lib/veins/src/veins/modules/mobility/traci/TraCIBuffer.h, lib/veins/src/veins/modules/mobility/traci/TraCICommandInterface.h, lib/veins/src/veins/modules/mobility/traci/TraCICoordinateTransformation.h, lib/veins/src/veins/modules/mobility/traci/TraCIConnection.h, lib/veins/src/veins/modules/mobility/traci/ParBuffer.h, lib/veins/src/veins/modules/mobility/traci/VehicleSignal.h, lib/veins/src/veins/modules/mobility/traci/TraCICoord.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerLaunchd.h, lib/veins/src/veins/modules/mobility/traci/TraCIColor.h, lib/veins/src/veins/modules/mobility/traci/TraCIScreenRecorder.h
output: lib/veins/src/Makefile
jobid: 3
resources: tmpdir=/tmp

Creating Makefile in /home/dlsystem/serpentine-env/lib/veins/src...
[Wed Mar 9 02:26:05 2022]
Finished job 3.
1 of 8 steps (12%) done
Select jobs to execute...

[Wed Mar 9 02:26:05 2022]
rule build_veins:
input: lib/veins/src/Makefile
output: lib/veins/src/libveins_dbg.so
jobid: 2
wildcards: dbg=_dbg
threads: 24
resources: tmpdir=/tmp

make: Entering directory '/home/dlsystem/serpentine-env/lib/veins/src'
veins/base/connectionManager/BaseConnectionManager.cc
veins/base/connectionManager/ChannelAccess.cc
veins/base/connectionManager/ConnectionManager.cc
veins/base/connectionManager/NicEntryDebug.cc
veins/base/connectionManager/NicEntryDirect.cc
veins/base/modules/BaseApplLayer.cc
veins/base/modules/BaseBattery.cc
veins/base/modules/BaseLayer.cc
veins/base/modules/BaseMacLayer.cc
veins/base/modules/BaseMobility.cc
veins/base/modules/BaseModule.cc
veins/base/modules/BaseWorldUtility.cc
veins/base/modules/BatteryAccess.cc
veins/base/phyLayer/Antenna.cc
veins/base/phyLayer/BasePhyLayer.cc
veins/base/phyLayer/BaseDecider.cc
veins/base/phyLayer/ChannelInfo.cc
veins/base/phyLayer/Decider.cc
veins/base/phyLayer/PhyUtils.cc
veins/base/toolbox/Signal.cc
veins/base/toolbox/SignalUtils.cc
veins/base/toolbox/Spectrum.cc
veins/base/utils/Coord.cc
veins/base/utils/Heading.cc
In file included from ./veins/base/connectionManager/ConnectionManager.h:27,
from veins/base/connectionManager/ConnectionManager.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/connectionManager/ChannelAccess.h:33,
from veins/base/connectionManager/ChannelAccess.cc:29:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/connectionManager/BaseConnectionManager.h:27,
from veins/base/connectionManager/BaseConnectionManager.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseLayer.h:30,
from veins/base/modules/BaseLayer.cc:28:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/connectionManager/NicEntry.h:32,
from ./veins/base/connectionManager/NicEntryDirect.h:30,
from veins/base/connectionManager/NicEntryDirect.cc:28:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/connectionManager/NicEntry.h:32,
from ./veins/base/connectionManager/NicEntryDebug.h:30,
from veins/base/connectionManager/NicEntryDebug.cc:28:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseModule.h:31,
from veins/base/modules/BaseModule.cc:27:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BatteryAccess.h:34,
from veins/base/modules/BatteryAccess.cc:32:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseMacLayer.h:30,
from veins/base/modules/BaseMacLayer.cc:28:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/phyLayer/Decider.h:27,
from veins/base/phyLayer/Decider.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/utils/Coord.h:28,
from ./veins/base/phyLayer/Antenna.h:25,
from veins/base/phyLayer/Antenna.cc:23:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseBattery.h:27,
from veins/base/modules/BaseBattery.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseMobility.h:29,
from veins/base/modules/BaseMobility.cc:27:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseApplLayer.h:30,
from veins/base/modules/BaseApplLayer.cc:28:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/utils/Heading.h:25,
from veins/base/utils/Heading.cc:23:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/phyLayer/PhyUtils.h:30,
from veins/base/phyLayer/PhyUtils.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/toolbox/Signal.h:25,
from veins/base/toolbox/Signal.cc:23:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/phyLayer/BaseDecider.h:34,
from veins/base/phyLayer/BaseDecider.cc:32:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/phyLayer/BasePhyLayer.h:32,
from veins/base/phyLayer/BasePhyLayer.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/phyLayer/ChannelInfo.h:29,
from veins/base/phyLayer/ChannelInfo.cc:25:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/modules/BaseWorldUtility.h:29,
from veins/base/modules/BaseWorldUtility.cc:27:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/utils/Coord.h:28,
from veins/base/utils/Coord.cc:26:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/toolbox/SignalUtils.h:31,
from veins/base/toolbox/SignalUtils.cc:23:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
In file included from ./veins/base/toolbox/Spectrum.h:34,
from veins/base/toolbox/Spectrum.cc:23:
./veins/veins.h:72:26: error: ‘make_unique’ in namespace ‘std’ does not name a type
72 | using make_unique = std::make_unique;
| ^~~~~~~~~~~
veins/base/phyLayer/BaseDecider.cc: In member function ‘virtual omnetpp::simtime_t veins::BaseDecider::processUnknownSignal(veins::AirFrame*)’:
veins/base/phyLayer/BaseDecider.cc:101:66: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long int’ [-Wformat=]
101 | throw cRuntimeError("Unknown state for the AirFrame with ID %d", frame->getId());
| ~^ ~~~~~~~~~~~~~~
| | |
| int long int
| %ld
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/Decider.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseBattery.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/Antenna.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseModule.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseLayer.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BatteryAccess.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/utils/Heading.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/utils/Coord.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseApplLayer.o] Error 1
veins/base/phyLayer/BasePhyLayer.cc: In member function ‘virtual void veins::BasePhyLayer::handleAirFrame(veins::AirFrame*)’:
veins/base/phyLayer/BasePhyLayer.cc:419:55: warning: format ‘%s’ expects argument of type ‘char*’, but argument 3 has type ‘int’ [-Wformat=]
419 | throw cRuntimeError("Unknown AirFrame state: %s", frame->getState());
| ~^ ~~~~~~~~~~~~~~~~~
| | |
| char* int
| %d
veins/base/phyLayer/BasePhyLayer.cc: In member function ‘virtual std::unique_ptrveins::AirFrame veins::BasePhyLayer::createAirFrame(omnetpp::cPacket*)’:
veins/base/phyLayer/BasePhyLayer.cc:542:12: error: ‘make_unique’ was not declared in this scope; did you mean ‘std::make_unique’?
542 | return make_unique(macPkt->getName(), AIR_FRAME);
| ^~~~~~~~~~~
| std::make_unique
In file included from /usr/include/c++/9/memory:80,
from ./veins/base/phyLayer/BasePhyLayer.h:30,
from veins/base/phyLayer/BasePhyLayer.cc:25:
/usr/include/c++/9/bits/unique_ptr.h:868:5: note: ‘std::make_unique’ declared here
868 | make_unique(_Args&&...) = delete;
| ^~~~~~~~~~~
veins/base/phyLayer/BasePhyLayer.cc:542:32: error: expected primary-expression before ‘>’ token
542 | return make_unique(macPkt->getName(), AIR_FRAME);
| ^
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseMobility.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseMacLayer.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/connectionManager/NicEntryDirect.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/modules/BaseWorldUtility.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/connectionManager/NicEntryDebug.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/toolbox/Spectrum.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/BaseDecider.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/connectionManager/ConnectionManager.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/PhyUtils.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/connectionManager/ChannelAccess.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/toolbox/Signal.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/toolbox/SignalUtils.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/ChannelInfo.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/connectionManager/BaseConnectionManager.o] Error 1
make: *** [Makefile:210: ../out/gcc-debug/src/veins/base/phyLayer/BasePhyLayer.o] Error 1
make: Leaving directory '/home/dlsystem/serpentine-env/lib/veins/src'
[Wed Mar 9 02:26:07 2022]
Error in rule build_veins:
jobid: 2
output: lib/veins/src/libveins_dbg.so
shell:
make -j24 -C lib/veins/src MODE=debug
(one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
The input used to generate one or several output files has changed:
To inspect which output files have changes, run 'snakemake --list-input-changes'.
To trigger a re-run, use 'snakemake -R $(snakemake --list-input-changes)'.
Complete log: /home/dlsystem/serpentine-env/.snakemake/log/2022-03-09T022605.762192.snakemake.log

AssertionError: Observation space (None) does not inherit from gym.spaces.Space

Hi,
Excuse me, in the process of running the Serpentine tutorial, when I implement env = gym.make("veins-v1"), I encountered the following problem:

AssertionError                            Traceback (most recent call last)
/home/na/workspace/veinsv2rsu/rl_portion/serpentine-env/examples/Tutorial_Using_the_Serpentine_Scenario.ipynb Cell 9' in <cell line: 1>()
----> [1](vscode-notebook-cell:/home/na/workspace/veinsv2rsu/rl_portion/serpentine-env/examples/Tutorial_Using_the_Serpentine_Scenario.ipynb#ch0000008?line=0) env = gym.make("veins-v1")

File ~/.conda/envs/veins/lib/python3.9/site-packages/gym/envs/registration.py:601, in make(id, max_episode_steps, autoreset, disable_env_checker, **kwargs)
    599 # Run the environment checker as the lowest level wrapper
    600 if disable_env_checker is False:
--> 601     env = PassiveEnvChecker(env)
    603 # Add the order enforcing wrapper
    604 if spec_.order_enforce:

File ~/.conda/envs/veins/lib/python3.9/site-packages/gym/wrappers/env_checker.py:25, in PassiveEnvChecker.__init__(self, env)
     20 super().__init__(env)
     22 assert hasattr(
     23     env, "action_space"
     24 ), "You must specify a action space. https://www.gymlibrary.ml/content/environment_creation/"
---> 25 check_observation_space(env.action_space)
     26 assert hasattr(
     27     env, "observation_space"
     28 ), "You must specify an observation space. https://www.gymlibrary.ml/content/environment_creation/"
     29 check_action_space(env.observation_space)

File ~/.conda/envs/veins/lib/python3.9/site-packages/gym/utils/passive_env_checker.py:144, in check_observation_space(observation_space)
    142 """A passive check of the environment observation space that should not affect the environment."""
...
    148 elif isinstance(observation_space, spaces.Box):
    149     # Check if the box is an image (shape is 3 elements and the last element is 1 or 3)
    150     _check_box_observation_space(observation_space)

AssertionError: Observation space (None) does not inherit from gym.spaces.Space

I have no idea to change the Observation space in this example. Could you tell me how to solve this problem? Thank you very much!!

I want to see the animation in Qtenv for scenario

Environment

I have compiled serpentine-env and run veins_launchd -vv
Folder structure like this:
图片

Appearance

  • python file works fine:
david@david-PC:~/workspace/serpentine-env-master/examples$ ./random_agent.py 
Number of steps taken: 3680
Mean reward: 0.6655652135190473
  • After running ./run in the scenario folder, Qtenv gets stuck after selecting the configuration file:
    图片
  • But doing this in the veins and veins-vlc folder works fine:
    david@david-PC:~/workspace/serpentine-env-master/lib/veins/examples/veins$ ./run
    david@david-PC:~/workspace/serpentine-env-master/lib/veins-vlc/examples/veins-vlc$ ./run
  • However the configuration option "DriveLslc" runs with an error:
    图片

The Effect I Want

  1. I want to see the animation in Qtenv for scenario folder
    david@david-PC:~/workspace/serpentine-env-master/scenario$ ./run
  2. How can I get start to build my simulation environment? I want to study reinforcement learning for Platoon(Plexe)

Thanks for your answer

Error in rule configure_veins_vlc, configure_veins, protobuf

I encounter the problem when running seprantine scenario. Specifically, snakemake -jall yields an error, here is a log

Building DAG of jobs...
Provided cores: 8
Rules claiming more threads will be scaled down.
Job stats:
job                    count    min threads    max threads
-------------------  -------  -------------  -------------
all                        1              1              1
build                      2              8              8
build_veins                2              8              8
build_veins_vlc            2              8              8
configure                  1              1              1
configure_veins            1              1              1
configure_veins_vlc        1              1              1
protobuf                   1              1              1
total                     11              1              8

Select jobs to execute...

[Sat Dec 18 23:08:10 2021]
rule configure_veins:
    input: lib/veins/src/veins/base/messages/AirFrame.msg, lib/veins/src/veins/base/messages/BorderMsg.msg, lib/veins/src/veins/base/messages/MacPkt.msg, lib/veins/src/veins/modules/application/traci/TraCIDemo11pMessage.msg, lib/veins/src/veins/modules/messages/AckTimeOutMessage.msg, lib/veins/src/veins/modules/messages/AirFrame11p.msg, lib/veins/src/veins/modules/messages/BaseFrame1609_4.msg, lib/veins/src/veins/modules/messages/DemoSafetyMessage.msg, lib/veins/src/veins/modules/messages/DemoServiceAdvertisement.msg, lib/veins/src/veins/modules/messages/Mac80211Ack.msg, lib/veins/src/veins/modules/messages/Mac80211Pkt.msg, lib/veins/src/veins/modules/messages/PhyControlMessage.msg, lib/veins/src/veins/modules/messages/TraCITrafficLightMessage.msg, lib/veins/src/veins/base/connectionManager/BaseConnectionManager.cc, lib/veins/src/veins/base/connectionManager/ChannelAccess.cc, lib/veins/src/veins/base/connectionManager/ConnectionManager.cc, lib/veins/src/veins/base/connectionManager/NicEntryDebug.cc, lib/veins/src/veins/base/connectionManager/NicEntryDirect.cc, lib/veins/src/veins/base/modules/BaseApplLayer.cc, lib/veins/src/veins/base/modules/BaseBattery.cc, lib/veins/src/veins/base/modules/BaseLayer.cc, lib/veins/src/veins/base/modules/BaseMacLayer.cc, lib/veins/src/veins/base/modules/BaseMobility.cc, lib/veins/src/veins/base/modules/BaseModule.cc, lib/veins/src/veins/base/modules/BaseWorldUtility.cc, lib/veins/src/veins/base/modules/BatteryAccess.cc, lib/veins/src/veins/base/phyLayer/Antenna.cc, lib/veins/src/veins/base/phyLayer/BaseDecider.cc, lib/veins/src/veins/base/phyLayer/BasePhyLayer.cc, lib/veins/src/veins/base/phyLayer/ChannelInfo.cc, lib/veins/src/veins/base/phyLayer/Decider.cc, lib/veins/src/veins/base/phyLayer/PhyUtils.cc, lib/veins/src/veins/base/toolbox/Signal.cc, lib/veins/src/veins/base/toolbox/SignalUtils.cc, lib/veins/src/veins/base/toolbox/Spectrum.cc, lib/veins/src/veins/base/utils/Coord.cc, lib/veins/src/veins/base/utils/Heading.cc, lib/veins/src/veins/base/utils/NetwToMacControlInfo.cc, lib/veins/src/veins/base/utils/SimpleAddress.cc, lib/veins/src/veins/base/utils/winsupport.cc, lib/veins/src/veins/modules/analogueModel/BreakpointPathlossModel.cc, lib/veins/src/veins/modules/analogueModel/NakagamiFading.cc, lib/veins/src/veins/modules/analogueModel/PERModel.cc, lib/veins/src/veins/modules/analogueModel/SimpleObstacleShadowing.cc, lib/veins/src/veins/modules/analogueModel/SimplePathlossModel.cc, lib/veins/src/veins/modules/analogueModel/TwoRayInterferenceModel.cc, lib/veins/src/veins/modules/analogueModel/VehicleObstacleShadowing.cc, lib/veins/src/veins/modules/application/ieee80211p/DemoBaseApplLayer.cc, lib/veins/src/veins/modules/application/traci/MyVeinsApp.cc, lib/veins/src/veins/modules/application/traci/TraCIDemo11p.cc, lib/veins/src/veins/modules/application/traci/TraCIDemoRSU11p.cc, lib/veins/src/veins/modules/mac/ieee80211p/Mac1609_4.cc, lib/veins/src/veins/modules/mobility/LinearMobility.cc, lib/veins/src/veins/modules/mobility/traci/TraCIBuffer.cc, lib/veins/src/veins/modules/mobility/traci/TraCIColor.cc, lib/veins/src/veins/modules/mobility/traci/TraCICommandInterface.cc, lib/veins/src/veins/modules/mobility/traci/TraCIConnection.cc, lib/veins/src/veins/modules/mobility/traci/TraCICoordinateTransformation.cc, lib/veins/src/veins/modules/mobility/traci/TraCILauncher.cc, lib/veins/src/veins/modules/mobility/traci/TraCIMobility.cc, lib/veins/src/veins/modules/mobility/traci/TraCIRegionOfInterest.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManager.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerForker.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerLaunchd.cc, lib/veins/src/veins/modules/mobility/traci/TraCIScreenRecorder.cc, lib/veins/src/veins/modules/mobility/traci/TraCIVehicleInserter.cc, lib/veins/src/veins/modules/obstacle/MobileHostObstacle.cc, lib/veins/src/veins/modules/obstacle/Obstacle.cc, lib/veins/src/veins/modules/obstacle/ObstacleControl.cc, lib/veins/src/veins/modules/obstacle/VehicleObstacleControl.cc, lib/veins/src/veins/modules/phy/Decider80211p.cc, lib/veins/src/veins/modules/phy/NistErrorRate.cc, lib/veins/src/veins/modules/phy/PhyLayer80211p.cc, lib/veins/src/veins/modules/phy/SampledAntenna1D.cc, lib/veins/src/veins/modules/utility/BBoxLookup.cc, lib/veins/src/veins/modules/utility/HasLogProxy.cc, lib/veins/src/veins/modules/utility/TimerManager.cc, lib/veins/src/veins/modules/world/annotations/AnnotationDummy.cc, lib/veins/src/veins/modules/world/annotations/AnnotationManager.cc, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightInterface.cc, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightProgram.cc, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightAbstractLogic.cc, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightSimpleLogic.cc, lib/veins/src/veins/veins.h, lib/veins/src/veins/base/connectionManager/BaseConnectionManager.h, lib/veins/src/veins/base/connectionManager/ChannelAccess.h, lib/veins/src/veins/base/connectionManager/ConnectionManager.h, lib/veins/src/veins/base/connectionManager/NicEntry.h, lib/veins/src/veins/base/connectionManager/NicEntryDebug.h, lib/veins/src/veins/base/connectionManager/NicEntryDirect.h, lib/veins/src/veins/base/modules/AddressingInterface.h, lib/veins/src/veins/base/modules/BaseApplLayer.h, lib/veins/src/veins/base/modules/BaseBattery.h, lib/veins/src/veins/base/modules/BaseLayer.h, lib/veins/src/veins/base/modules/BaseMacLayer.h, lib/veins/src/veins/base/modules/BaseMobility.h, lib/veins/src/veins/base/modules/BaseModule.h, lib/veins/src/veins/base/modules/BaseWorldUtility.h, lib/veins/src/veins/base/modules/BatteryAccess.h, lib/veins/src/veins/base/phyLayer/AnalogueModel.h, lib/veins/src/veins/base/phyLayer/Antenna.h, lib/veins/src/veins/base/phyLayer/BaseDecider.h, lib/veins/src/veins/base/phyLayer/BasePhyLayer.h, lib/veins/src/veins/base/phyLayer/ChannelInfo.h, lib/veins/src/veins/base/phyLayer/Decider.h, lib/veins/src/veins/base/phyLayer/DeciderToPhyInterface.h, lib/veins/src/veins/base/phyLayer/MacToPhyInterface.h, lib/veins/src/veins/base/phyLayer/PhyToMacControlInfo.h, lib/veins/src/veins/base/phyLayer/PhyUtils.h, lib/veins/src/veins/base/toolbox/Signal.h, lib/veins/src/veins/base/toolbox/SignalUtils.h, lib/veins/src/veins/base/toolbox/Spectrum.h, lib/veins/src/veins/base/utils/AntennaPosition.h, lib/veins/src/veins/base/utils/Coord.h, lib/veins/src/veins/base/utils/EnumBitset.h, lib/veins/src/veins/base/utils/FindModule.h, lib/veins/src/veins/base/utils/FWMath.h, lib/veins/src/veins/base/utils/Heading.h, lib/veins/src/veins/base/utils/HostState.h, lib/veins/src/veins/base/utils/MacToNetwControlInfo.h, lib/veins/src/veins/base/utils/Move.h, lib/veins/src/veins/base/utils/NetwToMacControlInfo.h, lib/veins/src/veins/base/utils/PassedMessage.h, lib/veins/src/veins/base/utils/POA.h, lib/veins/src/veins/base/utils/SimpleAddress.h, lib/veins/src/veins/base/utils/winsupport.h, lib/veins/src/veins/modules/analogueModel/BreakpointPathlossModel.h, lib/veins/src/veins/modules/analogueModel/NakagamiFading.h, lib/veins/src/veins/modules/analogueModel/PERModel.h, lib/veins/src/veins/modules/analogueModel/SimpleObstacleShadowing.h, lib/veins/src/veins/modules/analogueModel/SimplePathlossModel.h, lib/veins/src/veins/modules/analogueModel/TwoRayInterferenceModel.h, lib/veins/src/veins/modules/analogueModel/VehicleObstacleShadowing.h, lib/veins/src/veins/modules/application/ieee80211p/DemoBaseApplLayer.h, lib/veins/src/veins/modules/application/traci/MyVeinsApp.h, lib/veins/src/veins/modules/application/traci/TraCIDemo11p.h, lib/veins/src/veins/modules/application/traci/TraCIDemoRSU11p.h, lib/veins/src/veins/modules/mac/ieee80211p/DemoBaseApplLayerToMac1609_4Interface.h, lib/veins/src/veins/modules/mac/ieee80211p/Mac1609_4.h, lib/veins/src/veins/modules/mac/ieee80211p/Mac80211pToPhy11pInterface.h, lib/veins/src/veins/modules/mobility/LinearMobility.h, lib/veins/src/veins/modules/mobility/traci/ParBuffer.h, lib/veins/src/veins/modules/mobility/traci/TraCIBuffer.h, lib/veins/src/veins/modules/mobility/traci/TraCIColor.h, lib/veins/src/veins/modules/mobility/traci/TraCICommandInterface.h, lib/veins/src/veins/modules/mobility/traci/TraCIConnection.h, lib/veins/src/veins/modules/mobility/traci/TraCIConstants.h, lib/veins/src/veins/modules/mobility/traci/TraCICoord.h, lib/veins/src/veins/modules/mobility/traci/TraCICoordinateTransformation.h, lib/veins/src/veins/modules/mobility/traci/TraCILauncher.h, lib/veins/src/veins/modules/mobility/traci/TraCIMobility.h, lib/veins/src/veins/modules/mobility/traci/TraCIRegionOfInterest.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManager.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerForker.h, lib/veins/src/veins/modules/mobility/traci/TraCIScenarioManagerLaunchd.h, lib/veins/src/veins/modules/mobility/traci/TraCIScreenRecorder.h, lib/veins/src/veins/modules/mobility/traci/TraCIVehicleInserter.h, lib/veins/src/veins/modules/mobility/traci/VehicleSignal.h, lib/veins/src/veins/modules/obstacle/MobileHostObstacle.h, lib/veins/src/veins/modules/obstacle/Obstacle.h, lib/veins/src/veins/modules/obstacle/ObstacleControl.h, lib/veins/src/veins/modules/obstacle/VehicleObstacleControl.h, lib/veins/src/veins/modules/phy/Decider80211p.h, lib/veins/src/veins/modules/phy/Decider80211pToPhy80211pInterface.h, lib/veins/src/veins/modules/phy/DeciderResult80211.h, lib/veins/src/veins/modules/phy/NistErrorRate.h, lib/veins/src/veins/modules/phy/PhyLayer80211p.h, lib/veins/src/veins/modules/phy/SampledAntenna1D.h, lib/veins/src/veins/modules/utility/BBoxLookup.h, lib/veins/src/veins/modules/utility/Consts80211p.h, lib/veins/src/veins/modules/utility/ConstsPhy.h, lib/veins/src/veins/modules/utility/HasLogProxy.h, lib/veins/src/veins/modules/utility/MacToPhyControlInfo11p.h, lib/veins/src/veins/modules/utility/SignalManager.h, lib/veins/src/veins/modules/utility/TimerManager.h, lib/veins/src/veins/modules/world/annotations/AnnotationDummy.h, lib/veins/src/veins/modules/world/annotations/AnnotationManager.h, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightInterface.h, lib/veins/src/veins/modules/world/traci/trafficLight/TraCITrafficLightProgram.h, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightAbstractLogic.h, lib/veins/src/veins/modules/world/traci/trafficLight/logics/TraCITrafficLightSimpleLogic.h
    output: lib/veins/src/Makefile
    jobid: 3
    resources: tmpdir=C:\Users\ROSTYS~1\AppData\Local\Temp


[Sat Dec 18 23:08:10 2021]
rule configure_veins_vlc:
    input: lib/veins-vlc/src/veins-vlc/messages/AirFrameVlc.msg, lib/veins-vlc/src/veins-vlc/messages/VlcMessage.msg, lib/veins-vlc/src/veins-vlc/AntennaHeadlight.cc, lib/veins-vlc/src/veins-vlc/AntennaTaillight.cc, lib/veins-vlc/src/veins-vlc/AntennaVlc.cc, lib/veins-vlc/src/veins-vlc/DeciderVlc.cc, lib/veins-vlc/src/veins-vlc/Photodiode.cc, lib/veins-vlc/src/veins-vlc/PhyLayerVlc.cc, lib/veins-vlc/src/veins-vlc/RadiationPattern.cc, lib/veins-vlc/src/veins-vlc/Splitter.cc, lib/veins-vlc/src/veins-vlc/VlcConnectionManager.cc, lib/veins-vlc/src/veins-vlc/analogueModel/EmpiricalLightModel.cc, lib/veins-vlc/src/veins-vlc/analogueModel/FittedEmpiricalLightModel.cc, lib/veins-vlc/src/veins-vlc/analogueModel/LsvLightModel.cc, lib/veins-vlc/src/veins-vlc/analogueModel/VehicleObstacleShadowingForVlc.cc, lib/veins-vlc/src/veins-vlc/application/simpleVlcApp/SimpleVlcApp.cc, lib/veins-vlc/src/veins-vlc/mac/MacLayerVlc.cc, lib/veins-vlc/src/veins-vlc/utility/Utils.cc, lib/veins-vlc/src/veins-vlc/AntennaHeadlight.h, lib/veins-vlc/src/veins-vlc/AntennaTaillight.h, lib/veins-vlc/src/veins-vlc/AntennaVlc.h, lib/veins-vlc/src/veins-vlc/DeciderVlc.h, lib/veins-vlc/src/veins-vlc/Photodiode.h, lib/veins-vlc/src/veins-vlc/PhyLayerVlc.h, lib/veins-vlc/src/veins-vlc/RadiationPattern.h, lib/veins-vlc/src/veins-vlc/Splitter.h, lib/veins-vlc/src/veins-vlc/veins-vlc.h, lib/veins-vlc/src/veins-vlc/VlcConnectionManager.h, lib/veins-vlc/src/veins-vlc/analogueModel/EmpiricalLightModel.h, lib/veins-vlc/src/veins-vlc/analogueModel/FittedEmpiricalLightModel.h, lib/veins-vlc/src/veins-vlc/analogueModel/LsvLightModel.h, lib/veins-vlc/src/veins-vlc/analogueModel/VehicleObstacleShadowingForVlc.h, lib/veins-vlc/src/veins-vlc/application/simpleVlcApp/SimpleVlcApp.h, lib/veins-vlc/src/veins-vlc/mac/MacLayerVlc.h, lib/veins-vlc/src/veins-vlc/utility/ConstsVlc.h, lib/veins-vlc/src/veins-vlc/utility/Utils.h
    output: lib/veins-vlc/src/Makefile
    jobid: 5
    resources: tmpdir=C:\Users\ROSTYS~1\AppData\Local\Temp


[Sat Dec 18 23:08:10 2021]
rule protobuf:
    input: src/protobuf/veinsgym.proto
    output: src/protobuf/veinsgym.pb.cc, src/protobuf/veinsgym.pb.h
    jobid: 7
    wildcards: file=veinsgym
    resources: tmpdir=C:\Users\ROSTYS~1\AppData\Local\Temp

[Sat Dec 18 23:08:10 2021]
[Sat Dec 18 23:08:10 2021]
Error in rule configure_veins_vlc:
Error in rule configure_veins:
    jobid: 5
    jobid: 3
    output: lib/veins-vlc/src/Makefile
    output: lib/veins/src/Makefile
    shell:
        env -C lib/veins-vlc ./configure --with-veins=../veins
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)
    shell:
        env -C lib/veins ./configure
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

[Sat Dec 18 23:08:10 2021]

Error in rule protobuf:
    jobid: 7
    output: src/protobuf/veinsgym.pb.cc, src/protobuf/veinsgym.pb.h
    shell:
        env protoc --proto_path src/protobuf --cpp_out src/protobuf src/protobuf/veinsgym.proto
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: C:\Users\User\git\serpentine-env\.snakemake\log\2021-12-18T230810.057922.snakemake.log

I use windows 10, 64 bit
Python 3.8
veins-gym 0.3.0
gym 0.21.0
omnetpp 5.6.2
sumo-1.8.0
veins 5.2
protoc-3.19.1

Note that I also receive an error when running opp_run. From the error message it does not seem that those issues are related, but if they are - I will provide the log.

How could I solve the problem? Thank you!

Creating a connection

Hello, Thanks for this great work.
It has been really difficult for me to build the connection for our project as the documentation is very simplified, and the example is a bit complicated and uses extra material.
I would really appreciate it if you just specify what files we simply need to include to our project to assign the action, reward and observation. and what files we need to build the connection through the proto.
Thanks again

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.