Bir Matematik Öğretmenine tavsiyeler

Yaklaşık 1.5aydır pythonla ilgileniyorum. Bu dili bir kaç arkadaşımın tavsiyesi üzerine tercih ettim ve ilk kullandığım dilde python daha öncesi yok.
Benim amacım şu kendimi mesleki anlamda geliştirebileceğim matematiksel uygulamalar yapabileceğim bir duruma gelmek.Aynı zamanda algoritma ile uğraşmayı seviyorum. Algoritma örnekleri için kaynak bulamadım kendimce birşeyler yapıyorum. Çeşitli örnekleri nerden bulabilirim .Birde internet de kaynaklar hep İngilizce türkçe kaynaklarda varmı?
YouTube dan çeşitli videoları izleyerek başlangıç seviyesinde dili temel olarak kavradığımı düşünüyorum.Gelişimim için ne gibi tavsiyeleriniz olur fikirlerinizi merak ediyorum.

2 Beğeni

Normal olarak ağırlık İngilizce kaynaklarda. Buradaki gibi siteler algoritma geliştirme yeteneğini arttırmak amacı ile oluşturulmuş. Onlara göz atabilirsiniz. İlla Türkçe bir kaynak istiyorsanız buraya bakabilirsiniz veya hangi konu ile alakalı kaynak istediğinizi söyleyebilirsiniz, bilenler varsa yardım eder.

Biraz amacınıza bağlı, matematiksel uygulama yapmak istiyorum dediniz. Mesela bu uygulamalar açtığınız konularda yazdığımız gibi uygulamalar olacak ise matematiksel işlemlerde daha hızlı olan diller öğrenmeniz iyi olabilir. Bu işler için geliştirilmiş kütüphanelere de göz atabilirsiniz. Arayüze de sahip olacak, kullanıcıya hitap edecek programlar istiyorsanız yine gerekli kütüphaneleri öğrenebilirsiniz (mesela Python için Tkinter).

2 Beğeni

Öncelikle verdiğiniz bilgiler için teşekkürler.
Bazı problemlerle karşılaşıyorum ve şuanki bilgilerim yetersiz kalıyor mesela ben itertools modülünü öğrenmeden önce açtığım konulardaki soruların cevabını bulmakta zorlanıyordum çok işime yaradı. Başka örnek verecek olursak mesela bir şekil var elimde ve o şekildeki en kısa yolu bulmak istiyorum veya o en kısa yol birden fazladır o yolların hepsini bulmak istiyorum bunu sağlayacak bir kütüphane varmı
Yada bir şekil var o şekilde kaç tane üçgen vardır sorusuna cevap verebilecek bir modül varmı?
Python la grafik çizimi yapılıyormu?
Python math modülü çok kısıtlı
Matrisler vektörler gibi konularında içinde olduğu modüller varmı?
Mesela satranç tahtası sorusunda siz sınıf oluşturmuştunuz orda matrislerden faydalanarak işimizi çok daha kolaylaştırabilir dik


Bunlar gibi örneklerde ne yapıcaz mesela?

A* Pathfinding demek istiyorsunuz sanırım :slightly_smiling_face:

SymPy diye bir modül var, cebirden tutun geometriye kadar güzel fonksiyonları var. Belki bakmak istersiniz. Ama bu sorunu kendimiz de çözebiliriz gibi geldi bana. Giriş verisi noktalar ve her noktanın hangi noktalarla bağlantısı olduğu olur.

Tabii ki. https://matplotlib.org/

Sadece temel fonksiyonlar var, normal olarak. Başka hangi özelliklere ihtiyacınız var?


Blender 3D tasarım programında kullanılan bir kütüphane.

Bence gayet kolay hallettik işimizi ama siz bilirsiniz. Elbette matrislerin kullanılması gereken yerler var ama her yerde ona başvurmaya lüzum yok bence.

2 Beğeni

Çok teşekkürler bu kaynakları inceleyeceğim

Longest path problemi NP-Hard gibi duruyor https://en.wikipedia.org/wiki/Longest_path_problem
Ama yine de bu iki kod örneğini buldum:
http://www.dsalgo.com/2013/02/find-longest-path-in-maze.html
https://cdsmith.wordpress.com/2011/06/08/finding-the-longest-path-in-a-maze/


Ama shortest path için gayet kullanışlı algoritmalar mevcut (dediğim A* Pathfinding onlardan biri), oyunlarda bile kullanılıyor.

2 Beğeni

Hayir. Ingilizce internet bambaska bir dunya, derya.

