Я новичок в питоне.Моя проблема - это взаимодействие двух машин, которые должны пересечь простое пересечение.Я уже получил нужный мне ответ на языке FIACRE.На этом языке я реализовал сетку 6 x 6 следующим образом:
a= [[1,1,1,1,1,1],
[1,1,0,2,1,1],
[1,3,0,0,0,1],
[1,0,0,0,0,1],
[1,1,0,0,1,1],
[1,1,1,1,1,1]]
Где 1 - это тротуары, 0 - это улицы, а 2 и 3 - машины.Я получил список результатов как этот: m1, m2, m3, m4, m5 и m6.Каждый из них представляет своего рода движение.
#(m,n) and (y,x) are the coordinates for each car
# this is how I implemented in FIACRE, not in python
m1: if a[y][x]=2 and a[y][x-1]=0; then a[y][x-1]:=2; a[y][x]:=0; x:=x-1;
m2: if a[y][x]=2 and a[y+1][x]=0; then a[y+1][x]:=2; a[y][x]:=0; y:=y+1;
m3: if a[y][x]=2 and a[y][x+1]=0; then a[y][x+1]:=2; a[y][x]:=0; x:=x+1;
m4: if a[m][n]=3 and a[m][n+1]=0; then a[m][n+1]:=3; a[m][n]:=0; n:=n+1;
m5: if a[m][n]=3 and a[m-1][n]=0; then a[m-1][n]:=3; a[m][n]:=0; m:=m-1;
m6: if a[m][n]=3 and a[m+1][n]=0; then a[m+1][n]:=3; a[m][n]:=0; m:=m+1;
Я начал реализовывать код Python:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
# here I import the .txt file with the m steps obtained in FIACRE
steps = pd.read_table("C:\\Users\\...\\ file.txt")
nrows, ncols = 6,6 #number of rows and columns
# Make a 6x6 grid...
image = np.array([[1,1,1,1,1,1],
[1,1,0,3,1,1],
[1,2,0,0,0,1],
[1,0,0,0,0,1],
[1,1,0,0,1,1],
[1,1,1,1,1,1]])
plt.matshow(image)
plt.show()
Я ожидал, что это код, который реализует шаги, которые мне нужноизменить массив (изображение).Затем анимируйте массивы, полученные на каждом шаге, чтобы смоделировать движение автомобиля, и сохраните в формате GIF.