https://pubs.acs.org/doi/10.1021/acs.jcim.3c00978
Pencarian molekuler penting dalam bidang kimia, biologi, dan informatika untuk mengidentifikasi struktur molekul dalam kumpulan data yang besar, meningkatkan penemuan pengetahuan dan inovasi, dan menjadikan data kimia FAIR (dapat ditemukan, dapat diakses, dapat dioperasikan, dapat digunakan kembali). Algoritma pencarian untuk polimer secara signifikan kurang berkembang dibandingkan dengan algoritma untuk molekul kecil karena pencarian polimer bergantung pada pencarian berdasarkan nama polimer, yang dapat menjadi tantangan karena penamaan polimer terlalu luas (misalnya polietilen), rumit untuk struktur kimia yang kompleks, dan seringkali tidak sesuai. pada konvensi resmi IUPAC. Pencarian struktur kimia dalam polimer terbatas pada substruktur, seperti monomer, tanpa kesadaran akan konektivitas atau topologi. Karya ini memperkenalkan bahasa kueri baru dan algoritma pencarian traversal grafik untuk polimer yang menyediakan metode pencarian pertama yang mampu menangkap sepenuhnya semua struktur kimia yang ada dalam polimer. Bahasa kueri BigSMARTS, perpanjangan dari bahasa SMARTS molekul kecil, memungkinkan pengguna menulis kueri yang melokalisasi pencarian monomer dan grup fungsional ke berbagai bagian polimer, seperti blok tengah triblock, rantai samping cangkok, dan tulang punggung unit berulang. Algoritma pencarian substruktur didasarkan pada traversal representasi grafik dari fungsi pembangkit untuk grafik stokastik polimer. Secara operasional, algoritma pertama-tama mengidentifikasi siklus yang mewakili monomer dan kemudian kelompok akhir dan akhirnya melakukan pencarian mendalam untuk mencocokkan seluruh subgraf. Untuk memvalidasi algoritme, ratusan kueri dicari berdasarkan ratusan kimia target dan topologi dari literatur, dengan sekitar 440.000 pasangan kueri-target. Alat ini menyediakan algoritma terperinci yang dapat diimplementasikan di mesin pencari untuk memberikan hasil pencarian dengan pencocokan penuh antara konektivitas monomer dan topologi polimer.
Tabel 1. Kueri dengan peningkatan batasan pada ansambel target yang cocok.
SMART Besar | Arti | # BigSMILES Hits |
---|---|---|
CCO | etanol SMARTS yang mencari seluruh BigSMILES | 207 |
{[]CCO[]} | etanol SMARTS yang melokalisasi serangan ke unit berulang | 198 |
{[][<]CCO[>][]} | Kueri PEG dengan grup akhir wildcard yang melokalisasi hit ke tulang punggung unit berulang | 68 |
{[][<][CH2][CH2]O[>][]} | mencegah kecocokan dengan grup liontin yang tidak ditentukan dalam kueri | 57 |
{[][<][CH2][CH2]O[>],!*[]} | mencegah kecocokan dengan unit pengulangan tambahan yang tidak ditentukan dalam kueri | 45 |
{[][<][CH2][CH2]O[>],!*;!*[]} | mencegah kecocokan dengan unit berulang tambahan dan grup akhir yang tidak ditentukan dalam kueri | 1 |
Tabel 2. Mutasi unit berulang yang tidak mempengaruhi target yang cocok.
SMART Besar | Mengubah | # BigSMILES Hits |
---|---|---|
{[][<]CCO[>][]} | Pencarian tulang punggung PEG | 68 |
{[][>]CCO[<][]} | perubahan deskriptor ikatan | 68 |
{[][<]COC[>][]} | pergeseran bingkai | 68 |
{[][<]OCC[>][]} | inversi | 68 |
{[][<]C[<2],[>2]CO[>][]} | membelah | 68 |
{[][<]CCO[>],[<]CCO[>][]} | duplikasi | 68 |
Tabel 3. Pasangan target kueri kopolimer blok.
SMART Besar | Mengubah | # BigSMILES Hits |
---|---|---|
{[][>]CC(c1ccccc1)[<][>]}?*{[>][<]CC(C(=O)O)[>][]} | substruktur blok polistiren -b -poliakrilat dengan penghubung wildcard | 11 |
{[][$]CC(c1ccccc1)[$][$]}{[$][$]CC(C(=O)O)[$][]} | tidak ada tautan wildcard | 7 |
{[][$]CC(C(=O)O)[$][$]}{[$][$]CC(c1ccccc1)[$][]} | balikkan baloknya | 7 |
{[][<]CC(c1ccccc1)[>][<]}{[>][<]CC(C(=O)O)[>][]} | unit pengulangan head-to-tail saja | 7 |
{[][<]CC(c1ccccc1)[>],[<]CC(c1ccccc1)[>2],[<2]CC(C(=O)O)[>2][]} | satu objek stokastik, tetapi masih mengkodekan diblock! | 7 |
{[][<]CC(c1ccccc1)[>];[<]CC(c1ccccc1){[>][<]CC(C(=O)O)[>][]}[]} | representasi kelompok akhir implisit/eksplisit | 7 |
Tabel 4. Pasangan target kueri jaringan polimer.
SMART Besar | Mengubah | # BigSMILES Hits |
---|---|---|
{[][<]CCCCC(C)(C)C(=O)O{[>][<]CCO[>][<]}C(=O)C(C)(C)CCCC[<] ,[>]n1cc([<2])nn1,[>2]COCC(COC[>2])(COC[>2])C[]} | Jaringan polimer A2 + B3 | 2 |
{[][<]CCCCC(C)(C)C(=O)O{[>][<]CCOCCO[>][<]}C(=O)C(C)(C)CCCC[<] ,[>]n1cc([<2])nn1,[>2]COCC(COC[>2])(COC[>2])C[]} | unit pengulangan bersarang yang diduplikasi | 2 |
{[][<]CCCCC(C)(C)C(=O)O{[>][<]C[<3],[>3]CO[>][<]}C(=O)C (C)(C)CCCC[<],[>]n1cc([<2])nn1,[>2]COCC(COC[>2])(COC[>2])C[]} | pemisahan unit berulang bersarang | 2 |
{[][>]CCCCC(C)(C)C(=O)O{[>][<]CCO[>][<]}C(=O)C(C)(C)CCCC[>] ,[<]n1cc([<5])nn1,[>5]COCC(COC[>5])(COC[>5])C[]} | perubahan deskriptor ikatan | 2 |
Tabel 5. Kueri grafik topologi.
SMART Besar | Arti | # BigSMILES Hits |
---|---|---|
{[][]} | objek stokastik wildcard, cocok dengan semua polimer | 489 |
{[][]}!{[][]} | hanya satu objek stokastik, tidak cocok dengan diblock, triblock, atau bintang | 382 |
{[][]}?*{[][]} | substruktur diblock, dapat cocok dengan triblock dan tetrablock | 107 |
{[][]}?*{[][]}!{[][]} | diblock substruktur tanpa blok lain | 78 |
{[][]}?*{[][]}?*{[][]} | substruktur triblock, dapat cocok dengan tetrablock dan hexablock | 15 |
{[][]}?*{[][]}?*{[][]}!{[][]} | substruktur triblock tanpa blok lain | 2 |
{[][<]?*{[>][<]?*[>][<]}?*[>][]} | topologi tersegmentasi (objek bersarang di sepanjang tulang punggung) | 10 |
{[][<]?*(?*{[>][<]?*[>][]})?*[>][]} | topologi graft (objek bersarang di sidechain) | 11 |
{[][]}?*(?*{[][]})?*{[][]} | Substruktur polimer bintang 3 lengan | 21 |
Tabel 6. Grup fungsional sepanjang kueri tulang punggung.
SMART Besar | Kelas Kimia | # BigSMILES Hits |
---|---|---|
{[][<]C(=O)O?*[>][]} | poliester | 75 |
{[][<]OC(=O)O?*[>][]} | polikarbonat | 29 |
{[][<]NC(=O)O?*[>][]} | poliuretan | 1 |
{[][<]C=C?*[>][]} | polidiena | 31 |
{[][<]NC(=O)N?*[>][]} | poliurea | 6 |
Ini adalah kasus sederhana, namun tidak ada batasan pada jumlah unit berulang dan grup akhir dalam kueri dan target, sehingga sangat meningkatkan kompleksitas pencarian. Algoritme menangani semua kasus ini.
https://doi.org/10.5281/zenodo.10702689
Kumpulan data dirilis di bawah CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) di Zenodo (https://doi.org/10.5281/zenodo.10702689).