Python ogrenmeyi askiya alip Ingilizce ogrenmeye baslamani tavsiye ediyorum.

Bu sekillerin veya sorularin cevaplarinin bir ismi var mi? (“Sekiller self-similar tesselation’lar” veya “cevaplar Pascal Ucgeni sayilari” gibi) Eger oyleyse bir modul olabilir.

Evet, ama “grafik” cok fazla anlama geliyor, hangi anlamda kullandigini belirtmen lazim.

Bir matematikcinin isine yarayacak fonksiyonlardan ziyade bir programcinin isine yarayacak matematik fonksiyonlarini bulunduran bir modul, ismi kafa karistirmasin.

numpy, scipy. Hatta bunlari inceleyerek matematigini veya veri analizini gelistirebilirsin, o derece genis bir alana hitap ediyorlar.

Var ama bunun graph theory’e girdigini bilmen lazim. Graph’lerle ilgili binlerce kutuphane varsa sasirmam. Bilgisayar bilimlerinde cok karsimiza cikiyorlar.

A* tek yol buluyor. Tum yollar icin BFS en mantiklisi herhalde.

Belki satranc tahtasi sorusunu matematiksel bir sekilde(?) cozmek icin kullanilabilirler ama bilgisayar bilimlerinde cok daha ise yarayan soyutlamalarimiz var: Graph’ler, constraint’ler.

Matrisleri genelde n-boyutlu vektor uzaylarinda donusturme yapmak icin kullaniyoruz (ve ozellikle ayni donusumu bir suru vektor uzerinde ayni anda yapiyorsak inanilmaz hiz sagliyorlar!)

Ohh! (Problem NP-Hard bile ciksa literaturde incelenmis bir sey olmasi mutlu ediyor ama beni, her yeni problemi oncelikle cozulmus bir probleme benzetmeye calisiyorum :))

Bu arada problem siniflandirmasi ve complexity theory de ilgini cekecek bir sey olabilir, @Orhan61 . Turkce kaynak da olmasi muhtemel, ama nasil aratilacagini bile bilmiyorum :frowning:

3 Beğeni

Genel bir isim yok örnek olarak şu soruyu verebilirim

Ben de en kısa yola cevap olarak yazmıştım.

Böyle işlemlerde çoğunlukla bilgisayarlar da bizim gibi teker teker sayarak cevap buluyor (bulduruyoruz), biri çıkıp da o problem için bir kural keşfedene kadar. Eğer böyle bir kural zaten biliniyorsa problemin (varsa) ismini aratarak bulabilirsiniz.

Yanlış olmasın ama, paylaştığım kaynaklar işe yarar mı acaba? (yani bu konuların temeli bakımından)

Graf Teorisi

Algoritma Analizi

1 Beğeni

Gönderdiğiniz graf teorisi PDF açılmıyor

Graf teorisi linkini kopyalayıp browser’a yapıştırınca hemen indiriyor. Tuhaf

http://web.karabuk.edu.tr/ismail.karas/759/Sunu1_esas.pdf

Lisans belirtilmemis; kullanima aciklarsa yararlar. (Cok detayli bakmadim ama ana konulara deginmeleri bile yeter.) Derslerin kendilerini almak daha faydali olacaktir ama ulkemizde disaridan ders alma/derse girme kulturu pek yok malesef.

Bu sorunun cevabini verebilen bir modul yok :slight_smile:

1 Beğeni

Çok zor değil bence, yapabiliriz. Tabii program biraz yavaş olabilir.

Nasil yapabiliriz onu dusunuyorum ben de.

Koseleri node, kenarlari da yonune gore 3/6/9/12 label’li edge yaparsak; 3-6-9-12 cycle’i ariyoruz. Belirli bir cycle’i bulan genel bir algoritma var mi bilmiyorum. Klasik BFS/DFS gidilebilir elbet, sorunun insan tuketimi icin tasarlanmis versiyonlarinda problem olmayacaktir.

Her node icin 3-6 ile erisilen node’larin listesini alip 6-3 ile erisilenlerle kesistirmek spesifik bir optimizasyon olabilir.

CV kismini nasil yapariz?

Merhabalar hocam manim adlı animasyon kütüphanesini incelemenizi öneriyorum. 3blue1brown youtube kanalının kurucusu tarafından kodlanmış bir kütüphane, kendi videolarını hazırlarken kullanıyor. Çok çeşitli matematik animasyonlarını yapmanıza olanak sağlıyor. Bu kanaldan tutuorial videolarına bakabilirsiniz, ne yazık ki daha kapsamlı bir dökümantasyonu yok.

2 Beğeni